:root{--bg:#0b0e0b;--panel:#121712;--line:#2b352b;--text:#e6eadf;--muted:#8b9586;--green:#9ee66c;--amber:#f0c96b;--red:#f17d71}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 50% -10%,#20291e 0,#0b0e0b 42%);color:var(--text);font:15px/1.55 system-ui,-apple-system,Segoe UI,sans-serif;min-height:100vh}.top{height:64px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1180px)/2));background:#0b0e0bea;backdrop-filter:blur(10px);position:sticky;top:0;z-index:10}.brand{font:bold 17px ui-monospace,monospace;color:var(--green);text-decoration:none}.brand span{color:var(--muted);font-size:11px}.top nav{display:flex;gap:18px;align-items:center}.top a,.linkbtn{color:#c9d2c3;text-decoration:none}.inline{display:inline}.linkbtn{border:0;background:none;cursor:pointer;font:inherit}.shell{max-width:1180px;margin:0 auto;padding:44px 24px 80px}.hero{padding:68px 0 54px;max-width:780px}.eyebrow{font:12px ui-monospace,monospace;letter-spacing:.18em;color:var(--green)}h1{font-size:clamp(34px,6vw,68px);line-height:1;margin:.18em 0}.hero p{font-size:19px;color:#b8c1b2;max-width:700px}.btn{display:inline-block;padding:11px 16px;border:1px solid #4b5849;background:#171d16;color:#e9eee5;text-decoration:none;cursor:pointer;margin:8px 8px 0 0}.btn.primary{background:var(--green);color:#0a0c09;border-color:var(--green);font-weight:800}.panel{border:1px solid var(--line);background:#111610d9;padding:24px;margin:18px 0}.panelhead{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);margin:-4px 0 18px;padding-bottom:12px}.panelhead h2{margin:0}.panelhead span{font:12px monospace;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.card{border:1px solid var(--line);padding:18px;background:#0d110d}.card b,.card code{color:var(--green);font:12px monospace}.card h3{margin:8px 0}.card p{color:#aeb7a8}.empty{text-align:center;padding:48px 12px;color:var(--muted)}.crt{font:32px monospace;color:var(--green);text-shadow:0 0 12px #9ee66c66}.statsline{display:flex;gap:25px;color:var(--muted);font:12px monospace}.auth{max-width:520px;margin:50px auto}.auth h1{font-size:38px}.auth label,.panel label{display:block;margin:14px 0;color:#bcc5b6}.auth input,.panel input,.panel select{display:block;width:100%;margin-top:6px;background:#090c09;border:1px solid #344033;color:white;padding:11px 12px}.auth small{color:var(--muted)}.alert{padding:12px 14px;border:1px solid #5f5931;background:#272313;margin:12px 0}.alert.good{border-color:#42623a;background:#182516}.alert.bad{border-color:#70413a;background:#2a1715}.dashhead{display:flex;justify-content:space-between;align-items:flex-start}.dashhead h1{font-size:46px}.dashhead p{color:var(--muted)}.badge,.statusdot{font:12px monospace;border:1px solid #4b6841;color:var(--green);padding:9px 12px}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:11px;border-bottom:1px solid var(--line);vertical-align:top}th{font:11px monospace;color:var(--muted);text-transform:uppercase}code{font-family:ui-monospace,monospace;color:#b9d9a6}.goodtxt{color:var(--green)}.badtxt{color:var(--red)}.muted{color:var(--muted)}.mini{background:#181e17;border:1px solid #3a4638;color:#dce4d6;padding:6px 9px;cursor:pointer}.mini.danger{border-color:#72453d;color:#ffb1a9}.adminlayout{display:grid;grid-template-columns:210px 1fr;gap:28px}.adminlayout aside{border-right:1px solid var(--line);min-height:70vh;padding-right:18px}.adminlayout aside a{display:block;padding:9px 0;color:#bec7b7;text-decoration:none}.adminlayout section{min-width:0}.adminlayout section>h1{font-size:42px}.metricgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.metricgrid>div{border:1px solid var(--line);padding:18px;background:#111610}.metricgrid b{display:block;font:30px monospace;color:var(--green)}.metricgrid span{color:var(--muted);font-size:12px}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:18px}.certificate{max-width:900px;margin:30px auto;padding:60px;border:2px solid #52634e;text-align:center;background:linear-gradient(145deg,#151b14,#0c100c);box-shadow:inset 0 0 0 8px #0d110d}.certificate h1{font-size:56px}.certificate h2{font-size:35px;color:var(--green)}.certificate h3{font-size:24px}.certgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:30px 0}.certgrid span{border:1px solid var(--line);padding:14px;color:var(--muted)}.certgrid b{display:block;color:var(--text);font-size:20px}.revoked{opacity:.75}footer{text-align:center;color:#586154;padding:30px;font:11px monospace}@media(max-width:800px){.adminlayout{grid-template-columns:1fr}.adminlayout aside{border:0;border-bottom:1px solid var(--line);min-height:auto}.metricgrid{grid-template-columns:repeat(2,1fr)}.twocol{grid-template-columns:1fr}.certgrid{grid-template-columns:1fr}.top nav{gap:9px}.shell{padding:28px 14px}}
.comingsoon{margin:24px 0 80px;padding:22px 0;color:var(--muted);font:15px ui-monospace,monospace}.terminal-caret{color:var(--green);animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}.walletbadge,.walletbig{border:1px solid #4b6841;color:var(--green);padding:12px 16px;text-decoration:none;text-align:right;min-width:125px}.walletbadge span,.walletbig span{display:block;font:10px ui-monospace,monospace;letter-spacing:.12em;color:var(--muted)}.walletbadge b,.walletbig b{display:block;font:28px ui-monospace,monospace}.walletbadge small{color:var(--muted)}.walletbig b{font-size:46px}.metricgrid.metric3{grid-template-columns:repeat(3,1fr)}.creditform{display:flex;gap:5px;margin-top:6px}.creditform input{width:58px!important;margin:0!important;padding:6px!important}.checkline{display:flex!important;align-items:center;gap:9px}.checkline input{display:inline!important;width:auto!important;margin:0!important}.codespanel pre{white-space:pre-wrap;color:var(--green);font:15px/1.8 ui-monospace,monospace}.public-campaigns{margin-top:0}@media(max-width:800px){.metricgrid.metric3{grid-template-columns:1fr}.walletbadge{min-width:auto}.dashhead{gap:12px}}
.daybadge{border:1px solid #4b6841;color:var(--green);padding:12px 16px;text-align:right;min-width:145px}.daybadge span{display:block;font:10px ui-monospace,monospace;letter-spacing:.12em;color:var(--muted)}.daybadge b{display:block;font:36px ui-monospace,monospace;line-height:1.1}.daybadge small,.daybadge em{display:block;color:var(--muted);font:10px ui-monospace,monospace;font-style:normal}.daybar{height:3px;background:#263124;margin:8px 0 6px;overflow:hidden}.daybar i{display:block;height:100%;background:var(--green)}@media(max-width:800px){.daybadge{min-width:128px}.daybadge b{font-size:30px}}
/* Platform 2 terminal_v1 game runner */
.game{margin-top:-18px}.gamebar{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:18px;padding:12px 15px;border:1px solid var(--line);background:#0a0d09}.gamebar>div:first-child{display:flex;gap:12px;align-items:baseline}.gamebar .glabel{font:10px ui-monospace,monospace;letter-spacing:.15em;color:var(--green)}.gamebar b{font-family:ui-monospace,monospace}.gamemetrics{display:flex;gap:16px;font:10px ui-monospace,monospace;color:var(--muted)}.gamemetrics b{color:var(--green);font-size:13px}.office-desk{position:relative;display:grid;grid-template-columns:230px minmax(460px,1fr) 250px;gap:20px;align-items:center;min-height:620px;padding:28px 22px 54px;border:1px solid #293128;background:linear-gradient(180deg,#10150f 0 63%,#352c24 63.2%,#211b17 100%);overflow:hidden}.office-desk:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,rgba(0,0,0,.045) 4px);pointer-events:none}.incident-card,.paper-panel{position:relative;z-index:1;border:1px solid #3c4739;background:linear-gradient(145deg,#181e16,#0e120d);padding:17px;box-shadow:0 18px 35px #0006}.incident-top{display:flex;justify-content:space-between;color:var(--green);font:10px ui-monospace,monospace;letter-spacing:.12em}.incident-card h1{font-size:26px;line-height:1.05;margin:16px 0 10px}.incident-card>p{min-height:95px;color:#b6c0af;font-size:13px}.caller{display:flex;gap:10px;align-items:center;border-top:1px dashed #3c4739;border-bottom:1px dashed #3c4739;padding:12px 0;margin:14px 0}.caller>span{font-size:30px;transform:rotate(-15deg)}.caller small{display:block;color:var(--muted);font:9px ui-monospace,monospace}.caller b{font-size:12px}.retrobtn{display:inline-block;border:1px solid #515e4b;background:#1a2118;color:#e7eee2;padding:10px 13px;font:bold 11px ui-monospace,monospace;letter-spacing:.06em;text-decoration:none;cursor:pointer}.retrobtn:disabled{opacity:.35;cursor:not-allowed}.retrobtn.green{background:var(--green);border-color:var(--green);color:#0b1008}.retrobtn.ghostgame{margin-left:8px}.coffee-note{margin-top:22px;color:#777e73;font:10px ui-monospace,monospace;transform:rotate(-1deg)}.coffee-note b{color:#aeb7a8}.monitor-wrap{position:relative;z-index:1;align-self:center}.monitor{position:relative;border:18px solid #4a4d45;border-radius:18px;background:#020402;box-shadow:0 28px 50px #000b,inset 0 0 0 3px #242821;overflow:hidden}.monitor:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,#0002 4px),radial-gradient(circle at 50% 30%,transparent,#0007 110%);pointer-events:none}.monitor-head{display:flex;justify-content:space-between;padding:7px 11px;background:#11160f;color:#7f8b77;font:9px ui-monospace,monospace;border-bottom:1px solid #253021}.terminal-output{margin:0;height:390px;padding:18px 18px 8px;overflow:auto;white-space:pre-wrap;background:radial-gradient(circle at 45% 30%,#12200f,#030703 72%);color:#aef283;text-shadow:0 0 7px #7be64a55;font:13px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace}.terminal-form{position:relative;display:flex;gap:8px;padding:8px 18px 18px;background:#030703;color:#aef283;font:13px ui-monospace,monospace}.terminal-form input{flex:1;min-width:0;border:0!important;outline:0;background:transparent!important;color:#d9ffd0!important;padding:0!important;margin:0!important;font:inherit}.monitor-neck{width:90px;height:34px;margin:auto;background:#3e413a}.monitor-foot{width:220px;height:15px;margin:auto;border-radius:50%;background:#4b4e46;box-shadow:0 12px 18px #0009}.keyboard{width:82%;height:38px;margin:20px auto 0;display:grid;grid-template-columns:repeat(12,1fr);gap:3px;padding:8px;background:#625b50;transform:perspective(120px) rotateX(9deg);box-shadow:0 12px 15px #0008}.keyboard i{background:#2f312d;border-top:2px solid #74756d}.right-column{position:relative;z-index:1;display:flex;flex-direction:column;gap:12px}.paper-panel{padding:13px;background:#121711}.paper-title{display:flex;justify-content:space-between;color:#929d8d;font:bold 9px ui-monospace,monospace;letter-spacing:.15em;margin-bottom:10px}.objective{display:flex;gap:8px;padding:8px 0;border-top:1px solid #252e24;color:#bbc4b5;font-size:12px}.objective i{font-style:normal;color:#667260}.objective.done{color:#718069;text-decoration:line-through}.objective.done i{color:var(--green)}.topology{display:grid;grid-template-columns:1fr 1fr;gap:6px}.toponode{border:1px solid #303a2e;padding:7px;font:9px ui-monospace,monospace;color:#b7c1b0;display:grid;grid-template-columns:8px 1fr;gap:3px 6px;align-items:center}.toponode i{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 7px #9ee66c88}.toponode.warn i{background:var(--amber)}.toponode.down i{background:var(--red)}.toponode small{grid-column:2;color:#606a5d}.hintrow{border-top:1px solid #252e24;padding:8px 0;display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.hintrow b{font-size:11px}.hintrow p{font-size:11px;color:var(--amber);margin:6px 0}.hintbuy{background:#192117;border:1px solid #43513e;color:#cfd8c9;padding:5px 7px;font:9px ui-monospace,monospace;cursor:pointer;white-space:nowrap}.unlocked{font:8px ui-monospace,monospace;color:var(--green)}.smalltext{font-size:11px}.mission-strip{display:flex;gap:6px;overflow:auto;padding:12px 0}.mission-chip{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;gap:0 7px;text-align:left;min-width:145px;border:1px solid #303930;background:#10140f;color:#b7c0b1;padding:8px;cursor:pointer}.mission-chip small{color:var(--green);font:8px ui-monospace,monospace}.mission-chip b{font:14px ui-monospace,monospace}.mission-chip span{grid-column:1/3;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mission-chip.done{opacity:.58}.mission-chip.done b{color:var(--green)}.mission-chip.active{border-color:#6c885f}.mission-chip.locked{opacity:.28;cursor:not-allowed}.game-modal{position:fixed;inset:0;z-index:40;display:grid;place-items:center;background:#020402d9;backdrop-filter:blur(5px);padding:20px}.game-modal.hidden{display:none}.modal-card{width:min(560px,94vw);border:1px solid #465541;background:linear-gradient(145deg,#171d15,#090c09);padding:34px;box-shadow:0 30px 80px #000}.modal-card h2{font-size:34px;margin:8px 0 14px}.modal-card p{color:#bac4b4;font-size:16px}.phone-modal:before{content:"☎";float:right;font-size:70px;color:#465541;transform:rotate(-17deg)}.certlink{display:block;margin:20px 0;padding:12px;border:1px solid #59744e;color:var(--green);font:11px ui-monospace,monospace;text-decoration:none}@media(max-width:1000px){.office-desk{grid-template-columns:1fr}.monitor-wrap{order:-1}.incident-card,.right-column{display:grid;grid-template-columns:1fr 1fr;gap:12px}.incident-card{display:block}.terminal-output{height:340px}}@media(max-width:650px){.gamebar{align-items:flex-start}.gamemetrics{display:grid;gap:2px}.incident-card,.right-column{display:block}.paper-panel{margin-top:10px}.office-desk{padding:12px 10px 35px}.monitor{border-width:10px}.terminal-output{height:320px;font-size:11px}.shell{padding-left:8px;padding-right:8px}.top{padding-left:10px;padding-right:10px}.top nav{font-size:12px}}
.campaign-link{text-decoration:none;color:inherit;transition:.15s}.campaign-link:hover{border-color:#59704f;transform:translateY(-1px)}.playmark{display:block;margin-top:14px;color:var(--green);font:10px ui-monospace,monospace;letter-spacing:.08em}
/* Platform 2.0.0 — server-side package inbox */
.package-sources{align-items:stretch}.package-sources>.panel{min-height:330px}.serverpath{border:1px dashed #44513f;background:#090c08;padding:10px 12px;margin:10px 0 14px;overflow:auto}.serverpath code{color:var(--green);white-space:nowrap}.server-package-list{border:1px solid var(--line);margin:12px 0 16px;max-height:260px;overflow:auto}.server-package-row{display:grid!important;grid-template-columns:20px 1fr;gap:9px;align-items:center;padding:10px 11px!important;margin:0!important;border-bottom:1px solid var(--line);cursor:pointer}.server-package-row:last-child{border-bottom:0}.server-package-row:hover{background:#121811}.server-package-row input{width:auto!important;margin:0!important}.server-package-row b{display:block;font:11px ui-monospace,monospace;color:#d9e2d3;overflow-wrap:anywhere}.server-package-row small{display:block;margin-top:3px;color:var(--muted);font:9px ui-monospace,monospace}.empty-server-packages{margin:15px 0;padding:22px;border:1px dashed var(--line);text-align:center;color:var(--muted)}.key-panel{margin-top:18px}.compact-fields{gap:16px}.compact-fields label{margin:0}@media(max-width:800px){.package-sources{grid-template-columns:1fr}.package-sources>.panel{min-height:auto}}
/* Platform 2.0.0 — identity, privacy, age gate and consent UI */
footer{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap}footer nav{display:flex;gap:12px;align-items:center}footer a,.footer-cookie-btn{color:#727d6d;background:none;border:0;font:inherit;text-decoration:none;cursor:pointer}footer b{color:var(--amber)}.wideauth{max-width:780px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.optional{font-size:10px;color:var(--muted);font-weight:400}.consentbox{margin:20px 0;padding:14px;border:1px solid var(--line);background:#0c100c}.consentbox .checkline{align-items:flex-start}.btn.danger{border-color:#78453e;color:#ffb2aa;background:#251513}.privacyfacts{display:grid;grid-template-columns:150px 1fr;gap:8px 14px}.privacyfacts dt{color:var(--muted);font:11px ui-monospace,monospace}.privacyfacts dd{margin:0}.legal{max-width:900px;margin:20px auto 60px}.legal h1{font-size:44px}.legal h2{font-size:22px;margin-top:30px}.agegate{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:#030503ed;backdrop-filter:blur(7px);padding:20px}.agecard{width:min(680px,96vw);display:grid;grid-template-columns:120px 1fr;gap:25px;border:1px solid #4d5949;background:linear-gradient(145deg,#151b14,#090c09);padding:32px;box-shadow:0 30px 90px #000}.agecard h2{font-size:34px;margin:4px 0 10px}.agecard p{color:#b9c3b3}.age18{display:grid;place-items:center;border:2px solid var(--amber);border-radius:50%;width:100px;height:100px;font:bold 35px ui-monospace,monospace;color:var(--amber)}.cookiebar{position:fixed;left:22px;right:22px;bottom:20px;z-index:90;max-width:1040px;margin:auto;display:flex;gap:10px;align-items:center;border:1px solid #465342;background:#0b100af2;padding:16px;box-shadow:0 16px 50px #000b}.cookiebar>div{flex:1}.cookiebar p{margin:3px 0;color:#9fa99a;font-size:12px}.cookiebar form{margin:0}.cookiebar .btn{margin:0;white-space:nowrap}.cookie-dialog{width:min(620px,94vw);border:1px solid #4a5746;background:#0d120c;color:var(--text);padding:0;box-shadow:0 30px 100px #000}.cookie-dialog::backdrop{background:#020402d9;backdrop-filter:blur(5px)}.cookie-dialog form{padding:24px}.dialoghead{display:flex;justify-content:space-between;align-items:center}.dialoghead h2{margin:0}.xbtn{border:0;background:none;color:#b9c2b3;font-size:28px;cursor:pointer}.cookie-choice{display:grid!important;grid-template-columns:22px 1fr;gap:10px;align-items:start;padding:14px 0;border-top:1px solid var(--line);margin:0!important}.cookie-choice input{width:auto!important;margin:3px 0 0!important}.cookie-choice b,.cookie-choice small{display:block}.cookie-choice small{color:var(--muted);margin-top:3px}.cookie-choice.fixed{opacity:.8}.dialogactions{display:flex;justify-content:space-between;align-items:center;margin-top:14px}.playercall{display:block;color:var(--muted);font:9px ui-monospace,monospace}.gamebar>div:first-child{flex-wrap:wrap}.gamebar .playercall{flex-basis:100%}@media(max-width:800px){.formgrid{grid-template-columns:1fr}.agecard{grid-template-columns:1fr}.age18{width:74px;height:74px;font-size:26px}.cookiebar{left:8px;right:8px;bottom:8px;flex-wrap:wrap}.cookiebar>div{flex-basis:100%}footer{padding:25px 12px}.privacyfacts{grid-template-columns:1fr}.top{height:auto;min-height:64px;padding-top:10px;padding-bottom:10px}.top nav{flex-wrap:wrap;justify-content:flex-end}}
