:root{--bg-primary:#0f1117;--text-primary:#f8fafc;--text-secondary:#94a3b8;--accent-primary:#6366f1;--accent-hover:#4f46e5;--success:#10b981;--error:#ef4444;--border:#ffffff14;--glass-bg:#191c2466;--glass-border:#ffffff0d}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;min-width:0;overflow-x:hidden}body{background-color:var(--bg-primary);color:var(--text-primary);background:radial-gradient(circle at 15%,#6366f11a,#0000 25%),radial-gradient(circle at 85% 30%,#10b9810d,#0000 25%);background-color:var(--bg-primary);background-attachment:fixed;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden}.btn-primary{background:var(--accent-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1.2rem;font-size:.9rem;font-weight:500;transition:all .2s;display:flex;box-shadow:0 4px 12px #6366f133}.btn-primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 6px 16px #6366f14d}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.task-card{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;flex-direction:column;gap:1.25rem;padding:1.5rem;transition:transform .2s,box-shadow .2s,background .2s;display:flex}.task-card:hover{background:#ffffff0a;border-color:#ffffff1a;transform:translateY(-2px);box-shadow:0 4px 24px #0003}.task-card-header h3{color:var(--text-primary);margin-bottom:.25rem;font-size:1.1rem;font-weight:600}.task-card-header p{color:var(--text-secondary);font-size:.85rem}.task-form{flex-direction:column;flex:1;gap:1rem;display:flex}.form-content{flex-direction:column;flex:1;gap:.75rem;display:flex}.input-field{border:1px solid var(--border);width:100%;color:var(--text-primary);background:#0003;border-radius:8px;padding:.6rem 1rem;font-family:inherit;font-size:.9rem;transition:all .2s}.input-field:focus{border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 2px #6366f133}.checkbox-label{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.checkbox-label input[type=checkbox]{accent-color:var(--accent-primary);cursor:pointer;width:16px;height:16px}.submit-btn{width:100%;margin-top:auto}.spinner{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.job-history-section{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;flex-direction:column;padding:1.5rem;display:flex}.section-header.space-between{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.table-container{overflow-x:auto}.filters-row{grid-template-columns:1.5fr 1fr 1fr auto;gap:.75rem;margin-bottom:1rem;display:grid}.jobs-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:.9rem}.jobs-table th{text-align:left;color:var(--text-secondary);border-bottom:1px solid var(--border);padding:1rem;font-weight:500}.jobs-table td{vertical-align:top;overflow-wrap:anywhere;word-break:break-word;border-bottom:1px solid #ffffff08;min-width:0;padding:1rem}.jobs-table th:first-child,.jobs-table td:first-child{width:170px}.jobs-table th:nth-child(2),.jobs-table td:nth-child(2){width:96px}.jobs-table th:nth-child(3),.jobs-table td:nth-child(3){width:180px}.jobs-table th:nth-child(4),.jobs-table td:nth-child(4){width:120px}.jobs-table th:nth-child(5),.jobs-table td:nth-child(5){width:100px}.job-row{cursor:pointer;transition:background .2s}.job-row:hover{background:#ffffff0d}.job-row.failed{background:#ef44440d}.job-row.failed:hover{background:#ef44441a}.status-badge{text-transform:capitalize;align-items:center;gap:.5rem;font-weight:500;display:flex}.text-yellow{color:#f59e0b}.text-blue{color:#3b82f6}.text-green{color:#10b981}.text-red{color:#ef4444}.capitalize{text-transform:capitalize}.monospace{font-family:monospace}.text-sm{font-size:.8rem}.truncate{white-space:normal;max-width:100%;overflow:hidden}.empty-state{color:var(--text-secondary);padding:3rem 1rem!important}.empty-config-state,.locked-state .locked-card{color:var(--text-secondary);border:1px dashed var(--border);background:#ffffff05;border-radius:12px;padding:2rem}.btn-icon{border:1px solid var(--border);color:var(--text-primary);cursor:pointer;background:#ffffff0d;border-radius:8px;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex}.btn-icon:hover{background:#ffffff1a}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{color:var(--text-primary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;padding:.7rem 1.1rem;font-size:.9rem;font-weight:500;transition:all .2s}.spin-slow{animation:2s linear infinite spin}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#0000009e;justify-content:center;align-items:center;padding:clamp(.25rem,1.8vw,1.25rem);animation:.2s fadeIn;display:flex;position:fixed;inset:0;overflow:hidden}.modal-content{background:radial-gradient(circle at 100% 0,#6366f114,#0000 28%),linear-gradient(#0f1117fa,#0f1117eb);border:1px solid #ffffff14;border-radius:24px;flex-direction:column;width:min(1100px,100%);min-width:0;max-width:1100px;height:min(92dvh,100%);max-height:100%;animation:.25s cubic-bezier(.16,1,.3,1) popIn;display:flex;overflow:hidden;box-shadow:0 28px 90px #0000008c}.modal-header{border-bottom:1px solid var(--border);background:linear-gradient(#ffffff08,#0000);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.25rem 1rem;display:flex}.modal-header h3{margin-bottom:.2rem;font-size:clamp(1.2rem,2vw,1.5rem);font-weight:700;line-height:1.15}.modal-title-wrap{min-width:0;max-width:100%}.modal-kicker{color:#a5b4fc;text-transform:uppercase;letter-spacing:.12em;margin-bottom:.35rem;font-size:.72rem;font-weight:700}.modal-subtitle{color:var(--text-secondary);overflow-wrap:anywhere;word-break:break-word;font-size:.8rem;line-height:1.35}.close-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;flex:none;padding:.25rem;display:flex}.close-btn:hover{color:var(--text-primary);background:#ffffff1a}.modal-body{flex-direction:column;flex:1;gap:1rem;min-width:0;padding:1.25rem;display:flex;overflow:hidden auto}.detail-group h4{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.85rem}.detail-grid{gap:.75rem;display:grid}.detail-grid-2{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}.detail-stack{gap:.75rem;display:grid}.modal-summary,.detail-card{background:#ffffff08;border:1px solid #ffffff0f;border-radius:16px}.modal-summary{gap:1rem;padding:1rem;display:grid}.summary-main h4{overflow-wrap:anywhere;margin-top:.75rem;margin-bottom:.25rem;font-size:clamp(1.2rem,2vw,1.45rem);line-height:1.2}.summary-main p{color:var(--text-secondary);overflow-wrap:anywhere;line-height:1.45}.summary-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.detail-card{min-width:0;padding:1rem}.detail-card h4{color:var(--text-primary);margin-bottom:.85rem;font-size:.95rem}.detail-pill{background:#ffffff08;border:1px solid #ffffff0f;border-radius:12px;flex-direction:column;gap:.35rem;min-width:0;padding:.9rem 1rem;display:flex;overflow:hidden}.detail-pill span:last-child{overflow-wrap:anywhere;word-break:break-word;line-height:1.45}.detail-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem}.status-chip{background:#ffffff0d;border:1px solid #ffffff0f;border-radius:999px;align-items:center;gap:.5rem;width:fit-content;padding:.4rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.status-dot{background:currentColor;border-radius:999px;flex:none;width:.55rem;height:.55rem}.panel-switch{background:#ffffff0a;border:1px solid #ffffff0f;border-radius:999px;gap:.35rem;width:fit-content;max-width:100%;padding:.25rem;display:inline-flex}.panel-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.55rem .9rem;font-size:.85rem;font-weight:600;transition:all .18s}.panel-btn.active{color:var(--text-primary);background:#6366f138;box-shadow:inset 0 0 0 1px #6366f13d}.data-card{gap:.9rem;display:grid}.data-panel{min-width:0}.json-block{border:1px solid var(--border);white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;color:#e2e8f0;background:#00000042;border-radius:14px;min-width:0;max-width:100%;max-height:min(32vh,340px);padding:1rem;font-family:monospace;font-size:.85rem;line-height:1.5;overflow:hidden auto}.json-block code{white-space:pre-wrap}.error-block{color:#fca5a5;overflow-wrap:anywhere;background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;padding:1rem;font-size:.9rem}.modal-loading{place-items:center;min-height:240px;display:grid}.empty-detail-state{color:var(--text-secondary);padding:.25rem 0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{opacity:0;transform:translateY(12px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=768px){.filters-row{grid-template-columns:1fr}.modal-overlay{padding:.25rem}.modal-content{border-radius:18px;width:100%;max-width:none;height:100%;max-height:100%}.detail-grid,.detail-grid-2,.summary-meta{grid-template-columns:1fr}.panel-switch{width:100%}.panel-btn{flex:1}.json-block{max-height:28vh}}.app-layout{flex-direction:column;gap:2rem;max-width:1200px;margin:0 auto;padding:2rem;display:flex}.app-header{text-align:center;margin-bottom:1rem}.app-header-bar{text-align:left;justify-content:space-between;align-items:center;gap:1rem;display:flex}.app-header h1{background:linear-gradient(90deg,#fff,#94a3b8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-size:2.5rem;font-weight:700}.app-header p{color:var(--text-secondary);font-size:1.1rem}.dashboard-section{width:100%}.launch-section{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;padding:1.5rem}.section-header{border-bottom:1px solid var(--border);margin-bottom:1.5rem;padding-bottom:1rem}.section-header h2{color:var(--text-primary);font-size:1.5rem;font-weight:600}.tabs{border-bottom:1px solid var(--border);gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.tab-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.5rem 1rem;font-size:1rem;font-weight:500;transition:all .2s}.tab-btn:hover{color:var(--text-primary);background:#ffffff0d}.tab-btn.active{background:var(--accent-primary);color:#fff}.tab-content{max-width:600px}.task-stack{gap:1rem;display:grid}.input-label{color:var(--text-secondary);margin-top:.5rem;margin-bottom:.25rem;font-size:.85rem;font-weight:500;display:block}select.input-field{appearance:none;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%2394a3b8%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-position:right .7em top 50%,0 0;background-repeat:no-repeat,repeat;background-size:.65em,100%}select.input-field option{background:var(--bg-primary);color:var(--text-primary)}textarea.input-field{resize:vertical}.checkbox-group{gap:1.5rem;margin-top:.5rem;display:flex}.btn-secondary{color:var(--text-primary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:.45rem;padding:.7rem 1.1rem;font-size:.9rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-secondary:hover:not(:disabled){background:#ffffff0f}.locked-card{color:var(--text-secondary);background:#0f172aa6;border:1px solid #f8fafc14;border-radius:10px;padding:1rem 1.1rem}.locked-card code,.auth-note code{color:#c7d2fe}.config-banner{margin-top:-.5rem}.auth-shell{place-items:center;min-height:100vh;padding:2rem;display:grid}.auth-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#0f172aeb,#0f172ac7);border:1px solid #94a3b829;border-radius:24px;flex-direction:column;gap:1.4rem;width:min(100%,460px);padding:2rem;display:flex;box-shadow:0 24px 80px #00000059}.auth-badge{color:#bfdbfe;letter-spacing:.02em;text-transform:uppercase;background:#1e293bcc;border:1px solid #60a5fa40;border-radius:999px;align-items:center;gap:.45rem;width:fit-content;padding:.45rem .7rem;font-size:.8rem;font-weight:600;display:inline-flex}.auth-copy h1{background:linear-gradient(90deg,#fff,#cbd5e1);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-size:2.15rem;line-height:1.05}.auth-copy p,.auth-note{color:var(--text-secondary);line-height:1.5}.auth-form{flex-direction:column;gap:.75rem;display:flex}.auth-submit{width:100%;margin-top:.5rem}.logout-btn{white-space:nowrap}@media (width<=768px){.app-layout{padding:1rem}.app-header-bar{flex-direction:column;align-items:flex-start}.auth-shell{padding:1rem}.auth-card{padding:1.4rem}.auth-copy h1{font-size:1.8rem}}
