:root{--bg:#000502;--green:#2f7;--green-dim:#0f8a3c;--green-soft:#9dffc4;--amber:#ffd056;--red:#f56;--glow:34, 255, 119;--font:"Share Tech Mono", "Cascadia Mono", Consolas, monospace}.app.backroom{--green:#f35;--green-dim:#8a1226;--green-soft:#ffb3bf;--glow:255, 51, 85}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--bg);color:var(--green);font-family:var(--font);overflow:hidden}.app{flex-direction:column;justify-content:center;align-items:center;gap:8px;height:100dvh;padding:12px 8px 8px;display:flex;position:relative}.matrix-rain{z-index:0;opacity:.5;position:fixed;inset:0}.scanlines{z-index:3;pointer-events:none;mix-blend-mode:multiply;background:repeating-linear-gradient(0deg,#00000038 0 1px,#0000 1px 3px);position:fixed;inset:0}.terminal{z-index:2;border:1px solid rgba(var(--glow), .35);width:min(1480px,97vw);height:88dvh;box-shadow:0 0 32px rgba(var(--glow), .18), 0 0 120px rgba(var(--glow), .07), inset 0 0 48px #00280c80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#000a04e0;border-radius:8px;flex-direction:column;animation:8s infinite crt-flicker;display:flex;position:relative}@keyframes crt-flicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.96}94%{opacity:1}97%{opacity:.98}}.term-header{border-bottom:1px solid rgba(var(--glow), .25);background:#00140899;border-radius:8px 8px 0 0;align-items:center;gap:8px;padding:10px 14px;display:flex}.term-dot{opacity:.85;border-radius:50%;width:11px;height:11px}.term-dot.red{background:#ff5f57}.term-dot.yellow{background:#febc2e}.term-dot.green{background:#28c840}.term-title{color:var(--green-dim);letter-spacing:.08em;margin-left:10px;font-size:12px}.term-body{text-shadow:0 0 6px rgba(var(--glow), .45);flex:1;padding:16px 20px 20px;font-size:14.5px;line-height:1.5;overflow-y:auto}.term-body::-webkit-scrollbar{width:8px}.term-body::-webkit-scrollbar-thumb{background:rgba(var(--glow), .25);border-radius:4px}.line{font-family:var(--font);white-space:pre-wrap;word-break:break-all}.line.system{color:var(--green-soft)}.line.ok{color:var(--green)}.line.warn{color:var(--amber);text-shadow:0 0 6px #ffd05666}.line.error{color:var(--red);text-shadow:0 0 6px #ff556673}.line.data{color:var(--green)}.line.dim{color:var(--green-dim);text-shadow:none}.line.input{color:#fff;margin-top:6px}.line.banner{color:var(--green);text-shadow:0 0 10px rgba(var(--glow), .7);font-size:12px;line-height:1.15;animation:.45s steps(5,end) both banner-glitch-in}@keyframes banner-glitch-in{0%{opacity:0;filter:brightness(3)blur(1px);transform:translate(-10px)skew(-12deg)}40%{opacity:1;filter:brightness(1.8);transform:translate(4px)skew(6deg)}70%{filter:brightness(1.3);transform:translate(-2px)skew(-3deg)}to{opacity:1;filter:none;transform:none}}.spinner{animation:.9s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.prompt-row{align-items:center;gap:8px;margin-top:6px;display:flex}.prompt{color:var(--green);text-shadow:0 0 8px rgba(var(--glow), .8)}.prompt-input{color:#fff;font-family:var(--font);caret-color:var(--green);text-shadow:0 0 6px #ffffff59;background:0 0;border:none;outline:none;flex:1;font-size:13.5px}.prompt-input::placeholder{color:#0f8a3c99}.footer{z-index:2;letter-spacing:.12em;color:var(--green-dim);border-top:1px solid rgba(var(--glow), .15);background:#000803cc;justify-content:space-between;padding:8px 18px;font-size:11px;display:flex;position:fixed;bottom:0;left:0;right:0}@media (width<=768px){.app{gap:4px;padding:8px 4px 4px}.terminal{border-radius:6px;width:100%;height:calc(100dvh - 46px)}.term-header{flex-wrap:wrap;gap:6px;padding:8px 10px}.term-title{display:none}.term-links{flex-wrap:wrap;justify-content:flex-end;gap:5px;margin-left:auto}.term-links .nav-link{padding:4px 7px;font-size:10.5px}.term-body{padding:10px 10px 14px;font-size:12px}.line.banner{font-size:7.5px}.prompt-input{font-size:16px}.footer{letter-spacing:.06em;padding:6px 10px;font-size:8.5px}.intro-nav{gap:6px;top:10px;right:10px}.intro-nav .nav-link{padding:5px 8px;font-size:11px}.intro-corners .c{width:22px;height:22px}.glitch{letter-spacing:.1em;margin-top:-20px}.intro-sub{letter-spacing:.18em;font-size:10px}.boot-log{font-size:11px}.enter-prompt{text-align:center;padding:0 12px;font-size:12.5px}.how-panel{padding:14px}.how-list{margin-left:14px;font-size:12px}.how-head{font-size:13px}.trenches{width:100%;height:calc(100dvh - 46px);padding:10px}.tr-title{font-size:14px}.tr-sub{font-size:9.5px}.tr-col-head{padding:8px 10px;font-size:12.5px}.tr-main{gap:6px;font-size:12.5px}.tr-img{width:24px;height:24px}.tr-age{min-width:28px;font-size:11px}.tr-mc{min-width:48px;font-size:11.5px}.tr-buy{padding:3px 7px;font-size:10px}}@media (width<=420px){.line.banner{font-size:6px}.term-body{font-size:11px}.intro-nav .nav-link{letter-spacing:.04em;padding:4px 6px;font-size:10px}}.intro{z-index:2;cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;height:100%;animation:1.2s ease-out intro-in;display:flex;position:relative}@keyframes intro-in{0%{opacity:0;filter:brightness(3)blur(6px)}to{opacity:1;filter:none}}.intro-core{flex-direction:column;align-items:center;gap:4px;display:flex}.core3d{filter:drop-shadow(0 0 24px rgba(var(--glow), .35))}.model-stack{place-items:center;display:grid;position:relative}.model-stack .stack-layer{opacity:1;grid-area:1/1;transition:opacity .9s}.model-stack .stack-layer.faded{opacity:0}.devil-model{filter:drop-shadow(0 0 28px rgba(var(--glow), .45))}.glitch{letter-spacing:.18em;color:var(--green);text-shadow:0 0 18px rgba(var(--glow), .8);margin-top:-34px;font-size:clamp(26px,6vw,52px);font-weight:400;position:relative}.glitch:before,.glitch:after{content:attr(data-text);position:absolute;inset:0;overflow:hidden}.glitch:before{color:#4df0ff;opacity:.75;animation:2.4s step-end infinite glitch-a}.glitch:after{color:#ff4d6d;opacity:.75;animation:2.9s step-end infinite glitch-b}@keyframes glitch-a{0%,86%,to{clip-path:inset(0 0 100%);transform:none}87%{clip-path:inset(12% 0 60%);transform:translate(-3px,2px)}90%{clip-path:inset(55% 0 18%);transform:translate(3px,-1px)}93%{clip-path:inset(30% 0 42%);transform:translate(-2px,1px)}96%{clip-path:inset(0 0 100%);transform:none}}@keyframes glitch-b{0%,80%,to{clip-path:inset(0 0 100%);transform:none}81%{clip-path:inset(65% 0 8%);transform:translate(3px,-2px)}85%{clip-path:inset(8% 0 70%);transform:translate(-3px,2px)}89%{clip-path:inset(40% 0 35%);transform:translate(2px,1px)}92%{clip-path:inset(0 0 100%);transform:none}}.intro-sub{color:var(--green-dim);letter-spacing:.28em;text-transform:uppercase;font-size:13px}.intro-hud{flex-direction:column;align-items:center;gap:14px;min-height:0;max-height:38vh;display:flex;overflow:hidden}.boot-log{width:min(480px,88vw);color:var(--green-dim);text-shadow:0 0 6px rgba(var(--glow), .25);flex-direction:column;justify-content:flex-end;max-height:22vh;font-size:12.5px;line-height:1.55;display:flex;overflow:hidden}.boot-line{white-space:pre;animation:.25s steps(24,end) boot-line-in;overflow:hidden}@keyframes boot-line-in{0%{max-width:0}to{max-width:100%}}.intro-progress{color:var(--green);text-shadow:0 0 8px rgba(var(--glow), .6);align-items:center;gap:12px;font-size:14px;display:flex}.enter-prompt{letter-spacing:.14em;color:var(--green-soft);text-shadow:0 0 14px rgba(var(--glow), .9);font-size:15px;animation:1.1s infinite pulse}.intro-corners .c{border:1px solid rgba(var(--glow), .5);z-index:2;width:34px;height:34px;position:fixed}.intro-corners .tl{border-bottom:none;border-right:none;top:18px;left:18px}.intro-corners .tr{border-bottom:none;border-left:none;top:18px;right:18px}.intro-corners .bl{border-top:none;border-right:none;bottom:18px;left:18px}.intro-corners .br{border-top:none;border-left:none;bottom:18px;right:18px}.nav-link{border:1px solid rgba(var(--glow), .55);font-family:var(--font);letter-spacing:.1em;color:var(--green);text-shadow:0 0 6px rgba(var(--glow), .6);box-shadow:0 0 10px rgba(var(--glow), .25), inset 0 0 8px rgba(var(--glow), .08);cursor:pointer;white-space:nowrap;background:#001408d9;border-radius:4px;padding:6px 12px;font-size:14px;font-weight:700;text-decoration:none;transition:all .15s}.nav-link:hover{background:rgba(var(--glow), .18);border-color:var(--green);color:var(--green-soft);text-shadow:0 0 10px rgba(var(--glow), .9);box-shadow:0 0 18px rgba(var(--glow), .5), inset 0 0 12px rgba(var(--glow), .15)}.intro-nav{z-index:6;gap:12px;display:flex;position:fixed;top:16px;right:20px}.term-links{align-items:center;gap:8px;margin-left:auto;display:flex}.term-links .nav-link{padding:4px 9px;font-size:12px}.how-overlay{z-index:7;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#000502cc;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.how-panel{border:1px solid rgba(var(--glow), .4);width:min(680px,92vw);max-height:84vh;box-shadow:0 0 40px rgba(var(--glow), .2);background:#000c05f7;border-radius:8px;padding:18px 22px;animation:.35s cubic-bezier(.23,1,.32,1) crt-power-on;overflow-y:auto}.how-head{color:var(--green-soft);letter-spacing:.1em;border-bottom:1px solid rgba(var(--glow), .25);justify-content:space-between;align-items:center;padding-bottom:10px;font-size:15px;display:flex}.how-list{color:var(--green);flex-direction:column;gap:10px;margin:14px 0 0 18px;font-size:13px;line-height:1.55;display:flex}.how-list b{color:var(--green-soft);letter-spacing:.06em}.how-foot{color:var(--amber);letter-spacing:.05em;margin-top:16px;font-size:12px}.sweep-bar{background:rgba(var(--glow), .1);border-radius:2px;height:3px;margin:4px 0 8px;position:relative;overflow:hidden}.sweep-fill{background:linear-gradient(90deg, transparent, var(--green), transparent);width:30%;box-shadow:0 0 12px rgba(var(--glow), .8);animation:1.1s ease-in-out infinite sweep;position:absolute;top:0;bottom:0}@keyframes sweep{0%{left:-30%}to{left:100%}}.trenches{z-index:2;border:1px solid rgba(var(--glow), .35);width:97vw;height:88dvh;box-shadow:0 0 32px rgba(var(--glow), .18), inset 0 0 48px #00280c80;background:#000a04eb;border-radius:8px;flex-direction:column;padding:14px 16px;animation:.4s cubic-bezier(.23,1,.32,1) crt-power-on;display:flex;position:relative}.tr-header{border-bottom:1px solid rgba(var(--glow), .25);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:10px;display:flex}.tr-title{color:var(--green-soft);letter-spacing:.12em;text-shadow:0 0 8px rgba(var(--glow), .6);font-size:18px}.tr-sub{color:var(--green-dim);letter-spacing:.08em;font-size:11px}.tr-error{color:var(--red);padding:18px 4px;font-size:13px}.tr-loading{color:var(--green-dim);padding:18px 4px;font-size:13px;animation:.9s infinite pulse}.tr-columns{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-height:0;margin-top:12px;display:grid}.tr-col{border:1px solid rgba(var(--glow), .18);background:#00100680;border-radius:6px;flex-direction:column;min-width:0;min-height:0;display:flex}.tr-col-head{border-bottom:1px solid rgba(var(--glow), .18);color:var(--green);letter-spacing:.14em;text-shadow:0 0 8px rgba(var(--glow), .5);justify-content:space-between;align-items:baseline;padding:10px 12px;font-size:14.5px;display:flex}.tr-col-hint{color:var(--green-dim);letter-spacing:.06em;font-size:10px}.tr-col-body{flex:1;padding:6px;overflow-y:auto}.tr-col-body::-webkit-scrollbar{width:6px}.tr-col-body::-webkit-scrollbar-thumb{background:rgba(var(--glow), .25);border-radius:3px}.tr-empty{color:var(--green-dim);padding:10px 6px;font-size:12px}.tr-row{cursor:pointer;border-radius:4px;padding:7px 8px;transition:background .15s,box-shadow .15s}.tr-row:hover{background:rgba(var(--glow), .08);box-shadow:inset 0 0 12px rgba(var(--glow), .08)}.tr-row-new{animation:.9s ease-out both row-arrive}@keyframes row-arrive{0%{opacity:0;background:rgba(var(--glow), .35);transform:translateY(-8px)}35%{opacity:1;background:rgba(var(--glow), .22);transform:none}to{background:0 0}}.tr-main{align-items:center;gap:10px;font-size:14px;display:flex}.tr-sym{color:var(--green);white-space:nowrap;text-shadow:0 0 6px rgba(var(--glow), .4);flex:1;align-items:center;gap:6px;display:flex;overflow:hidden}.tr-img{object-fit:cover;border:1px solid rgba(var(--glow), .3);background:rgba(var(--glow), .06);border-radius:4px;flex-shrink:0;width:30px;height:30px}.tr-img-empty{color:var(--green-dim);justify-content:center;align-items:center;font-size:11px;display:inline-flex}.tr-badge{letter-spacing:.06em;border-radius:3px;flex-shrink:0;padding:1px 4px;font-size:10px}.tr-badge-bad{color:var(--red);text-shadow:0 0 6px #ff556680;border:1px solid #ff55668c}.tr-badge-ok{color:var(--green);border:1px solid rgba(var(--glow), .45)}.tr-badge-warn{color:var(--amber);border:1px solid #ffd05673}.tr-age{color:var(--green-dim);min-width:34px;font-size:12.5px}.tr-mc{color:var(--green-soft);text-align:right;min-width:60px;font-size:13px}.tr-buy{border:1px solid rgba(var(--glow), .5);color:var(--green);font-family:var(--font);letter-spacing:.1em;cursor:pointer;background:0 0;border-radius:3px;padding:4px 10px;font-size:11.5px;transition:all .15s}.tr-buy:hover{background:rgba(var(--glow), .2);box-shadow:0 0 10px rgba(var(--glow), .4)}.tr-progress{background:rgba(var(--glow), .12);border-radius:3px;height:5px;margin-top:5px;position:relative;overflow:hidden}.tr-progress-fill{background:linear-gradient(90deg, rgba(var(--glow), .5), var(--green));height:100%;box-shadow:0 0 8px rgba(var(--glow), .6)}.tr-progress-label{color:#01140a;mix-blend-mode:normal;font-size:8px;display:none;position:absolute;top:-1px;right:3px}.tr-footer{border-top:1px solid rgba(var(--glow), .18);color:var(--amber);letter-spacing:.06em;text-align:center;padding-top:10px;font-size:11px}@media (width<=900px){.tr-columns{grid-template-columns:minmax(0,1fr);overflow-y:auto}.tr-col{min-height:220px}.tr-col-hint{display:none}}.flash{z-index:10;pointer-events:none;background:radial-gradient(circle,#eafff2 0%,#2f7 35%,#0000 75%);animation:.9s ease-out forwards flash-out;position:fixed;inset:0}@keyframes flash-out{0%{opacity:0}25%{opacity:1}to{opacity:0}}.power-on{display:contents}.power-on .terminal{transform-origin:50%;animation:.55s cubic-bezier(.23,1,.32,1) crt-power-on,8s .6s infinite crt-flicker}@keyframes crt-power-on{0%{filter:brightness(6);transform:scaleY(.004)scaleX(.6)}55%{filter:brightness(4);transform:scaleY(.006)scaleX(1.02)}75%{filter:brightness(1.6);transform:scaleY(1.04)scaleX(1)}to{filter:none;transform:scaleY(1)scaleX(1)}}
