:root{--bg:#0a0a0b;--bg2:#101012;--card:#141416;--card2:#18181b;--line:rgba(255,255,255,0.07);--line2:rgba(255,255,255,0.12);--ink:#f5f5f4;--soft:#8e8e93;--dim:#5a5a60;--amber:#f5b841;--blue:#5b9df0;--green:#4ade97;--red:#f0655b;--r-lg:20px;--r-md:14px;--r-sm:9px;--shadow:0 1px 2px rgba(0,0,0,0.5),0 8px 24px rgba(0,0,0,0.35),0 24px 64px rgba(0,0,0,0.3)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI Variable Display,Segoe UI,Roboto,Ubuntu,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}::selection{background:rgba(245,184,65,.3)}a{color:inherit;text-decoration:none}.glow{position:fixed;pointer-events:none;z-index:0}.glow.g1{top:-260px;left:50%;transform:translateX(-50%);width:900px;height:520px;background:radial-gradient(ellipse,rgba(245,184,65,.09),transparent 65%)}.glow.g2{top:40%;right:-300px;width:700px;height:700px;background:radial-gradient(ellipse,rgba(91,157,240,.05),transparent 65%)}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);background:rgba(10,10,11,.72);border-bottom:1px solid var(--line)}.nav .in{max-width:1200px;margin:0 auto;gap:32px;padding:0 28px;height:60px}.brand,.nav .in{display:flex;align-items:center}.brand{gap:10px;font-weight:650;font-size:15px;letter-spacing:-.01em}.brand .mk{width:26px;height:26px;border-radius:8px;background:linear-gradient(135deg,#f5b841,#e08a2e);display:grid;place-items:center;color:#141005;font-size:13px;font-weight:800;box-shadow:0 2px 10px rgba(245,184,65,.35)}.nav a.navlink{color:var(--soft);font-size:13.5px;font-weight:500;padding:6px 2px;transition:color .15s}.nav a.navlink.on,.nav a.navlink:hover{color:var(--ink)}.nav .sp{flex:1 1}.nav .av{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#5b9df0,#3f6ecc);display:grid;place-items:center;font-size:12px;font-weight:700}.page{max-width:1200px;margin:0 auto;padding:0 28px;position:relative;z-index:1}.hero{padding:64px 0 36px}.hero h1{font-size:clamp(34px,4.6vw,54px);line-height:1.05;letter-spacing:-.035em;font-weight:680;margin:0 0 14px;text-wrap:balance}.hero h1 em{font-style:normal;background:linear-gradient(100deg,#f5b841,#f0d9a0);-webkit-background-clip:text;background-clip:text;color:transparent}.hero p{color:var(--soft);font-size:16px;margin:0;max-width:52ch}.stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin:36px 0 44px}.stat{background:linear-gradient(180deg,var(--card2),var(--card));border:1px solid var(--line);border-radius:var(--r-md);padding:20px 22px;transition:border-color .2s,transform .2s}.stat:hover{border-color:var(--line2);transform:translateY(-2px)}.stat small{display:block;font-size:11.5px;letter-spacing:.04em;color:var(--soft);font-weight:550;margin-bottom:8px}.stat b{font-size:28px;font-weight:680;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sechead{display:flex;align-items:baseline;justify-content:space-between;margin:0 0 18px}.sechead h2{font-size:20px;font-weight:650;letter-spacing:-.02em;margin:0}.projects{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));grid-gap:18px;gap:18px;padding-bottom:60px}.proj{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;cursor:pointer;transition:transform .25s cubic-bezier(.2,.7,.3,1),box-shadow .25s,border-color .25s;display:block}.proj:hover{transform:translateY(-4px) scale(1.008);box-shadow:var(--shadow);border-color:var(--line2)}.proj .cover{aspect-ratio:16/8.4;position:relative;overflow:hidden}.proj .cover .art{position:absolute;inset:0;transition:transform .4s cubic-bezier(.2,.7,.3,1);background-size:cover;background-position:50%}.proj:hover .cover .art{transform:scale(1.04)}.proj .cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(10,10,11,.55))}.badge{position:absolute;top:14px;left:14px;z-index:2;font-size:11.5px;font-weight:650;letter-spacing:.02em;padding:5px 11px;border-radius:999px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.badge.wait{background:rgba(245,184,65,.18);color:#ffd98a;box-shadow:inset 0 0 0 1px rgba(245,184,65,.35)}.badge.run{background:rgba(91,157,240,.18);color:#a9ccf5;box-shadow:inset 0 0 0 1px rgba(91,157,240,.35)}.badge.done{background:rgba(74,222,151,.16);color:#93ebc0;box-shadow:inset 0 0 0 1px rgba(74,222,151,.3)}.badge.err{background:rgba(240,101,91,.18);color:#f5a8a2;box-shadow:inset 0 0 0 1px rgba(240,101,91,.35)}.proj .body{padding:18px 20px 20px}.proj h3{margin:0 0 4px;font-size:16.5px;font-weight:650;letter-spacing:-.015em}.proj .meta{color:var(--soft);font-size:13px;margin-bottom:16px}.track{height:4px;background:rgba(255,255,255,.06);overflow:hidden;margin-bottom:12px}.track,.track i{border-radius:2px}.track i{display:block;height:100%;background:linear-gradient(90deg,#f5b841,#f0d9a0)}.track i.run{background:linear-gradient(90deg,#5b9df0,#a9ccf5)}.track i.done{background:linear-gradient(90deg,#4ade97,#93ebc0)}.track i.err{background:linear-gradient(90deg,#f0655b,#f5a8a2)}.proj .foot{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:var(--soft)}.proj .foot .go{color:var(--ink);font-weight:600;opacity:0;transform:translateX(-4px);transition:all .2s}.proj:hover .foot .go{opacity:1;transform:none}.art.fallback1{background:radial-gradient(ellipse at 68% 28%,rgba(245,184,65,.5),transparent 55%),radial-gradient(ellipse at 18% 80%,rgba(190,70,40,.4),transparent 55%),linear-gradient(160deg,#241a10,#0e0c0a)}.art.fallback2{background:radial-gradient(ellipse at 30% 30%,rgba(60,180,140,.4),transparent 55%),radial-gradient(ellipse at 80% 75%,rgba(30,90,70,.5),transparent 55%),linear-gradient(160deg,#0f1e18,#0a0e0c)}.art.fallback3{background:radial-gradient(ellipse at 70% 25%,rgba(91,157,240,.42),transparent 55%),radial-gradient(ellipse at 20% 80%,rgba(120,80,200,.35),transparent 55%),linear-gradient(160deg,#12172a,#0a0b10)}.art.fallback4{background:radial-gradient(ellipse at 55% 35%,rgba(230,120,80,.4),transparent 55%),radial-gradient(ellipse at 15% 75%,rgba(160,50,60,.35),transparent 55%),linear-gradient(160deg,#221012,#0f0a0a)}.room{padding:44px 0 70px}.crumb{font-size:13px;color:var(--soft);margin-bottom:10px}.crumb b{color:var(--ink);font-weight:550}.roomhead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:30px}.roomhead h1{font-size:clamp(26px,3.4vw,38px);letter-spacing:-.03em;font-weight:680;margin:0 0 6px}.roomhead .sub{color:var(--soft);font-size:14px}.pipe{margin-bottom:34px;overflow-x:auto;padding:4px 2px 10px}.pipe,.ps{display:flex;gap:10px;align-items:center}.ps{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:9px 18px 9px 12px;font-size:13px;font-weight:550;white-space:nowrap}.ps .ic{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px}.ps.done .ic{background:rgba(74,222,151,.16);color:var(--green)}.ps.done{color:var(--soft)}.ps.act{border-color:rgba(245,184,65,.4);box-shadow:0 0 0 3px rgba(245,184,65,.08),0 4px 18px rgba(245,184,65,.1)}.ps.act .ic{background:rgba(245,184,65,.16);color:var(--amber)}.ps.next,.ps.next .ic{color:var(--dim)}.ps.next .ic{background:rgba(255,255,255,.05)}.pl{width:22px;height:1px;background:var(--line2);flex:none}.stage{display:grid;grid-template-columns:1.55fr 1fr;grid-gap:18px;gap:18px}.monitor{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow)}.monitor .scr{aspect-ratio:16/8.6;position:relative}.monitor.portrait .scr{aspect-ratio:auto;height:520px}.monitor.portrait .scr .art{position:absolute;inset:0;background-size:contain;background-repeat:no-repeat;background-position:50%;background-color:#000}.monitor.portrait .fr{width:72px}.monitor.portrait .fr .art{aspect-ratio:9/16}.monitor .scr .art{position:absolute;inset:0;background-size:cover;background-position:50%}.monitor .scr:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(10,10,11,.25),transparent 30%,transparent 55%,rgba(10,10,11,.7))}.monitor .scr.video:after{display:none}.monitor .tc{top:14px;right:16px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11.5px;color:rgba(255,255,255,.65);background:rgba(0,0,0,.35);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:4px 10px;border-radius:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.monitor .cap,.monitor .tc{position:absolute;z-index:2}.monitor .cap{left:20px;right:20px;bottom:16px}.monitor .cap h4{margin:0 0 2px;font-size:17px;font-weight:650;letter-spacing:-.015em}.monitor .cap p{margin:0;font-size:13px;color:rgba(255,255,255,.6)}.filmstrip{display:flex;gap:8px;padding:14px;overflow-x:auto;background:var(--bg2);border-top:1px solid var(--line)}.fr{flex:none;width:104px;border-radius:10px;overflow:hidden;position:relative;cursor:pointer;border:2px solid transparent;transition:transform .2s,border-color .2s}.fr:hover{transform:translateY(-3px)}.fr .art{aspect-ratio:16/9;background-size:cover;background-position:50%}.fr .n{top:5px;left:7px;font-size:10px;font-weight:700;color:rgba(255,255,255,.85);text-shadow:0 1px 4px #000}.fr .dot,.fr .n{position:absolute}.fr .dot{bottom:6px;right:7px;width:8px;height:8px;border-radius:50%}.fr.done .dot{background:var(--green);box-shadow:0 0 8px rgba(74,222,151,.7)}.fr.act{border-color:var(--amber);box-shadow:0 0 0 3px rgba(245,184,65,.15)}.fr.act .dot{background:var(--amber);box-shadow:0 0 8px rgba(245,184,65,.8);animation:blink 1.2s ease infinite}.fr.err .dot{background:var(--red);box-shadow:0 0 8px rgba(240,101,91,.8)}.fr.q{opacity:.45}.fr.q .dot{background:var(--dim)}@keyframes blink{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.insp{display:flex;flex-direction:column;gap:18px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px}.card h5{margin:0 0 16px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--soft);font-weight:650}.kv{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:1px solid var(--line);font-size:13.5px}.kv:last-of-type{border-bottom:0}.kv span{color:var(--soft)}.kv b{font-weight:600}.chip{font-size:11.5px;font-weight:650;padding:4px 10px;border-radius:999px}.chip.run{background:rgba(91,157,240,.15);color:#a9ccf5}.chip.ok{background:rgba(74,222,151,.13);color:#93ebc0}.chip.wait{background:rgba(245,184,65,.15);color:#ffd98a}.chip.err{background:rgba(240,101,91,.15);color:#f5a8a2}.empty{padding:80px 0;text-align:center;color:var(--soft)}.empty h3{color:var(--ink);font-size:20px;letter-spacing:-.02em;margin:0 0 8px}.setupnote{margin:0 0 40px;padding:16px 20px;border:1px solid rgba(245,184,65,.25);background:rgba(245,184,65,.06);border-radius:var(--r-md);font-size:13.5px;color:var(--soft)}.setupnote b{color:#ffd98a;font-weight:650}.setupnote code{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;color:var(--ink)}@media (max-width:900px){.stage{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}}.btn{border:1px solid var(--line2);background:var(--card2);color:var(--ink);font:inherit;font-size:13.5px;font-weight:600;padding:10px 18px;border-radius:999px;cursor:pointer;transition:all .18s}.btn:hover{transform:translateY(-1px);border-color:rgba(255,255,255,.22)}.btn.gold{background:linear-gradient(135deg,#f5b841,#e8a62e);border-color:transparent;color:#171004;box-shadow:0 4px 18px rgba(245,184,65,.28)}.btn.gold:hover{box-shadow:0 8px 26px rgba(245,184,65,.4)}.btn:disabled{opacity:.5;cursor:default;transform:none}.abtns{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin-top:18px}.abtn{border:1px solid var(--line2);background:var(--card2);color:var(--ink);font:inherit;font-size:13.5px;font-weight:650;padding:12px 0;border-radius:12px;cursor:pointer;text-align:center;transition:all .18s}.abtn:hover{transform:translateY(-1px);border-color:rgba(255,255,255,.25)}.abtn.ok{background:linear-gradient(135deg,#f5b841,#e8a62e);border-color:transparent;color:#171004;box-shadow:0 4px 16px rgba(245,184,65,.25)}.abtn:disabled{opacity:.45;cursor:default;transform:none}.errcard{border-color:rgba(240,101,91,.3)!important;background:linear-gradient(180deg,rgba(240,101,91,.06),var(--card))}.errcard h5{color:#f5a8a2!important}.errcard p{margin:0 0 14px;font-size:13px;color:var(--soft);line-height:1.55}.form{max-width:520px;display:flex;flex-direction:column;gap:18px;padding-bottom:80px}.field label{display:block;font-size:12.5px;font-weight:600;color:var(--soft);margin-bottom:7px;letter-spacing:.02em}.field input,.field select,.field textarea{width:100%;background:var(--card);border:1px solid var(--line2);border-radius:12px;color:var(--ink);font:inherit;font-size:14.5px;padding:12px 14px;outline:none;transition:border-color .15s,box-shadow .15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:rgba(245,184,65,.5);box-shadow:0 0 0 3px rgba(245,184,65,.12)}.formmsg{font-size:13.5px;padding:12px 16px;border-radius:10px}.formmsg.ok{background:rgba(74,222,151,.1);color:#93ebc0}.formmsg.err{background:rgba(240,101,91,.1);color:#f5a8a2}.script{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:26px 28px;margin-bottom:24px}.script pre{white-space:pre-wrap;font-family:inherit;font-size:14.5px;line-height:1.75;color:var(--ink);margin:0 0 20px;max-height:480px;overflow-y:auto}.script .chapter{color:var(--amber);font-weight:650}.login{min-height:70vh;display:grid;place-items:center}.login .card{width:360px}.login h1{font-size:22px;letter-spacing:-.02em;margin:0 0 6px}.login p{color:var(--soft);font-size:13.5px;margin:0 0 20px}.finalvideo{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow);margin-bottom:24px}.finalvideo video{display:block;width:100%;aspect-ratio:16/9;background:#000}.finalvideo .vwrap{padding:14px 14px 0}.finalvideo .vbar{display:flex;justify-content:space-between;align-items:center;padding:14px 20px}.finalvideo .vbar span{font-size:13px;color:var(--soft)}