#panel-civil>label{display:flex;flex-direction:column;align-items:stretch;gap:9px;margin:22px 0 24px;padding-top:16px;border-top:1px solid var(--line);line-height:1.6}
#panel-civil>label select{display:block;width:100%;margin:0;padding:10px}
.silo-directory{border-top:1px solid var(--line);padding-top:12px;margin-top:10px;flex-shrink:0}.silo-directory h2{margin-bottom:7px}.silo-directory button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:7px 2px;font-size:11px;border:0;background:#000}.silo-directory small{font-size:9px}
.silo-marker{cursor:pointer;outline:none}.silo-marker:focus-visible circle:not([fill="transparent"]){stroke-width:2}.silo-marker text{font:7px Consolas,monospace;fill:currentColor;paint-order:stroke;stroke:#000;stroke-width:2px}.silo-marker:hover{color:var(--g)!important}
#silo-dialog{background:#000;color:var(--g);border:1px solid var(--g);padding:24px;width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;line-height:1.7}#silo-dialog::backdrop{background:#000c}#silo-dialog select{width:100%;margin:10px 0}#silo-dialog h3{font-size:19px;margin:12px 0}#silo-dialog small{display:block;margin:10px 0}.nuclear-arm{width:100%;color:#ff7777;border-color:#ff5555;padding:14px}
#silo-dialog [hidden],#nuclear-launch-screen [hidden]{display:none!important}
.ruined-emblem{font:60px/1.3 serif;text-align:center;margin:20px 0;color:var(--amber)}.recovery-status{color:var(--amber)}.city-ruined .city-name{text-decoration:line-through;fill:var(--amber)}
body.nuclear-alert{--g:#ff5555;--dim:#c75c5c;--line:#6f2525}
#nuclear-launch-screen{position:fixed;inset:auto 16px 16px auto;margin:0;width:min(290px,calc(100vw - 32px));height:auto;max-height:45dvh;padding:0;color:#ff7777;border:0;overflow:auto;z-index:1000;scrollbar-width:thin;scrollbar-color:#a55 #090000}
#nuclear-launch-screen[hidden]{display:none!important}
.nuclear-countdown-panel{padding:12px 14px;text-align:center;background:#090000f5;border:1px solid #ff5555;box-shadow:0 4px 20px #0009}
.nuclear-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.nuclear-countdown-panel h2{font-size:10px;letter-spacing:1px;line-height:1.5;margin:0}.nuclear-panel-head button{padding:2px 7px;font-size:18px;line-height:1.2}
#nuclear-clock{font:38px/1.1 Consolas,monospace;color:#ff5555;margin:5px 0}.nuclear-countdown-panel p{font-size:11px;line-height:1.6;margin:7px 0}#nuclear-impact-report:empty{display:none}#nuclear-launch-screen button{border-color:#ff5555;color:#ff7777;background:#100000;font-size:11px}
#nuclear-launch-screen.minimised #nuclear-launch-route,#nuclear-launch-screen.minimised #nuclear-impact-report{display:none}#nuclear-launch-screen.minimised #nuclear-clock{font-size:25px}
.nuclear-trajectory{fill:none;stroke:#ff5555;stroke-width:1.5;stroke-dasharray:5 4;vector-effect:non-scaling-stroke}.nuclear-missile{fill:#fff;stroke:#ff5555;stroke-width:1}.missile-flame{fill:#ffac55}.nuclear-blast-ring{fill:#ff555522;stroke:#ff5555;stroke-width:2}.nuclear-blast-core{fill:#fff6bf;stroke:#ff5555;stroke-width:2}
@media(min-width:901px){.layout>aside{grid-template-rows:auto auto minmax(70px,1fr) auto auto auto;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--dim) #000}}

#nuclear-impact-flash{position:fixed;inset:0;pointer-events:none;z-index:2147483646;opacity:0;background:#fff}
#nuclear-impact-flash.active{animation:nuclear-flash 1.5s ease-out both}@keyframes nuclear-flash{0%{opacity:.95}20%{opacity:.45;background:#ffbb88}100%{opacity:0;background:#900}}
#nuclear-impact-flash.nuclear-gentle{animation:none!important;opacity:0!important}
#nuclear-auth-dialog{width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;background:#000;color:var(--g);padding:16px;border:1px solid var(--g);line-height:1.6}
#nuclear-auth-dialog::backdrop{background:#000d}#nuclear-auth-dialog h3{font-size:16px;margin:6px 0}#nuclear-auth-route{font-size:12px;margin:6px 0}
#nuclear-code-display{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:10px 0}#nuclear-code-display span{display:grid;place-items:center;min-height:38px;border:1px solid var(--line);font:24px Consolas,monospace;background:#000}
.nuclear-code-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:8px}#nuclear-code-input{width:100%;min-width:0;letter-spacing:8px;font:20px Consolas,monospace;padding:7px}#nuclear-code-verify{font-size:11px}
#nuclear-auth-status{min-height:3.2em;font-size:11px;line-height:1.5;margin:8px 0}.nuclear-key-area{display:grid;grid-template-columns:58px minmax(0,220px);align-items:center;justify-content:center;gap:14px;text-align:left;border-top:1px solid var(--line);padding:10px 0}.nuclear-key-area small{display:block;width:100%;min-height:3em;line-height:1.5;font-size:10px;margin:0}
#nuclear-key{width:58px;height:58px;min-width:58px;flex:0 0 58px;position:relative;border-radius:50%;padding:0;background:#000;color:var(--g);border:0;touch-action:manipulation}#nuclear-key svg{position:static;inset:auto;display:block;width:100%;height:100%;overflow:visible}#nuclear-key .lock-plate{fill:#080b09;stroke:currentColor;stroke-width:1.5}#nuclear-key .lock-rim{fill:none;stroke:currentColor;opacity:.35}#nuclear-key .lock-screws{fill:#000;stroke:currentColor;stroke-width:1;opacity:.65}#nuclear-key .lock-stops{fill:none;stroke:currentColor;stroke-width:2}#nuclear-key .lock-cylinder{transform-origin:50px 50px;transition:transform .72s cubic-bezier(.22,.65,.25,1)}#nuclear-key .lock-cylinder circle{fill:currentColor;fill-opacity:.2;stroke:currentColor;stroke-width:1.5}#nuclear-key .lock-keyhole{fill:#000;stroke:currentColor;stroke-width:1.4}#nuclear-key .lock-bevel{fill:none;stroke:currentColor;opacity:.45}#nuclear-key .lock-pointer{fill:currentColor}#nuclear-key.turned .lock-cylinder{transform:rotate(90deg)}#nuclear-key:disabled{opacity:.45}#nuclear-key.turned:disabled{opacity:1}#nuclear-key:focus-visible{outline:1px dashed var(--g);outline-offset:5px}
@media(prefers-reduced-motion:reduce){#nuclear-impact-flash.active{animation:none;opacity:0}#nuclear-key .lock-cylinder{transition:none}}
@media(max-height:650px){#nuclear-auth-dialog{padding:16px}#nuclear-code-display{margin:12px 0}#nuclear-code-display span{min-height:34px}.nuclear-key-area{padding:10px 0}#nuclear-key{width:50px;height:50px;min-width:50px;flex-basis:50px}#nuclear-launch-screen{max-height:40dvh}}

@media(max-height:500px){#nuclear-auth-dialog{padding:10px 14px;line-height:1.35}#nuclear-auth-dialog h3{font-size:14px;margin:4px 0}#nuclear-auth-dialog .eyebrow{font-size:9px}#nuclear-code-display{margin:6px 0}#nuclear-code-display span{min-height:28px;font-size:20px}#nuclear-code-form>label{font-size:11px}.nuclear-code-entry{margin-top:4px;gap:6px}#nuclear-code-input{padding:5px;font-size:18px}#nuclear-code-verify,#nuclear-auth-cancel{padding:6px 9px;font-size:10px}#nuclear-auth-status{min-height:2.8em;margin:5px 0;font-size:10px}.nuclear-key-area{padding:6px 0}#nuclear-key{width:44px;height:44px;min-width:44px;flex-basis:44px}}

@media(max-height:650px){.nuclear-key-area{grid-template-columns:50px minmax(0,220px)}}
@media(max-height:500px){.nuclear-key-area{grid-template-columns:44px minmax(0,220px)}}
