:root{color-scheme:dark;--bg:#060c15;--panel:#0a1421;--border:#223342;--hair:#1b2b3b;--muted:#728ca0;--text:#dcecf2;--cyan:#69d7e3;--cyan-dim:#1c5865;--red:#fa806f;--amber:#e3b875;--green:#8be8be}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);font-family:Arial,'Malgun Gothic','Apple SD Gothic Neo',sans-serif;color:var(--text)}button,input,select{font:inherit}button{cursor:pointer;transition:background .16s,border-color .16s,color .16s}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #e2d39c;outline-offset:2px}button:disabled{opacity:.36;cursor:not-allowed}button:not(:disabled):active{transform:translateY(1px)}.shell{min-height:100vh;display:flex;flex-direction:column;padding:0 15px;max-width:1920px;margin:auto;background:radial-gradient(circle at 50% 0%,#0d2130 0%,#070e18 38%,#050a12 80%)}.topbar{height:66px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #1b3543;gap:15px;flex-shrink:0}.brand{display:flex;align-items:center;gap:13px}.brand-mark{display:block;width:35px;height:35px;border:1px solid var(--cyan);transform:rotate(45deg);position:relative;background:#16313b;box-shadow:0 0 0 4px #091d28}.brand-point{position:absolute;width:6px;height:6px;background:var(--cyan);left:13px;top:13px}.brand-ring{position:absolute;border:1px solid rgba(105,215,227,.5);inset:5px;border-radius:50%}.brand-line{font-size:20px;font-weight:900;letter-spacing:4px;color:#e9f7ff}.brand-line span{font-size:10px;letter-spacing:2px;color:var(--cyan)}.brand-sub{font-size:9px;letter-spacing:2px;color:var(--muted);margin-top:3px}.version{color:var(--amber)}.top-status{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:1.1px;color:#a7bcc8}.top-separator{color:#315365}.pulse-dot{width:7px;height:7px;background:var(--green);border-radius:50%;box-shadow:0 0 11px #8be8be}.top-actions{display:flex;align-items:center;gap:9px}.clock{color:#b4d6e2;font-size:13px;font-weight:700;letter-spacing:1px;border-right:1px solid var(--border);padding-right:14px;margin-right:5px}.icon-btn{height:33px;padding:0 12px;border:1px solid #2d4453;border-radius:3px;background:#0a1b28;color:#cbdce2;font-size:11px;font-weight:700;letter-spacing:1px}.icon-btn:hover{background:#1b3645}.metrics{display:grid;grid-template-columns:1.18fr .85fr .85fr .85fr 1.25fr;gap:1px;background:#1d3543;margin:12px 0;border:1px solid #1d3543;flex-shrink:0}.metric{padding:9px 14px 11px;min-width:0;background:#0b1926;position:relative;min-height:64px}.metric-label{display:block;font-size:9px;letter-spacing:1.3px;color:#668c9c;margin-bottom:7px}.metric strong{font-size:20px;font-weight:800;white-space:nowrap;letter-spacing:.4px}.metric:first-child strong{font-size:16px;color:var(--cyan)}.metric small{font-size:10px;color:#688a99;font-weight:400}.protection strong{color:var(--green)}.health-track{height:2px;position:absolute;bottom:0;left:0;right:0;background:#1b393c}.health-track i{display:block;height:100%;background:var(--green);width:100%;transition:width .4s}.console-layout{display:grid;grid-template-columns:minmax(268px,296px) minmax(380px,1fr) minmax(265px,290px);gap:12px;flex:1;min-height:0}.panel,.map-panel{border:1px solid var(--border);background:linear-gradient(160deg,#101e2b,#09141e 55%);min-width:0;overflow:hidden}.panel{display:flex;flex-direction:column;min-height:670px}.panel-header{padding:16px 17px 13px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--hair)}.eyebrow{font-size:9px;font-weight:800;letter-spacing:1.7px;color:#668d9c}.panel-header h2,.map-title h2{margin:6px 0 0;font-size:19px;font-weight:800;letter-spacing:-.4px}.panel-code{font-size:10px;color:#476675;letter-spacing:2px}.step-tabs{display:flex;gap:7px;padding:13px 13px 0}.step-tab{flex:1;padding:10px 4px;background:#0d1d2a;border:1px solid #254052;color:#668e9e;font-size:11px;font-weight:700;border-radius:2px;white-space:nowrap}.step-tab b{margin-right:4px;color:#527789}.step-tab.active{border-color:#50a6b5;background:#12313d;color:#d9f7f7}.step-tab.active b{color:#80e4f3}.setup-section{padding:14px 13px 13px;min-height:0;display:flex;flex-direction:column;gap:10px;flex:1}.setup-section[hidden]{display:none!important}.section-title{display:flex;gap:10px;align-items:center;margin-bottom:5px}.section-number{width:35px;height:35px;display:grid;place-items:center;flex-shrink:0;background:#1c3640;border:1px solid #3a7380;color:var(--cyan);font-size:15px;font-weight:800}.section-title h3{font-size:14px;margin:0 0 4px}.section-title p{font-size:10px;color:var(--muted);margin:0}.small-label{display:flex;justify-content:space-between;gap:6px;align-items:center;font-size:10px;letter-spacing:.5px;color:#a3bfcc;font-weight:700}.small-label span{font-size:9px;color:#608396}.select{width:100%;height:39px;color:#e1edf4;background:#102332;border:1px solid #315065;padding:0 10px;border-radius:2px;font-size:12px;outline:none}.select option{background:#102332}.spec-card{border:1px solid #294554;background:#0c2230;padding:12px;min-height:99px}.spec-card .s-top{display:flex;align-items:center;justify-content:space-between;gap:4px}.spec-card strong{font-size:14px;color:#d9f6f9}.spec-card .s-code{font-size:9px;letter-spacing:1px;color:var(--cyan)}.spec-card p{font-size:11px;color:#88a5b3;line-height:1.6;margin:7px 0 9px}.tags{display:flex;gap:5px;flex-wrap:wrap}.tags span{border:1px solid #335462;padding:4px 6px;font-size:9px;color:#8fb5c3}.action-button{border:1px solid #5a8c9c;background:#102b39;color:#d1eff6;min-height:39px;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:2px;font-size:12px;font-weight:800;letter-spacing:.3px;width:100%}.action-button span:last-child{margin-left:auto;margin-right:9px}.action-button span:first-child{margin-left:9px}.action-button.outline.active{border-color:#7de5e5;background:#153440;box-shadow:inset 3px 0 0 var(--cyan)}.action-button:hover{background:#1b4151}.action-button.solid{color:#05151c;background:#8bd7dc;border-color:#8bd7dc}.action-button.solid:hover{background:#acebef}.deploy-row{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--muted)}.deploy-row span{margin-right:auto}.deploy-row strong{color:var(--cyan)}.deploy-row button{padding:5px 6px;color:#94b6c3;font-size:10px;background:#112432;border:1px solid #284557;border-radius:2px}.deploy-row button:hover{border-color:#7db2c5}.scroll-box{min-height:60px;max-height:180px;overflow:auto;border:1px solid #203748;background:#081723;padding:5px;flex:1}.placeholder{font-size:11px;color:#648090;text-align:center;line-height:1.8;margin:14px 8px}.asset-row{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #1b3140;font-size:11px;padding:7px 5px;color:#9eabb8}.asset-row:last-child{border-bottom:0}.asset-row strong{color:#cdf3f1;font-size:10px}.asset-row button{color:#f4a8a2;background:transparent;border:0;font-size:18px;line-height:1}.asset-row small{font-size:9px;color:#597b89}.step-note{padding:11px 10px;border-left:2px solid #3e7582;background:#0e2731;font-size:10px;line-height:1.6;color:#91aeb7}.setup-section>.action-button.solid:last-child{margin-top:auto}.region-options{display:grid;grid-template-columns:1fr 1fr;gap:6px}.region-options button{padding:9px 3px;color:#95b6c4;border:1px solid #2c4a5a;background:#122432;border-radius:2px;font-size:11px}.region-options button.selected{color:#e9ffff;border-color:#5eb5be;background:#153643}.threat-card{min-height:85px}.field-row{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#a5c0cc}.stepper{display:flex;height:35px;align-items:center}.stepper button{height:34px;width:34px;background:#15313c;color:#b1d7df;border:1px solid #31566a;font-weight:800}.stepper input{height:34px;width:45px;text-align:center;background:#0a202b;color:#fff;border:1px solid #31566a;border-left:0;border-right:0;font-size:13px;appearance:textfield;-moz-appearance:textfield}.stepper input::-webkit-outer-spin-button,.stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.queue-head,.track-title,.focus-head,.alt-head,.log-head{display:flex;justify-content:space-between;align-items:center;gap:6px}.queue-head{font-size:10px;color:#9bb7c1}.queue-head strong{color:#8bdadd}.queue-list{max-height:145px;flex:1}.queue-entry{display:flex;justify-content:space-between;align-items:center;gap:7px;padding:7px;border-bottom:1px solid #1e3442}.queue-entry strong{display:block;font-size:10px;color:#c2e8e7}.queue-entry small{font-size:9px;color:#7d97a5}.queue-entry button{border:1px solid #36505d;background:#102331;color:#f5b6a8;padding:4px 7px}.bottom-actions{display:flex;gap:7px;margin-top:auto}.bottom-actions .action-button{flex:1}.secondary-button{border:1px solid #365565;background:#102534;color:#aad0dc;font-size:11px;padding:9px 10px}.secondary-button:hover{background:#1a3744}.live-num{font-size:13px;color:#f59b87;background:#3d2530;border-color:#8a4852}.live-hero{padding:17px 12px;background:repeating-linear-gradient(135deg,#122c39,#122c39 5px,#0b2430 5px,#0b2430 10px);border:1px solid #286076;min-height:135px}.live-hero span{font-size:10px;color:#78d8e1;letter-spacing:1.7px}.live-hero strong{display:block;margin:9px 0;font-size:18px}.live-hero p{font-size:11px;color:#a0bbc6;line-height:1.5}.live-controls{display:flex;gap:8px}.live-controls button{flex:1}.toggle-line{display:flex;align-items:center;gap:9px;padding:11px;background:#102535;border:1px solid #2e4d5c;cursor:pointer;font-size:12px;font-weight:700}.toggle-line input{opacity:0;position:absolute}.fake-switch{position:relative;flex-shrink:0;width:35px;height:21px;border-radius:20px;background:#304b57;transition:background .2s}.fake-switch:before{content:'';width:15px;height:15px;position:absolute;top:3px;left:3px;background:#a4bdc8;border-radius:50%;transition:transform .2s}.toggle-line input:checked+.fake-switch{background:#268a88}.toggle-line input:checked+.fake-switch:before{transform:translateX(14px);background:#c8ffef}.toggle-line input:focus-visible+.fake-switch{outline:2px solid white}.toggle-line small{display:block;color:#7192a1;font-size:10px;margin-top:4px;font-weight:400}.map-panel{display:flex;flex-direction:column;background:#071522;min-height:670px}.map-head{height:66px;padding:12px 17px;display:flex;align-items:center;justify-content:space-between;gap:14px}.map-title h2{margin-top:5px;font-size:17px}.map-title h2 span{font-size:9px;border:1px solid #45687a;color:var(--cyan);padding:4px 6px;letter-spacing:1px;margin-left:6px;vertical-align:middle}.map-switches{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}.map-switches span{border:1px solid #2e4a5c;background:#0d2633;color:#7398a7;padding:5px 7px;font-size:9px;white-space:nowrap}.map-switches .signal{color:#85d9cc;border-color:#376b72}.map-area{position:relative;aspect-ratio:1100/780;flex:1;min-height:0;width:100%;overflow:hidden;background:radial-gradient(circle at 49% 57%,#132e37 0%,#0d202c 39%,#091822 80%);cursor:crosshair}.map-area>svg,.map-area>canvas{position:absolute;inset:0;width:100%;height:100%}.map-area>svg{display:block}.map-area>canvas{z-index:3;touch-action:manipulation}.grid-lines line{stroke:#29424d;stroke-width:.55;opacity:.5}.terrain-country{fill:#182a35;stroke:#406071;stroke-width:1.5;stroke-linejoin:round;opacity:.96}.terrain-country.kor{fill:#24434b;stroke:#82b9bf;stroke-width:2.1}.terrain-country.prk{fill:#263941}.terrain-country.chn{fill:#1a323c}.terrain-country.jpn{fill:#1a2f3a}.terrain-country.rus{fill:#1e323c}.country-label{font-size:17px;letter-spacing:5px;fill:#658791;font-weight:700;opacity:.8;text-anchor:middle}.country-label.sm{font-size:13px;letter-spacing:1px;fill:#b0c6ce;opacity:.75}.sea-label{fill:#385b6b;font-size:12px;letter-spacing:3px;font-weight:700;text-anchor:middle}.map-top-left,.map-top-right,.map-bottom-left,.map-bottom-right{position:absolute;z-index:4;pointer-events:none;background:#061521ac;color:#7aa0ae;font-size:9px;letter-spacing:.8px}.map-top-left{top:14px;left:16px}.map-top-left span{display:block;margin-top:5px;color:#3d7b8a}.map-top-right{top:14px;right:13px;display:flex;gap:7px;align-items:center;max-width:47%;color:#a0cdd8;text-align:right;line-height:1.5}.sweep-indicator{display:block;width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan);flex-shrink:0}.map-bottom-left{bottom:14px;left:14px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.legend{display:flex;align-items:center;gap:5px}.legend i{display:block;width:7px;height:7px;transform:rotate(45deg)}.legend-def{background:var(--cyan)}.legend-threat{background:var(--red)}.legend-cover{background:#f2d098}.map-bottom-right{bottom:14px;right:13px}.map-crosshair{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);pointer-events:none;opacity:.12;width:12px;height:12px;border:1px solid #74b5bf}.map-footer{border-top:1px solid #224251;display:flex;justify-content:space-between;gap:8px;min-height:78px;padding:12px 16px;align-items:center}.map-detail strong,.coordinate-display strong{display:block;font-size:12px;margin:5px 0;color:#cbe6ee}.map-detail small,.coordinate-display small{color:#688c9a;font-size:10px}.coordinate-display{text-align:right}.coordinate-display>span{color:#678e9e;letter-spacing:1.2px;font-size:9px}.coordinate-display strong{font-size:13px}.coordinate-display i{color:var(--green);font-style:normal;font-size:9px}.telemetry-panel{padding-bottom:10px}.radar-topline{display:flex;justify-content:space-between;padding:12px 15px 8px;font-size:11px;color:#9bbfca}.radar-topline .active-radar{font-size:9px;color:var(--green);letter-spacing:.7px}.scope-wrap{height:173px;margin:0 12px;position:relative;background:#07191b;border:1px solid #264a4e;overflow:hidden}.scope-wrap canvas{width:100%;height:100%;display:block}.scope-text{position:absolute;bottom:6px;font-size:8px;letter-spacing:1px;color:#487e80}.scope-text.left{left:10px}.scope-text.right{right:10px}.track-title,.focus-head,.alt-head,.log-head{padding:12px 14px 9px;border-bottom:1px solid #27404d;font-size:11px}.track-title small,.focus-head small,.alt-head span,.log-head span{font-size:9px;letter-spacing:1.1px;color:#678e9e}.track-title strong span{color:var(--cyan)}.tracks{max-height:123px;min-height:75px;overflow:auto;padding:5px 11px}.track-button{width:100%;display:flex;align-items:center;justify-content:space-between;background:#0b202d;border:1px solid transparent;color:#d1e7ec;text-align:left;padding:8px 9px;gap:6px;margin:3px 0}.track-button:hover{border-color:#427387}.track-button.selected{background:#1d3541;border-color:#64a8b5}.track-button .ti{font-size:10px;font-weight:800}.track-button small{display:block;color:#83a5b1;font-size:9px;margin-top:3px}.track-button .track-phase{font-size:9px;color:#f8a594}.focus-detail{padding:11px 13px 8px}.focus-name{font-size:13px;letter-spacing:.5px;font-weight:800;color:#a8dbe3;min-height:20px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.detail-grid small{font-size:9px;color:#658d9c}.detail-grid strong{display:block;margin-top:4px;font-size:13px;color:#cce8ee}.fire-button{margin:5px 12px 6px;width:calc(100% - 24px);min-height:57px;display:flex;align-items:center;gap:10px;text-align:left;padding:9px 12px;color:#fff2e9;background:linear-gradient(110deg,#793c36,#4c262e);border:1px solid #c27567}.fire-button:disabled{filter:grayscale(.6)}.fire-button:not(:disabled):hover{background:#995044}.fire-symbol{font-size:29px;color:#ffb6a1}.fire-button small{font-size:9px;display:block;letter-spacing:1.5px;color:#e7a39a}.fire-button strong{font-size:12px;display:block;margin-top:3px}.fire-chevron{margin-left:auto;font-size:22px}.alt-head{border-bottom:0;padding-bottom:5px}.telemetry-panel>#altCanvas{height:75px;width:calc(100% - 24px);margin:0 12px;background:#091c28;border:1px solid #284354}.log-head{margin-top:8px}.event-log{overflow:auto;flex:1;max-height:150px;padding:5px 12px 0;min-height:60px}.log-item{display:flex;gap:9px;font-size:9px;line-height:1.5;padding:5px 0;border-bottom:1px solid #1b303c;color:#9bb3bd}.log-item .lt{color:#497989;white-space:nowrap;font-family:monospace}.log-item.good{color:#92d3b9}.log-item.warning{color:#f7a795}.footer-bar{min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:9px;letter-spacing:.65px;color:#52778b;flex-shrink:0}.footer-bar span:first-child{color:#74c3c9}.toast{position:fixed;z-index:30;bottom:30px;left:50%;transform:translate(-50%,16px);min-width:230px;max-width:90vw;border:1px solid #6ea2ab;background:#122d3a;color:#def7f7;font-size:12px;padding:12px 18px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;box-shadow:0 10px 24px #0006;text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}dialog{padding:0;border:1px solid #457687;color:var(--text);background:#0a1927;max-width:410px;width:calc(100% - 30px);box-shadow:0 18px 90px #000b}dialog::backdrop{background:#02080fce}.dialog-inner{padding:18px}.dialog-header{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1px;color:var(--cyan)}.dialog-header button{background:transparent;border:0;color:#a5d4dc;font-size:24px}.dialog-inner h2{font-size:20px}.dialog-inner p{color:#adc4cb;font-size:12px;line-height:1.8}.dialog-inner p b{color:var(--cyan)}.guide-disclaimer{border-left:2px solid var(--amber);padding:10px;background:#2b2a29;color:#d7c6a2;font-size:11px;line-height:1.6;margin:12px 0 16px}
@media(min-width:1440px){.shell{height:100vh;min-height:770px}.panel,.map-panel{min-height:0}.map-area{aspect-ratio:auto}.telemetry-panel .scope-wrap{height:calc((100vh - 770px)*.27 + 173px);max-height:240px}.tracks{max-height:calc((100vh - 770px)*.22 + 123px)}.event-log{max-height:none}.scroll-box{max-height:none}}
@media(max-width:1190px){.console-layout{grid-template-columns:minmax(255px,285px) minmax(390px,1fr)}.telemetry-panel{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;column-gap:12px;padding-bottom:12px}.telemetry-panel .panel-header{grid-column:1/-1}.radar-topline{grid-column:1}.scope-wrap{grid-column:1;grid-row:3 /span 3;height:230px}.track-title{grid-column:2;grid-row:2}.tracks{grid-column:2;grid-row:3;max-height:120px}.focus-head{grid-column:2;grid-row:4}.focus-detail{grid-column:2;grid-row:5}.fire-button{grid-column:2;grid-row:6}.alt-head{grid-column:1;grid-row:6}.telemetry-panel>#altCanvas{grid-column:1;grid-row:7;height:90px}.log-head{grid-column:2;grid-row:7}.event-log{grid-column:1/-1;grid-row:8;max-height:105px}.map-panel{min-height:650px}.map-area{aspect-ratio:1100/780;flex:initial}.setup-panel{min-height:650px}}
@media(max-width:760px){.shell{padding:0 9px}.topbar{height:62px}.brand-line{font-size:17px}.brand-line span{display:none}.top-status{display:none}.desktop-only{display:none}.top-actions{gap:6px}.clock{font-size:11px;margin:0;padding-right:8px}.icon-btn{padding:0 9px}.metrics{grid-template-columns:repeat(3,1fr);gap:1px}.metric{padding:8px;min-height:58px}.metric:nth-child(4),.metric:nth-child(5){grid-column:span 1}.metric strong{font-size:17px}.metric:first-child strong{font-size:13px}.metric-label{font-size:8px}.metric small{font-size:8px}.console-layout{display:flex;flex-direction:column}.panel,.map-panel{min-height:0}.setup-panel{order:0}.map-panel{order:1}.telemetry-panel{order:2}.scroll-box{max-height:110px;flex:auto}.setup-section{gap:9px}.map-area{aspect-ratio:1100/780}.map-head{min-height:64px;height:auto;padding:11px}.map-title h2{font-size:16px}.map-switches span:nth-child(2){display:none}.map-top-left{font-size:7px;top:8px;left:8px}.map-top-right{font-size:8px;top:8px;right:7px}.map-bottom-left{bottom:8px;left:8px;font-size:8px}.map-bottom-right{display:none}.map-footer{padding:9px}.map-detail strong,.coordinate-display strong{font-size:10px}.map-detail small,.coordinate-display small{font-size:9px}.telemetry-panel{display:flex}.scope-wrap{height:190px}.tracks{max-height:140px}.telemetry-panel>#altCanvas{height:95px}.event-log{max-height:140px}.footer-bar{flex-wrap:wrap;justify-content:center;text-align:center;padding:10px 0}.footer-bar span:last-child{display:none}}
@media(max-width:400px){.brand-sub{font-size:7px;letter-spacing:1px}.brand-line{font-size:15px;letter-spacing:3px}.brand-mark{width:26px;height:26px}.brand-point{left:9px;top:9px}.brand-ring{inset:3px}.map-switches span:last-child{display:none}.metric small{display:none}.metric strong{font-size:16px}.metric-label{font-size:7px}.map-top-right{max-width:58%}}
/* Fixed-height radar and condensed telemetry to keep the entire operator console visible. */
@media (min-width:1191px){
 .telemetry-panel .panel-header{padding:12px 13px;}
 .telemetry-panel .radar-topline{padding:8px 12px 6px;}
 .telemetry-panel .scope-wrap{height:126px;min-height:126px;flex-shrink:0;}
 .telemetry-panel .track-title,.telemetry-panel .focus-head,.telemetry-panel .alt-head,.telemetry-panel .log-head{padding:8px 12px 7px;flex-shrink:0;}
 .telemetry-panel .tracks{max-height:82px;min-height:62px;flex-shrink:1;}
 .telemetry-panel .focus-detail{padding:8px 12px 6px;flex-shrink:0;}
 .telemetry-panel .detail-grid{gap:5px;margin-top:6px;}
 .telemetry-panel .fire-button{min-height:51px;flex-shrink:0;margin-top:2px;margin-bottom:2px;}
 .telemetry-panel>#altCanvas{height:61px;flex-shrink:0;}
 .telemetry-panel .event-log{min-height:38px;}
}
