:root{--amber: #ffb000;--amber-dim: #b07c10;--bg: #0a0705;--green: #33ff33;--red: #b00000;--hot: #ff3a30}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}body{background:#000;color:var(--amber);font-family:Berkeley Mono,IBM Plex Mono,ui-monospace,Cascadia Mono,JetBrains Mono,Menlo,monospace;font-size:clamp(12px,1.35vw,16px);line-height:1.4;-webkit-font-smoothing:none;overflow:hidden;user-select:none;-webkit-user-select:none}.bezel{position:fixed;top:0;right:0;bottom:0;left:0;height:100dvh;background:#000;padding:14px clamp(64px,11vw,240px);overflow:hidden;display:flex}.crt{position:relative;height:100%;width:100%;max-width:1400px;margin:0 auto;background:var(--bg);padding:max(12px,env(safe-area-inset-top)) 26px max(12px,env(safe-area-inset-bottom));display:flex;flex-direction:column;overflow:visible;border:1px solid #3a2a12;border-radius:6px;box-shadow:0 0 0 3px #0a0705,0 0 30px #000000b3}.bezel-logo{position:absolute;top:18px;left:6px;width:clamp(58px,10vw,210px);height:clamp(58px,10vw,210px);image-rendering:pixelated;opacity:.8;filter:drop-shadow(0 0 6px rgba(255,176,0,.4));z-index:12;pointer-events:none}.bezel-cal{position:absolute;top:22px;right:6px;width:clamp(56px,9.5vw,195px);transform:rotate(3.5deg);background:#0c0906;border:2px solid var(--amber-dim);text-align:center;z-index:12;pointer-events:none;box-shadow:3px 4px 10px #000000b3}.cal-rings{font-size:clamp(.6em,1.4vw,1.1em);color:var(--amber-dim);letter-spacing:4px;border-bottom:1px solid var(--amber-dim);padding-top:2px}.cal-year{font-size:clamp(1.3em,4vw,3.4em);color:var(--amber);padding:6px 0 8px;letter-spacing:2px}.bezel-note{position:absolute;right:6px;top:44%;width:clamp(84px,10.5vw,200px);aspect-ratio:1;background:linear-gradient(180deg,#0000 25%,#fff4c824 30%,#0000 46%),linear-gradient(160deg,var(--amber) 82%,#d99500 96%,#a87300 100%);transform:rotate(-6deg);border-bottom-right-radius:50% 10%;box-shadow:2px 3px 5px #0009;z-index:12;pointer-events:none}.bezel-note.straight{transform:none}.bezel-note img{width:100%;height:100%;display:block}.bezel-note:after{content:"";position:absolute;right:8%;bottom:-2px;width:36%;height:8px;background:#00000073;filter:blur(3px);transform:skew(25deg);z-index:-1}.crt:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(to bottom,#0000 0,#0000 2px,#00000038 2px,#00000038 3px),radial-gradient(ellipse at center,#0000 58%,#00000080);z-index:10}.crt:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;box-shadow:inset 0 0 90px #ffb00012;z-index:9}.screen{flex:1;display:flex;flex-direction:column;overflow:visible;white-space:pre-wrap;min-height:0}.screen.scrolly{overflow-y:auto}.dim{color:var(--amber-dim)}.green{color:var(--green)}.redtext{color:var(--hot)}.glow{text-shadow:0 0 6px rgba(255,176,0,.55)}.footnote{font-size:.8em;margin-top:6px}pre{font-family:inherit;white-space:pre-wrap}.crt.red{background:var(--red);color:#000;animation:strobe .5s steps(1) infinite}.crt.red .dim{color:#2a0000}.crt.red .glow{text-shadow:none}.crt.red:before{box-shadow:inset 0 0 90px #00000059}@keyframes strobe{0%{background:var(--red)}50%{background:#8c0000}}.blink{animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.crt.red{animation:none;background:var(--red)}.blink{animation:none}}.hdr{display:flex;justify-content:space-between;letter-spacing:.05em;border-bottom:1px solid var(--amber-dim);padding-bottom:4px;margin-bottom:10px}.cols{display:flex;gap:20px;flex:1;min-height:0}.col{flex:1;min-width:0;overflow:visible}.col.wide{flex:1.6}.coltitle{color:var(--amber);border-bottom:1px solid var(--amber-dim);margin-bottom:6px;letter-spacing:.15em}.panelhdr{display:flex;align-items:center;gap:12px;color:var(--amber);letter-spacing:.25em;margin-top:8px}.panelhdr:before,.panelhdr:after{content:"";height:1px;background:var(--amber-dim);flex:1}.actionbar{display:flex;gap:16px;align-items:stretch;padding-top:6px}.agroup{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.agrouptitle{display:flex;align-items:center;gap:8px;color:var(--amber-dim);font-size:.72em;letter-spacing:.25em;margin-bottom:2px;white-space:nowrap}.agrouptitle:before,.agrouptitle:after{content:"";height:1px;background:var(--amber-dim);opacity:.6;flex:1}button.act{display:flex;justify-content:space-between;align-items:baseline;gap:6px;border-color:transparent;padding:2px 8px;font-size:.95em;text-align:left;white-space:nowrap}button.act span:first-child{overflow:hidden;text-overflow:ellipsis}button.act .cost{flex:0 0 auto}button.act:hover:not(:disabled){border-color:var(--amber)}button.act:disabled{border-color:transparent}button.act .cost{color:var(--amber-dim)}button.act:disabled .cost{color:#59400d}button.act:active .cost{color:var(--bg)}.endcell{display:flex;align-items:stretch}button.act .keyhint{color:var(--amber-dim);opacity:0}.agroup.armed button.act .keyhint{opacity:1}button.act:disabled .keyhint{color:#59400d}.agrouptitle u{text-decoration:underline;text-underline-offset:2px}.agrouptitle.armed{color:var(--amber)}.agrouptitle.armed:before,.agrouptitle.armed:after{background:var(--amber);opacity:1}button{font:inherit;background:transparent;color:var(--amber);border:1px solid var(--amber);padding:8px 12px;text-align:center;letter-spacing:.06em;cursor:pointer}button:active{background:var(--amber);color:var(--bg)}button:disabled{color:#59400d;border-color:#59400d;cursor:default}button.sel{background:var(--amber);color:var(--bg)}button.endyear{border-width:2px;font-weight:700;padding:6px 14px;font-size:.9em;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}button.endyear .tri{font-size:3.2em;line-height:1}.factiongrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.fcard{text-align:left;white-space:pre-wrap;font-size:.85em;padding:8px 10px}.optrow{display:flex;flex-direction:column;gap:8px;margin:8px 0}.optrow.row{flex-direction:row}.optrow.row button{flex:1}.banner{text-align:center;border-top:1px solid var(--amber-dim);border-bottom:1px solid var(--amber-dim);padding:2px 0;margin-bottom:12px;letter-spacing:.25em}.warning-grid{display:flex;gap:30px;align-items:center;flex:1}.warning-grid>pre{flex:1.4}.bigclock{flex:1;font-size:4.2em;text-align:center;letter-spacing:.1em}.trackline{text-align:center;font-size:1.15em;letter-spacing:.06em;margin-top:6px}.heroblock{flex:1;text-align:center}.herolabel{font-size:.85em;letter-spacing:.3em;opacity:.75}.heronum{font-size:4.2em;letter-spacing:.08em;line-height:1.15}.repolls{font-size:.9em;letter-spacing:.1em;opacity:.75}.warnacts{align-items:stretch}.warnacts .wact{flex:1;display:flex;flex-direction:column;gap:5px}.warnacts .wact button{width:100%;padding:16px 12px}.warnacts button.danger{border-width:3px;font-weight:700}.wcap{font-size:.72em;text-align:center;letter-spacing:.05em;opacity:.6}.wcap .oknum{color:var(--green)}.wcap .badnum{font-weight:700;text-decoration:underline}.crt.red .wcap .oknum{color:#030}.cmdvoice{text-align:center;margin-top:10px;font-size:1.05em}.replayimg{display:block;margin:10px auto;max-width:min(720px,92%);max-height:62vh;border:1px solid var(--amber-dim)}.actions{margin-top:auto;display:flex;flex-direction:column;gap:10px;padding-top:14px}.actions.row{flex-direction:row}.actions.row button{flex:1;padding:16px 12px}.actions.narrow{max-width:480px;width:100%;align-self:center}.crt.red button{color:#000;border-color:#000;background:transparent}.crt.red button:active{background:#000;color:var(--red)}.crt.red button:disabled{color:#2a0000;border-color:#2a0000}.seal{text-align:center;margin:18px 0}.art{display:block;image-rendering:pixelated;filter:drop-shadow(0 0 6px rgba(255,176,0,.4))}.artboot{width:min(360px,60%);margin:3vh auto}.artseal{width:120px;height:120px;flex:0 0 120px}.artend{width:min(520px,90%);margin:10px auto}.artunsc{width:min(560px,92%);margin:8px auto}.briefhdr{display:flex;gap:16px;align-items:flex-start}.briefhdr>div{flex:1;min-width:0}.rule{border-top:1px solid var(--amber-dim);margin:14px 0}.screen.scenario{justify-content:center;align-items:center;text-align:center}.scenariotitle{font-size:1.35em;margin:3vh 0;text-align:center;white-space:pre-wrap}.scenariocause{max-width:660px;text-align:center;letter-spacing:.03em}.mapwrap{width:100%}.worldmap{display:block;width:100%;max-height:31vh;margin:0 auto}.worldmap .coast{fill:none;stroke:var(--amber-dim);stroke-width:.6;filter:drop-shadow(0 0 1.2px rgba(255,176,0,.6))}.worldmap .blip{cursor:pointer}.worldmap .hit{fill:transparent;pointer-events:all}.worldmap .dot{fill:var(--amber);filter:drop-shadow(0 0 1px rgba(255,176,0,.8))}.worldmap .blip.ai .dot{fill:var(--amber);filter:drop-shadow(0 0 2px rgba(255,176,0,.95))}.worldmap .blip.held .dot{fill:var(--hot);filter:drop-shadow(0 0 4px rgba(255,58,48,.9));animation:blink 1s steps(1) infinite}.worldmap .blip.held .bliplabel{fill:var(--hot)}.worldmap .blip.held .focusring{stroke:var(--hot)}.worldmap .blip.unseized .dot{fill:var(--green);filter:drop-shadow(0 0 3px rgba(51,255,51,.8))}.worldmap .blip.unseized .bliplabel{fill:var(--green)}.worldmap .bliplabel{fill:var(--amber);font-size:6px;font-family:inherit;letter-spacing:.05em}.worldmap .notch{fill:var(--bg);stroke:none}.worldmap .zebrabar{fill:var(--amber-dim)}.worldmap .zebra{opacity:.5;pointer-events:none}.worldmap .blip.minor .dot{fill:var(--amber);filter:drop-shadow(0 0 2px rgba(255,176,0,.9))}.worldmap .blip.minor .bliplabel{font-size:5px}.worldmap .focusring{fill:none;stroke:var(--amber);stroke-width:.6}.mapdetail{border-top:1px solid var(--amber-dim);border-bottom:1px solid var(--amber-dim);padding:4px 0;margin-bottom:8px;min-height:1.8em}.mapdetail .detailclip{overflow:hidden;white-space:nowrap;font-size:.95em;cursor:pointer}.mapdetail .detailline{display:inline-block;white-space:nowrap;will-change:transform}[data-tip]{position:relative}[data-tip]:hover:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:0;background:var(--amber);color:var(--bg);padding:7px 10px;white-space:pre-line;width:max-content;max-width:340px;z-index:30;font-size:.85em;letter-spacing:.02em;text-align:left;pointer-events:none;box-shadow:0 0 10px #ffb00066}.actionbar [data-tip]:hover:after{bottom:calc(100% + 4px);left:50%;right:auto;transform:translate(-50%);max-width:min(300px,70vw)}button:disabled[data-tip]:hover:after{background:var(--amber-dim);color:var(--bg);box-shadow:none;opacity:.88}.stat{display:flex;justify-content:space-between;gap:8px}.stat>span{white-space:nowrap}.stat>span:first-child{color:var(--amber-dim)}.stat[data-tip]{cursor:help}.stat>span:first-child:hover{color:var(--amber)}.col.logcol{overflow:hidden;display:flex;flex-direction:column}.watchlog{overflow-y:auto;flex:1;min-height:0}.logline{color:var(--amber-dim)}.logline.now{color:var(--amber)}.logline.notable{color:var(--amber);text-shadow:0 0 5px rgba(255,176,0,.45)}.logline.attack{background:var(--amber);color:var(--bg);padding:0 3px;margin:1px 0}.namebtn{flex:1;padding:6px 4px;font-size:.85em}.newswire{letter-spacing:.12em;font-size:.8em;border-top:1px solid var(--amber-dim);border-bottom:1px solid var(--amber-dim);padding:3px 0}.statblock{overflow-x:auto;flex:0 0 auto}.statblock .line{white-space:nowrap}.statgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px 18px;flex:0 0 auto}.statgrid .slabel{color:var(--amber-dim);font-size:.68em;letter-spacing:.2em}.statgrid .sval{font-size:1.05em}.seedfield{font:inherit;background:transparent;color:var(--amber);border:1px solid var(--amber-dim);padding:4px 8px;letter-spacing:.1em;text-transform:uppercase;width:12em}.seedfield:focus{outline:none;border-color:var(--amber)}.briefbottom{margin-top:auto}.briefbottom .dim{margin:6px 0 4px;letter-spacing:.12em}.speedgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.seedgrid{display:grid;grid-template-columns:2fr 1fr;gap:8px;margin-top:8px}.speedgrid button,.seedgrid button,.seedgrid .seedfield{width:100%;text-align:center}.seedwrap{display:block}.reportbtn{width:100%;margin-top:8px;border-width:2px;font-weight:700}.cols.endgrid{flex:none;min-height:0;align-items:start}.endgrid .col{display:flex;flex-direction:column;min-width:0}table.debrief.stretch{width:100%;table-layout:fixed}table.debrief{border-collapse:collapse;margin:8px 0}table.debrief td,table.debrief th{border:1px solid var(--amber-dim);padding:3px 10px;text-align:left;font-size:.85em;overflow-wrap:anywhere;word-break:break-word;white-space:normal;vertical-align:top}table.debrief.record col.c-year{width:12%}table.debrief.record col.c-shown,table.debrief.record col.c-true{width:11%}table.debrief.record col.c-nuke{width:34%}table.debrief.record col.c-action{width:32%}.assigned-reading{margin-top:12px;clear:both}
