*{box-sizing:border-box;margin:0;padding:0}
html,body{width:1600px;height:900px;overflow:hidden;background:var(--bg);color:var(--text);font-family:var(--body);-webkit-font-smoothing:antialiased}
#app{position:relative;width:1600px;height:900px}
#top{position:absolute;left:0;top:0;width:1600px;height:56px;display:flex;align-items:center;gap:22px;padding:0 20px;border-bottom:1px solid var(--line);background:var(--bg);z-index:5}
.brand{display:flex;align-items:center;gap:12px;width:430px}
.mark svg{width:38px;height:38px;display:block}
.wm{font-family:var(--display);font-size:22px;letter-spacing:.14em;color:var(--accent);line-height:1}
.sub{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--dim);margin-top:4px;white-space:nowrap}
.search{flex:1;height:34px;border:1px solid var(--line2);display:flex;align-items:center;gap:10px;padding:0 12px;font-size:14px;color:var(--dim);background:var(--panelSolid);max-width:520px}
.search .ph{flex:1}.search .ico{font-size:17px;color:var(--accent)}
.kbd{font-family:var(--mono);font-size:11px;border:1px solid var(--line2);padding:1px 6px;color:var(--dim)}
.meta{margin-left:auto;display:flex;align-items:center;gap:14px;font-family:var(--mono);font-size:12px;color:var(--dim);white-space:nowrap}
.pill{border:1px solid var(--line);padding:4px 9px;display:flex;align-items:center;gap:7px}
.pill i{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 6px var(--ok)}
.clock{color:var(--text)}.user{color:var(--bg);background:var(--accent);padding:4px 9px;font-weight:600;letter-spacing:.08em}
main{position:absolute;top:56px;left:0;width:1600px;height:844px}
#graphwrap{position:absolute;left:0;top:0;width:1170px;height:844px;overflow:hidden;background:var(--bg)}
#graphwrap canvas{position:absolute;left:0;top:0}
#sample{position:absolute;right:16px;top:14px;font-family:var(--mono);font-size:12px;color:var(--dim);letter-spacing:.04em;padding:5px 10px;border:1px dashed var(--line2);background:var(--panelSolid)}
#sample b{color:var(--alert);letter-spacing:.12em}
#tools{position:absolute;right:16px;top:50px;display:flex;gap:6px;font-family:var(--mono);font-size:11px}
#tools span{border:1px solid var(--line);padding:4px 8px;color:var(--dim);background:var(--panelSolid)}#tools span.on{color:var(--accent);border-color:var(--accent)}
#detail{position:absolute;left:16px;top:16px;width:340px;bottom:74px;background:var(--panel);border:1px solid var(--line2);padding:18px 18px 16px;display:flex;flex-direction:column;gap:12px;z-index:3}
.dp .kick{font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--dim);display:flex;justify-content:space-between}
.dp h2{font-family:var(--display);font-weight:400;font-size:26px;line-height:1.05;color:var(--hot)}
.dp .role{font-size:14px;color:var(--dim);margin-top:-6px}
.dp .badges{display:flex;gap:6px;flex-wrap:wrap}
.dp .badge{font-family:var(--mono);font-size:11px;padding:3px 7px;border:1px solid var(--line2);color:var(--text)}
.dp .badge.busy{border-color:var(--accent);color:var(--accent)}
.dp .sec{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;color:var(--dim);border-bottom:1px solid var(--line);padding-bottom:5px;margin-top:2px}
.dp .now{font-size:14.5px;line-height:1.4;color:var(--text)}
.dp ul{list-style:none;display:flex;flex-direction:column;gap:7px}
.dp li{display:flex;align-items:center;gap:9px;font-size:14px;color:var(--text)}
.dp li .sw{width:10px;height:10px;flex:none}
.dp li .t{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--dim)}
.dp .draft{border:1px solid var(--alert);padding:10px 11px;display:flex;flex-direction:column;gap:8px;background:color-mix(in srgb,var(--alert) 7%,transparent)}
.dp .draft .dt{font-size:14px;color:var(--text)}.dp .draft .dk{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;color:var(--alert)}
.dp .btns{display:flex;gap:8px}
.dp .btn{font-family:var(--mono);font-size:12px;padding:6px 12px;border:1px solid var(--line2);color:var(--text)}
.dp .btn.pri{background:var(--accent);color:var(--bg);border-color:var(--accent);font-weight:600}
.dp .foot{margin-top:auto;font-family:var(--mono);font-size:11px;color:var(--dim);display:flex;justify-content:space-between}
#legend{position:absolute;left:372px;right:16px;bottom:16px;height:42px;display:flex;align-items:center;gap:18px;padding:0 14px;background:var(--panel);border:1px solid var(--line);font-size:13px;color:var(--text);z-index:3}
#legend .k{display:flex;align-items:center;gap:7px;white-space:nowrap}#legend .k b{font-family:var(--mono);font-weight:400;font-size:11px;color:var(--dim)}
#legend .lab{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;color:var(--dim)}
#neo{position:absolute;left:1170px;top:0;width:430px;height:844px;border-left:1px solid var(--line);background:var(--bg2);padding:14px 18px 16px;display:flex;flex-direction:column}
.neohead{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--dim)}
.live{color:var(--accent);display:flex;gap:6px;align-items:center}.live i{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent)}
#ringbox{height:250px;display:flex;justify-content:center;align-items:center;margin-top:2px}
#ring{width:250px;height:250px;overflow:visible}
#state{text-align:center;font-family:var(--mono);font-size:12px;letter-spacing:.16em;color:var(--accent);margin-top:2px}
#transcript{margin-top:10px;border:1px solid var(--line);background:var(--panel);padding:10px 12px;display:grid;grid-template-columns:52px 1fr;gap:5px 8px}
#transcript .who{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:var(--dim);padding-top:2px}
#transcript .who.neo{color:var(--accent)}
#transcript .said{font-size:14px;line-height:1.35;color:var(--text)}#transcript .said.neo{color:var(--dim)}
#tiles{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:10px;flex:1;grid-template-rows:auto 1fr auto}
.tile{border:1px solid var(--line);background:var(--panel);padding:10px 12px;display:flex;flex-direction:column;gap:5px;min-height:0}
.tile .h{font-family:var(--mono);font-size:10.5px;letter-spacing:.13em;color:var(--dim);display:flex;justify-content:space-between}
.tile .v{font-family:var(--display);font-size:34px;line-height:1;color:var(--hot)}
.tile .v small{font-size:16px;color:var(--dim)}
.tile .s{font-size:13px;color:var(--dim);line-height:1.3}
.tile.alert .v{color:var(--alert)}.tile.alert{border-color:color-mix(in srgb,var(--alert) 55%,var(--line))}
.tile.wide{grid-column:1/3}
.chk{display:flex;flex-direction:column;gap:6px;margin-top:3px}
.chk div{display:flex;gap:9px;align-items:center;font-size:14px;color:var(--text)}
.chk div.done{color:var(--dim);text-decoration:line-through;text-decoration-color:var(--faint)}
.chk .bx{width:14px;height:14px;border:1.5px solid var(--line2);flex:none;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--bg)}
.chk .done .bx{background:var(--accent);border-color:var(--accent)}
.chk .due{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--dim);text-decoration:none}
.bar{height:5px;background:var(--line);position:relative}.bar i{position:absolute;left:0;top:0;bottom:0;background:var(--accent)}
.bots{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.bots span{font-family:var(--mono);font-size:10.5px;padding:2px 5px;border:1px solid var(--line2);color:var(--text)}
.bots span.b{border-color:var(--accent);color:var(--accent)}
.dp .log{display:flex;flex-direction:column;gap:5px;font-family:var(--mono);font-size:12px;color:var(--dim)}
.dp .log b{font-weight:500;color:var(--accent);margin-right:8px}
/* ===== T1 DIGITAL RAIN ===== */
.t1 .wm,.t1 #state,.t1 .live{text-shadow:0 0 8px rgba(0,255,65,.7)}
.t1 #detail,.t1 .tile,.t1 #transcript,.t1 #legend{box-shadow:inset 0 0 0 1px rgba(0,255,65,.05),0 0 24px rgba(0,255,65,.06)}
.t1 .dp h2,.t1 .tile .v{text-shadow:0 0 10px rgba(232,255,224,.35)}
.t1 #detail::before,.t1 #detail::after{content:"";position:absolute;width:14px;height:14px;border:2px solid var(--accent)}
.t1 #detail::before{left:-2px;top:-2px;border-right:0;border-bottom:0}.t1 #detail::after{right:-2px;bottom:-2px;border-left:0;border-top:0}
.t1 #neo{background:linear-gradient(180deg,#010A03,#000)}
/* ===== T2 NEBUCHADNEZZAR ===== */
.t2 #app::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:20;background:repeating-linear-gradient(0deg,rgba(0,0,0,.22) 0 1px,transparent 1px 3px),radial-gradient(ellipse at 50% 50%,transparent 60%,rgba(0,0,0,.45) 100%)}
.t2 #top{background:linear-gradient(180deg,#2a2721,#191713);border-bottom:2px solid #0a0907;box-shadow:inset 0 1px 0 #3d392f}
.t2 .wm{font-size:32px;letter-spacing:.1em;text-shadow:0 0 10px rgba(255,176,0,.6)}
.t2 .sub,.t2 .meta{font-family:var(--body);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--label)}
.t2 .search{background:#070a06;border:2px solid #000;box-shadow:inset 0 0 10px rgba(0,0,0,.9),0 1px 0 #3d392f;color:#8a6d33;font-family:var(--mono);font-size:13px}
.t2 .pill{border-color:#3a352b;background:#12110d}.t2 .user{background:#FFB000;color:#1a1200;font-family:var(--body);font-size:14px}
.t2 .clock{font-family:'VT323';font-size:22px;color:var(--accent);text-shadow:0 0 6px rgba(255,176,0,.6);letter-spacing:.04em}
.t2 #graphwrap{border:10px solid #1d1b16;border-radius:26px;box-shadow:inset 0 0 60px rgba(0,0,0,.9),inset 0 0 0 2px #000,0 0 0 2px #2e2a22;left:6px;top:6px;width:1158px;height:832px}
.t2 main{background:#14120e}
.t2 #detail,.t2 .tile,.t2 #transcript,.t2 #legend{background:linear-gradient(180deg,#1e1c17,#15130f);border:1px solid #3a352b;box-shadow:inset 0 1px 0 #36322a,0 2px 0 #000}
.t2 #detail{border-radius:6px}
.t2 .dp h2{font-size:40px;color:var(--accent);text-shadow:0 0 12px rgba(255,176,0,.55)}
.t2 .dp .sec,.t2 .tile .h,.t2 .neohead,.t2 #legend .lab,.t2 #transcript .who{font-family:var(--body);font-size:13px;font-weight:600;letter-spacing:.16em;color:var(--label)}
.t2 .dp .now,.t2 .dp li,.t2 #transcript .said,.t2 .chk div{font-family:var(--mono);font-size:13px}
.t2 .dp .role,.t2 .tile .s{font-family:var(--body);font-size:15px}
.t2 .tile .v{font-size:50px;color:var(--accent);text-shadow:0 0 12px rgba(255,176,0,.55)}
.t2 .tile.alert .v{color:var(--alert);text-shadow:0 0 12px rgba(255,84,54,.6)}
.t2 .tile .v small{font-size:26px}

.t2 #state{font-family:'VT323';font-size:22px;letter-spacing:.12em;text-shadow:0 0 8px rgba(255,176,0,.6)}
.t2 #neo{background:linear-gradient(180deg,#1a1814,#12110d);border-left:2px solid #0a0907}
.t2 #transcript{background:#070a06;border:2px solid #000;box-shadow:inset 0 0 12px rgba(0,0,0,.9)}
.t2 #transcript .said{color:var(--accent2);text-shadow:0 0 6px rgba(65,255,122,.35)}.t2 #transcript .said.neo{color:var(--accent)}
.t2 #sample{border-style:solid;background:#070a06}.t2 #tools span{background:#070a06}
.t2 .chk .done .bx{background:var(--accent2);border-color:var(--accent2)}.t2 .bar i{background:var(--accent2);box-shadow:0 0 8px var(--accent2)}
.t2 #legend{font-family:var(--body);font-size:15px}
/* ===== T3 ARCHITECT ===== */
.t3 #top{background:#FAFAF8}
.t3 .wm{color:var(--text);font-size:21px;letter-spacing:.06em}
.t3 .search{background:#fff;border-color:var(--line)}
.t3 .user{background:var(--text);color:#fff}
.t3 #detail,.t3 .tile,.t3 #transcript,.t3 #legend{border:1px solid var(--line);box-shadow:0 1px 2px rgba(21,25,28,.04),0 8px 24px rgba(21,25,28,.06)}
.t3 #detail{border-top:3px solid var(--accent)}
.t3 .dp h2{font-family:var(--body);font-weight:600;font-size:28px;letter-spacing:-.01em}
.t3 .tile .v{font-family:var(--body);font-weight:300;font-size:38px;letter-spacing:-.02em}
.t3 .tile .v small{font-weight:400}
.t3 .dp .sec,.t3 .tile .h,.t3 .neohead,.t3 #legend .lab{letter-spacing:.18em;font-size:10px}
.t3 #neo{background:#F4F5F2}
.t3 #state{color:var(--accent);font-size:11px;letter-spacing:.24em}
.t3 .dp .btn.pri{color:#fff}.t3 .chk .bx{color:#fff}
.t3 #sample{background:#fff;border-style:solid}.t3 #tools span{background:#fff}
.t3 #transcript .said.neo{color:var(--text);opacity:.7}
/* ===== T4 ZION / MACHINE CITY ===== */
.t4{--cut:14px}
.t4 #top{background:linear-gradient(180deg,#062532,#03121A);border-bottom:1px solid var(--line2)}
.t4 .wm{font-family:var(--display);font-weight:900;font-size:19px;letter-spacing:.22em;color:var(--hot);text-shadow:0 0 12px rgba(95,225,232,.5)}
.t4 .sub{font-family:var(--body);font-size:13px;font-weight:600;letter-spacing:.12em}
.t4 .user{background:var(--accent2);color:#1a0d00;font-family:var(--display);font-weight:700;font-size:11px}
.t4 #detail,.t4 .tile,.t4 #transcript,.t4 #legend{clip-path:polygon(var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut));border:none;background:linear-gradient(160deg,rgba(12,52,66,.95),rgba(5,28,38,.95));box-shadow:inset 0 0 0 1px var(--line2)}
.t4 #detail{border-left:3px solid var(--accent2)}
.t4 .dp h2{font-family:var(--display);font-weight:700;font-size:23px;letter-spacing:.06em;text-transform:uppercase;color:var(--hot)}
.t4 .dp .role,.t4 .dp .now,.t4 .dp li,.t4 #transcript .said,.t4 .chk div,.t4 .tile .s,.t4 #legend{font-family:var(--body);font-weight:600;font-size:15.5px}
.t4 .dp .sec,.t4 .tile .h,.t4 .neohead,.t4 #legend .lab,.t4 #transcript .who{font-family:var(--display);font-weight:500;font-size:9.5px;letter-spacing:.2em;color:var(--accent)}
.t4 .tile .v{font-family:var(--display);font-weight:700;font-size:32px}
.t4 .tile.alert{background:repeating-linear-gradient(135deg,rgba(255,42,61,.13) 0 10px,transparent 10px 20px),linear-gradient(160deg,rgba(60,14,22,.95),rgba(30,8,14,.95));box-shadow:inset 0 0 0 1px var(--alert),0 0 20px rgba(255,42,61,.25)}
.t4 .tile.alert .h{color:var(--alert)}.t4 .tile.alert .v{text-shadow:0 0 14px rgba(255,42,61,.7)}
.t4 .dp .draft{border-color:var(--alert);background:repeating-linear-gradient(135deg,rgba(255,42,61,.10) 0 8px,transparent 8px 16px)}
.t4 .dp .btn.pri{background:var(--accent2);border-color:var(--accent2);color:#1a0d00}
.t4 #state{font-family:var(--display);font-size:10.5px;letter-spacing:.24em;text-shadow:0 0 10px rgba(95,225,232,.7)}
.t4 #neo{background:linear-gradient(180deg,#062532,#03121A 70%)}
.t4 .chk .done .bx{background:var(--ok);border-color:var(--ok)}.t4 .bar i{background:linear-gradient(90deg,var(--accent),var(--ok))}
.t4 #sample{border-style:solid}
.t4 .dp .log b{color:var(--accent2)}
.t2 #ringbox{height:212px}.t2 #ring{width:212px;height:212px}
.t2 .tile .v{font-size:42px}.t2 .tile .v small{font-size:22px}
.t2 #transcript{margin-top:8px;padding:8px 10px}.t2 #tiles{margin-top:10px;gap:8px}
.t2 .tile{padding:8px 11px}.t2 .chk{gap:4px}
#legend .lab{white-space:nowrap}
.t4 #legend{gap:15px}
.t4 .tile .v small{font-family:var(--body);font-weight:600;font-size:20px}
.t4 .tile.alert .h{color:#FFC2C8}
.t4 #transcript{grid-template-columns:62px 1fr}
/* ===== T5 = 04b ZION BLACK (inherits .t4, overrides fills) ===== */
#burst{display:none}
.t5 #ringbox{position:relative}.t5 #burst{display:block;position:absolute;left:-18px;right:-18px;top:-16px;bottom:-26px;width:430px;height:292px}
.t5 #ring{position:relative}
.t5 #top{background:#000;border-bottom:1px solid var(--line)}
.t5 #graphwrap{background:#000}
.t5 #neo{background:#020403;border-left:1px solid var(--line)}
.t5 #detail,.t5 .tile,.t5 #transcript,.t5 #legend{background:linear-gradient(160deg,#07100E,#050807);box-shadow:inset 0 0 0 1px var(--line2)}
.t5 #detail{border-left:3px solid var(--accent2)}
.t5 .tile.alert{background:repeating-linear-gradient(135deg,rgba(255,77,94,.09) 0 10px,transparent 10px 20px),linear-gradient(160deg,#170508,#0A0204);box-shadow:inset 0 0 0 1px var(--alert)}
.t5 .tile.alert .v{text-shadow:0 0 8px rgba(255,77,94,.5)}
.t5 .dp .draft{background:repeating-linear-gradient(135deg,rgba(255,77,94,.08) 0 8px,transparent 8px 16px),#0A0204}
.t5 .search,.t5 #sample,.t5 #tools span,.t5 .pill{background:#050807}
.t5 .wm{text-shadow:0 0 8px rgba(95,225,232,.35)}
.t5 #state{text-shadow:0 0 6px rgba(95,225,232,.5)}
body.t5 #board{background:#000}
body.t5 .swc,body.t5 .nl{background:#050807}
