body{margin:0;padding:0;background-color:#f8f9fa}.app-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;padding:32px;max-width:1400px;margin:0 auto;min-height:100vh}.app-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;background:#fff;padding:24px 32px;border-radius:12px;box-shadow:0 2px 8px #00000014;border:1px solid #e9ecef}.app-title{margin:0;color:#1a202c;font-size:28px;font-weight:700}.arc-citation{display:inline-block;margin-top:4px;font-size:11px;color:#718096;text-decoration:none;font-style:italic;transition:all .2s ease;opacity:.7}.arc-citation:hover{color:#4a5568;opacity:1;text-decoration:underline}.header-actions{display:flex;align-items:center;gap:16px}.user-info{color:#4a5568;font-size:14px;font-weight:500;padding:8px 16px;background:#f7fafc;border-radius:8px}.section{margin-bottom:32px;background:#fff;padding:28px;border-radius:12px;box-shadow:0 2px 8px #00000014;border:1px solid #e9ecef;transition:box-shadow .2s ease}.section:hover{box-shadow:0 4px 12px #0000001f}.section-title{font-size:22px;font-weight:700;margin-bottom:20px;color:#2d3748;display:flex;align-items:center;gap:10px}.section-title:before{content:"";width:4px;height:24px;background:#4a5568;border-radius:2px}.btn{padding:10px 20px;color:#fff;border:none;border-radius:10px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s ease;box-shadow:0 2px 8px #0000001a}.btn:hover{box-shadow:0 4px 12px #00000026}.btn-docs{background:#4a5568}.btn-docs:hover{background:#2d3748}.btn-logout{background:#dc3545}.btn-logout:hover{background:#c82333}.btn-run{padding:8px 16px;background:#28a745;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.9em;font-weight:600;transition:all .3s ease;box-shadow:0 2px 4px #0000001a}.btn-run:hover{background:#218838;box-shadow:0 2px 8px #00000026}.btn-run:disabled{background:#6c757d;cursor:not-allowed;opacity:.7;box-shadow:none}.btn-view-logs{padding:8px 16px;background:#007bff;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.9em;font-weight:600;transition:all .3s ease;box-shadow:0 2px 4px #0000001a}.btn-view-logs:hover{background:#0056b3;box-shadow:0 2px 8px #00000026}.btn-close-modal{background:transparent;border:none;font-size:28px;cursor:pointer;padding:0 8px;color:#718096;transition:all .2s ease;border-radius:8px}.btn-close-modal:hover{background:#f7fafc;color:#2d3748;transform:rotate(90deg)}.alert-error{background:#fff5f5;padding:16px 20px;border:1px solid #feb2b2;border-left:4px solid #f56565;margin-bottom:20px;border-radius:8px;animation:slideIn .3s ease}.alert-warning{background:#fffaf0;padding:16px 20px;border:1px solid #fbd38d;border-left:4px solid #ed8936;margin-bottom:20px;border-radius:8px;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.status-card{background:#f8f9fa;padding:20px;border-radius:8px;border:1px solid #e9ecef;display:flex;flex-direction:column;gap:16px}.status-healthy{color:#28a745;font-weight:600;padding:4px 12px;background:#d4edda;border-radius:6px}.status-unhealthy{color:#dc3545;font-weight:600;padding:4px 12px;background:#f8d7da;border-radius:6px}.scripts-list{list-style:none;padding:0;display:grid;gap:16px}.script-item{background:#fff;padding:20px;margin-bottom:0;border-radius:8px;display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid #e9ecef;transition:all .3s ease;position:relative;overflow:hidden}.script-item:before{content:"";position:absolute;left:0;top:0;height:100%;width:4px;background:#4a5568;transform:scaleY(0);transition:transform .3s ease}.script-item:hover{box-shadow:0 8px 24px #0000001a;border-color:#cbd5e0}.script-item:hover:before{transform:scaleY(1)}.script-info{flex:1}.script-name{font-weight:700;color:#1a202c;font-size:1.05em}.script-schedule{font-size:.85em;color:#718096;font-style:normal;margin-top:6px;display:flex;align-items:center;gap:6px}.script-schedule:before{content:"🕐";font-size:1em}.script-actions{display:flex;gap:10px}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:20px;max-width:1200px;width:100%;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:24px 32px;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;align-items:center;background:#f8f9fa;border-radius:20px 20px 0 0}.modal-header h2{margin:0;color:#2d3748;font-size:22px;font-weight:700}.modal-body{padding:28px;overflow-y:auto;flex:1;background:#fafafa}.execution-list{display:flex;flex-direction:column;gap:16px}.execution-item{border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:#fff;transition:all .3s ease;box-shadow:0 2px 8px #0000000d}.execution-item:hover{box-shadow:0 4px 16px #0000001a}.execution-header{padding:16px 20px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .2s ease}.execution-header:hover{opacity:.95}.execution-header.success{background:#d4edda;border-left:4px solid #28a745}.execution-header.failed{background:#f8d7da;border-left:4px solid #dc3545}.execution-header.expanded{border-bottom:1px solid #e2e8f0}.execution-info{flex:1}.execution-badges{display:flex;align-items:center;gap:12px;margin-bottom:8px}.execution-badge{padding:4px 12px;border-radius:8px;font-size:.8em;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #0000001a}.execution-badge.success{background:#28a745}.execution-badge.failed{background:#dc3545}.execution-meta{font-size:.85em;color:#718096;font-weight:500;padding:4px 10px;background:#f7fafc;border-radius:6px}.execution-timestamp{font-size:.85em;color:#718096;font-weight:500}.execution-toggle{font-size:1.3em;color:#718096;transition:all .2s ease}.execution-header:hover .execution-toggle{color:#495057}.execution-details{padding:20px;background:#f8f9fa;animation:expandDown .3s ease}@keyframes expandDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:1000px}}.execution-error{margin-bottom:16px;padding:16px;background:#fff5f5;border:1px solid #feb2b2;border-left:4px solid #dc3545;border-radius:8px}.execution-result{margin-bottom:16px}.execution-result pre{background:#fff;padding:16px;border-radius:10px;overflow:auto;font-size:.85em;margin:8px 0 0;border:1px solid #e2e8f0;box-shadow:inset 0 2px 4px #0000000d;font-family:Fira Code,Monaco,Courier New,monospace}.execution-logs-container{background:#1a202c;color:#e2e8f0;padding:16px;border-radius:8px;font-family:Fira Code,Monaco,Courier New,monospace;font-size:.85em;max-height:400px;overflow:auto;margin-top:8px;border:1px solid #4a5568}.execution-log-line{margin-bottom:6px;padding:4px 0;line-height:1.5;transition:background .2s ease}.execution-log-line:hover{background:#ffffff0d;padding-left:8px;margin-left:-8px;border-radius:4px}.loading-container{display:flex;align-items:center;justify-content:center;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:#f8f9fa;color:#1a202c;font-size:24px;font-weight:600}.loading-container:after{content:"";width:40px;height:40px;margin-left:16px;border:4px solid #dee2e6;border-top-color:#4a5568;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}::-webkit-scrollbar-thumb{background:#adb5bd;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#6c757d}
