:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f2f3f5;font-synthesis:none;--panel:#15181c;--panel-2:#1b1f24;--line:#2a3037;--muted:#939ca8;--accent:#ec4899;--accent-soft:#3a1830;--danger:#ff6b6b;background:#0d0f11;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:#0d0f11;min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:2px solid #f472b6}.shell{min-height:100vh}.landing{background:radial-gradient(circle at 72% 20%,#ec489921,#0000 34%),#0d0f11;place-items:center;width:100%;max-width:none;min-height:100vh;margin:0;padding:clamp(24px,6vw,80px);display:grid;position:relative;overflow:hidden}.landing:before{content:"";pointer-events:none;border:1px solid #ffffff09;border-radius:36px;position:absolute;inset:8% 6%}.landing-card{text-align:center;width:min(720px,100%);position:relative}.landing-mark{border-radius:14px;width:54px;height:54px;margin:0 auto 32px;font-size:18px;box-shadow:0 16px 50px #ec489940}.landing h1{letter-spacing:-.06em;margin:12px 0 24px;font-size:clamp(46px,8vw,86px);line-height:.94}.landing-copy{max-width:560px;color:var(--muted);margin:0 auto;font-size:clamp(16px,2vw,19px);line-height:1.65}.landing-login{border-radius:10px;margin-top:36px;padding:13px 22px}.topbar{border-bottom:1px solid var(--line);background:#111316;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(20px,4vw,64px);display:flex}.brand{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.brand-mark{background:var(--accent);color:#fff;letter-spacing:-.04em;border-radius:9px;place-items:center;width:36px;height:36px;font-weight:800;display:grid}.brand strong,.brand small{display:block}.brand small{color:var(--muted);margin-top:1px;font-size:11px}.identity{color:#cdd2d8;align-items:center;gap:16px;font-size:14px;display:flex}main{width:min(1180px,100% - 40px);margin:0 auto;padding:54px 0 80px}.hero{justify-content:space-between;align-items:end;gap:28px;margin-bottom:48px;display:flex}.hero h1{letter-spacing:-.045em;margin:7px 0 16px;font-size:clamp(34px,5vw,58px);line-height:.98}.hero p:not(.eyebrow){color:var(--muted);max-width:620px;margin:0;line-height:1.6}.eyebrow{color:var(--accent);letter-spacing:.16em;margin:0;font-size:11px;font-weight:750}h2{letter-spacing:-.02em;margin:0 0 17px;font-size:19px}.app-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.app-card{text-align:left;width:100%;min-height:100px;color:inherit;background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:13px;align-items:center;gap:15px;padding:18px;transition:border-color .15s,background .15s,transform .15s;display:flex}.app-card:hover{background:var(--panel-2);border-color:#48515c;transform:translateY(-1px)}.app-card strong,.app-card small{display:block}.app-card small{color:var(--muted);margin-top:5px}.app-icon{background:#242a30;border:1px solid #343b44;border-radius:11px;flex:none;place-items:center;width:48px;height:48px;font-size:18px;font-weight:800;display:grid}.app-icon-houdini{color:#ff7256}.app-icon-nuke{color:#e8ff67}.arrow{color:#69737e;margin-left:auto;font-size:22px}.sessions{margin-top:46px}.section-title{justify-content:space-between;align-items:center;display:flex}.session-list{gap:9px;display:grid}.session-card{border:1px solid var(--line);background:var(--panel);border-radius:11px;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;display:flex}.session-main{align-items:center;gap:13px;min-width:0;display:flex}.session-main p{color:var(--muted);margin:4px 0 0;font-size:13px}.session-main small{color:#b9c0c8;text-overflow:ellipsis;white-space:nowrap;max-width:650px;margin-top:6px;display:block;overflow:hidden}.status{background:#f3bd4f;border-radius:50%;flex:none;width:9px;height:9px;box-shadow:0 0 0 4px #3a3020}.status-ready{background:#48d597;box-shadow:0 0 0 4px #17392e}.status-failed{background:var(--danger);box-shadow:0 0 0 4px #3a2024}.status-stopping,.status-stopped{background:#6f7882;box-shadow:0 0 0 4px #272b30}.session-actions,.modal-actions{align-items:center;gap:8px;display:flex}button,.session-actions a{color:#ecedef;cursor:pointer;background:#20242a;border:1px solid #39414a;border-radius:8px;padding:9px 13px;text-decoration:none}button:hover,.session-actions a:hover{background:#282e35}button:disabled{opacity:.55;cursor:wait}.primary{font-weight:700;background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important}.danger{color:#ff9696}.ghost{color:var(--muted);background:0 0;border-color:#0000;padding-inline:8px}.ghost:hover{color:#fff;background:#20242a}.empty{text-align:center;color:var(--muted);border:1px dashed #303740;border-radius:12px;padding:34px}.empty p{color:#e1e4e8;margin:0 0 7px}.admin-switch{color:var(--muted);align-items:center;gap:9px;font-size:13px;display:flex}.admin-switch input{accent-color:var(--accent)}.alert{color:#ffb5bc;background:#2a171b;border:1px solid #6b3038;border-radius:9px;justify-content:space-between;align-items:center;margin:-24px 0 30px;padding:12px 14px;display:flex}.alert button{background:0 0;border:0;padding:0 5px;font-size:20px}.modal-backdrop{z-index:20;background:#000000b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#15181c;border:1px solid #323942;border-radius:15px;width:min(600px,100%);max-height:calc(100vh - 40px);padding:24px;overflow:auto;box-shadow:0 24px 80px #0000008c}.modal-head{justify-content:space-between;align-items:start;margin-bottom:24px;display:flex}.modal-head h2{margin:5px 0 0;font-size:27px}.close{color:var(--muted);background:0 0;border:0;padding:0 5px;font-size:27px}label,legend{color:#c4cad1;gap:8px;font-size:13px;display:grid}fieldset{border:0;margin:22px 0;padding:0}legend{margin-bottom:9px}input,select{color:#f0f1f2;background:#0f1114;border:1px solid #353c45;border-radius:8px;width:100%;padding:11px 12px}label small{color:var(--muted)}.preset-grid{grid-template-columns:repeat(2,1fr);gap:9px;display:grid}.preset{text-align:left;gap:5px;min-height:68px;display:grid}.preset small{color:var(--muted)}.preset.active{border-color:var(--accent);background:var(--accent-soft)}.manual-grid{grid-template-columns:1fr 1fr;gap:12px;margin:-8px 0 22px;display:grid}.manual-grid label:last-child{grid-column:1/-1}.modal-actions{justify-content:flex-end;margin-top:26px}.launch-progress{text-align:center;width:min(470px,100%);overflow:visible}.launch-progress h2{margin:10px 0 0;font-size:27px}.launch-spinner{width:42px;height:42px;margin:0 auto 24px;display:block}.launch-state.failed{width:42px;height:42px;color:var(--danger);background:#3a2024;border-radius:50%;place-items:center;margin:0 auto 24px;display:grid}.launch-state.failed:before{content:"×";font-size:30px;line-height:1}.launch-message{min-height:48px;color:var(--muted);max-width:380px;margin:14px auto 18px;line-height:1.55}.launch-phase{border:1px solid var(--line);color:#cdd2d8;background:#101215;border-radius:999px;align-items:center;gap:10px;padding:8px 12px;font-size:13px;display:inline-flex}.launch-progress .modal-actions{justify-content:center}.loading,.fatal{text-align:center;place-content:center;justify-items:center;min-height:100vh;display:grid}.spinner{border:3px solid #30363e;border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}.error-text{color:#ff9696}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=680px){.topbar{padding-inline:18px}.identity>span{display:none}main{width:min(100% - 28px,1180px);padding-top:34px}.hero{flex-direction:column;align-items:start;margin-bottom:36px}.session-card{flex-direction:column;align-items:start}.session-actions{width:100%}.session-actions>*{text-align:center;flex:1}.preset-grid,.manual-grid{grid-template-columns:1fr}.manual-grid label:last-child{grid-column:auto}}
