:root{--surface:#15161b;--surface-dim:#111217;--surface-bright:#2d303b;--surface-container-lowest:#181a20;--surface-container-low:#1b1d24;--surface-container:#20222a;--surface-container-high:#262933;--surface-container-highest:#2d303b;--on-surface:#ffffff;--on-surface-variant:#b6bbc5;--inverse-surface:#ffffff;--inverse-on-surface:#15161b;--outline:#4a4e5a;--outline-variant:#343743;--surface-tint:#ff2d55;--primary:#ff2d55;--on-primary:#ffffff;--primary-container:rgba(255,45,85,0.13);--on-primary-container:#ffffff;--inverse-primary:#ffccd8;--secondary:#b6bbc5;--on-secondary:#15161b;--secondary-container:#262933;--on-secondary-container:#f3f4f6;--tertiary:#ffccd8;--on-tertiary:#15161b;--tertiary-container:rgba(255,204,216,0.08);--on-tertiary-container:#ffccd8;--error:#ff5d73;--on-error:#ffffff;--error-container:rgba(255,93,115,0.14);--on-error-container:#ffdce3;--bg:#15161b;--panel:#20222a;--panel-bg:#20222a;--line:#343743;--ink:#ffffff;--muted:#c2c7d0;--accent:#ff2d55;--accent-hover:#ff4c73;--accent-soft:#ffccd8;--accent-light:rgba(255,45,85,0.13);--ok:#2ecc71;--ok-bg:rgba(46,204,113,0.12);--warn:#f4b400;--warn-bg:rgba(244,180,0,0.12);--err:#ff5d73;--err-bg:rgba(255,93,115,0.14);--font-heading:"Space Grotesk","Inter",ui-sans-serif,system-ui,-apple-system,sans-serif;--font-sans:"Inter",ui-sans-serif,system-ui,-apple-system,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,monospace;--glass-bg:rgba(32,34,42,0.78);--glass-border:rgba(255,255,255,0.06);--shadow-sm:0 10px 30px rgba(0,0,0,0.22);--shadow-md:0 14px 34px rgba(0,0,0,0.28);--shadow-lg:0 20px 48px rgba(0,0,0,0.36);--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;--radius-full:9999px}*{box-sizing:border-box}body,html{background:var(--bg)}body{margin:0;min-height:100vh;color:var(--ink);font-family:var(--font-sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}::selection{background:rgba(255,45,85,.32);color:#ffffff}a{color:var(--accent);transition:color .2s ease,background .2s ease,border-color .2s ease,transform .2s ease}a,a:hover{text-decoration:none}a:hover{color:var(--accent-hover)}:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.wrap{max-width:1120px;margin:0 auto;padding:40px 32px 72px}.app-layout{display:flex;min-height:100vh}.app-main-content{margin-left:280px;min-height:100vh;width:calc(100% - 280px)}.sidebar{width:280px;height:100vh;position:fixed;top:0;left:0;z-index:100;background:rgba(27,29,36,.96);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:24px 18px;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.sidebar-brand{padding:0 2px 22px;border-bottom:1px solid var(--line);margin-bottom:20px}.brand-lockup{display:inline-flex;align-items:center;justify-content:flex-start;max-width:100%;color:inherit;text-decoration:none}.brand-lockup:hover{color:inherit}.brand-logo{display:block;width:100%;max-width:100%;object-fit:contain;flex:0 0 auto}.brand-logo--sidebar{width:172px;max-height:56px}.brand-logo--header{width:152px;max-height:46px}.brand-copy,.brand-copy b,.brand-copy span,.brand-logo-frame,.brand-logo-frame.compact{display:none}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:8px}.sidebar-link,.sidebar-sub-link{display:flex;align-items:center;gap:12px;color:var(--on-surface-variant);border:1px solid transparent;font-weight:600;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}.sidebar-link{min-height:44px;padding:10px 14px;border-radius:var(--radius-md);font-size:14px}.sidebar-link:hover,.sidebar-sub-link:hover{background:rgba(255,255,255,.05);color:#ffffff;border-color:rgba(255,255,255,.06);text-decoration:none}.sidebar-link.active,.sidebar-sub-link.active{background:var(--primary-container);color:var(--on-primary-container);border-color:rgba(255,45,85,.45);box-shadow:inset 0 0 0 1px rgba(255,45,85,.08)}.sidebar-group,.sidebar-subs{display:flex;flex-direction:column}.sidebar-subs{gap:4px;padding:6px 0 4px 20px;margin:0 0 4px 8px;border-left:1px solid var(--line)}.sidebar-sub-link{min-height:36px;padding:8px 10px;border-radius:var(--radius-sm);font-size:13px;font-weight:500}.nav-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:0 0 20px;color:currentColor}.nav-icon.sub{width:18px;height:18px;flex-basis:18px}.sidebar-footer{padding-top:16px;border-top:1px solid var(--line)}.user-pill{display:inline-flex;align-items:center;gap:8px;width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:var(--surface-container-high);color:var(--on-surface);padding:8px 12px;border-radius:var(--radius-full);font-weight:600;border:1px solid var(--outline-variant)}.user-pill-icon{display:inline-flex;color:var(--primary)}.top{min-height:72px;gap:16px;padding:14px 24px;background:rgba(21,22,27,.88);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.auth-page,.top{display:flex;align-items:center}.auth-page{margin-left:0!important;width:100%!important;justify-content:center}h1,h2,h3{font-family:var(--font-heading);letter-spacing:0}h1{font-size:30px;line-height:1.15;margin:0 0 8px}h1,h2{font-weight:700;color:var(--on-surface)}h2{font-size:17px;line-height:1.25;margin:28px 0 12px}p.sub{color:var(--muted);font-size:14px;margin:0 0 24px}.panel{background:var(--panel);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-xl);padding:24px;box-shadow:var(--shadow-md);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.panel:hover{border-color:rgba(255,255,255,.09)}.panel-kicker{display:inline-flex;align-items:center;margin-bottom:12px;color:var(--primary);font-family:var(--font-heading);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.home-brand-mark{width:min(260px,72vw);max-height:140px;object-fit:contain;display:block;margin:0 auto 18px}.opts{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.opt{text-align:left;cursor:pointer;min-height:86px;background:var(--surface-container-high);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-md);padding:14px 16px;font-family:inherit;font-weight:600;transition:background .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}.opt:hover{border-color:rgba(255,45,85,.5);background:#1a1c22;transform:translateY(-1px)}.opt[data-on="1"]{background:var(--primary-container);border-color:var(--primary);color:var(--on-primary-container);box-shadow:inset 0 0 0 1px rgba(255,45,85,.2),0 0 24px rgba(255,45,85,.08)}.opt small{display:block;color:var(--muted);margin-top:4px;font-size:12.5px;font-weight:400}.opt[data-on="1"] small{color:var(--accent-soft)}.btn-primary,button.go{margin-top:20px;padding:11px 22px;min-height:44px;font-family:inherit;font-weight:700;font-size:14px;background:var(--primary);color:var(--on-primary);border:0;border-radius:var(--radius-md);cursor:pointer;box-shadow:0 12px 28px rgba(255,45,85,.18);transition:background .2s ease,transform .2s ease,box-shadow .2s ease,opacity .2s ease}.btn-primary:hover:not(:disabled),button.go:hover:not(:disabled){background:var(--accent-hover);color:#ffffff;box-shadow:0 14px 34px rgba(255,45,85,.24);transform:scale(1.02)}.btn-primary:disabled,button.go:disabled{opacity:.48;cursor:not-allowed;transform:none}.btn{padding:8px 14px;min-height:38px;background:transparent;color:var(--on-surface);border:1px solid var(--outline-variant);border-radius:var(--radius-md);cursor:pointer;font-family:inherit;font-weight:600;font-size:13.5px;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}.btn:hover:not(:disabled){border-color:rgba(255,45,85,.45);background:var(--surface-container-high);color:#ffffff}.btn:disabled{opacity:.5;cursor:not-allowed}.field,select.field,textarea{padding:10px 14px;min-height:48px;background:var(--surface-container-lowest);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-md);font-family:inherit;font-size:14px;width:100%;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.field:focus,select.field:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px rgba(255,45,85,.15)}.field::placeholder,textarea::placeholder{color:#737985}input[type=file].field{padding-top:12px}select.field option{background:var(--surface-container);color:#ffffff}textarea{min-height:96px;resize:vertical}table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-container);font-size:14px}td,th{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.08em;background:var(--surface-container-low)}tr:last-child td{border-bottom:0}tr:hover td{background:rgba(255,255,255,.03)}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-full);font-size:12px;font-weight:600;border:1px solid var(--line)}.s-queued{background:rgba(255,255,255,.04);color:var(--muted);border-color:var(--outline-variant)}.s-running{background:var(--primary-container);color:#ffffff;border-color:rgba(255,45,85,.45)}.s-awaiting_user_gate{background:var(--warn-bg);color:#ffd166;border-color:rgba(244,180,0,.45)}.s-done{background:var(--ok-bg);color:var(--ok);border-color:rgba(46,204,113,.45)}.s-failed{background:var(--err-bg);color:#ffd5dd;border-color:rgba(255,93,115,.45)}.log{font-family:var(--font-mono);font-size:12.5px;line-height:1.55;background:var(--surface-dim);color:#f4f5f7;border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px 16px;max-height:420px;overflow:auto;white-space:pre-wrap;box-shadow:var(--shadow-sm)}.log div{padding:1px 0}.log .t{color:var(--accent-soft)}.log .fail{color:#ff9aad}.md{max-height:540px;overflow:auto;border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 20px;background:var(--surface-container-lowest);font-size:14px;line-height:1.6;color:var(--on-surface)}.md h1,.md h2,.md h3,.md h4{margin:16px 0 8px;line-height:1.3;color:var(--primary)}.md h1{font-size:20px}.md h1,.md h2{font-weight:700}.md h2{font-size:17px}.md h3{font-size:15px;font-weight:700}.md blockquote{margin:12px 0;padding:8px 16px;border-left:4px solid var(--primary);background:var(--primary-container);color:var(--on-primary-container);border-radius:0 var(--radius-md) var(--radius-md) 0}.md code{font-family:var(--font-mono);font-size:12.5px;background:var(--surface-container-high);color:var(--accent-soft);padding:2px 6px;border-radius:var(--radius-sm)}.md pre{background:var(--surface-dim);color:#f4f5f7;padding:12px 16px;border-radius:var(--radius-md);overflow-x:auto;margin:12px 0}.md pre code{background:none;color:inherit;padding:0}.md .md-tablewrap{overflow-x:auto;margin:12px 0}.md table{border-collapse:collapse;width:100%;min-width:620px;font-size:13px}.md td,.md th{border:1px solid var(--outline-variant);padding:8px 12px;text-align:left}.md th{background:var(--surface-container);color:var(--on-surface);font-weight:700}.mono{font-family:var(--font-mono)}@media (max-width:900px){.sidebar{width:232px;padding:18px 12px}.app-main-content{margin-left:232px;width:calc(100% - 232px)}.brand-logo--sidebar{width:154px;max-height:50px}.brand-logo--header{width:136px;max-height:42px}.wrap{padding:28px 20px 56px}}@media (max-width:720px){.sidebar{position:-webkit-sticky;position:sticky;width:100%;height:auto;min-height:0}.app-layout{flex-direction:column}.app-main-content{margin-left:0;width:100%}.sidebar-nav{flex:0 0 auto}.sidebar-subs{padding-left:12px}}