.wargame-root{--wg-ink:#17242f;--wg-paper:#e9e8df;--wg-panel:#f1f0e8;--wg-panel-deep:#d7d9d4;--wg-line:#aeb7b7;--wg-navy:#263b4a;--wg-navy-2:#314c5d;--wg-blue:#5c879e;--wg-blue-light:#93b6c2;--wg-red:#a05b5b;--wg-amber:#b27b39;--wg-green:#627b6b;width:100%;min-height:100vh;color:var(--wg-ink);letter-spacing:.01em;background-color:#dfe2de;background-image:linear-gradient(#22354009 1px,#0000 1px),linear-gradient(90deg,#22354009 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:32px 32px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;font-family:Microsoft YaHei UI,PingFang SC,Noto Sans SC,sans-serif}.wargame-root *,.wargame-root :before,.wargame-root :after{box-sizing:border-box}.wargame-root button{border-radius:0}.system-header{color:#f2f1e9;background:linear-gradient(90deg,#ffffff09 1px,#0000 1px) 0 0/36px 100%,linear-gradient(115deg,#314755 0,#263b49 55%,#20333f 100%);border-bottom:1px solid #6f7f84;grid-template-columns:46px minmax(320px,1fr) minmax(250px,.58fr) minmax(180px,.34fr);align-items:stretch;min-height:52px;display:grid}.system-mark{background:#0b1a232e;border-right:1px solid #ffffff24;place-items:center;display:grid;position:relative}.system-mark>i{border:1px solid #9eb4b8;width:31px;height:39px;position:absolute;transform:skewY(-5deg)}.system-mark>i:before,.system-mark>i:after{content:"";border-top:1px solid #d5dedc80;border-bottom:1px solid #d5dedc80;position:absolute;inset:4px}.system-mark b{z-index:1;color:#e7e3d4;font:700 19px/1 serif}.system-mark span{background:#a95b59;width:17px;height:1px;position:absolute;bottom:14px}.system-title,.exercise-identity,.header-status{flex-direction:column;justify-content:center;padding:6px 14px;display:flex}.system-title span,.exercise-identity span,.header-status small,.header-status>span,.timebar span,.panel-title span,.panel-title small,.map-toolbar span,.map-toolbar small,.section-label,.concept-heading>span,.concept-heading>i,.event-log header span,.system-footer,.observation-caption span,.observation-caption small{letter-spacing:.13em;text-transform:uppercase;font-family:Consolas,Microsoft YaHei UI,monospace}.system-title span{color:#a9bbc0;font-size:8px}.system-title h1{letter-spacing:.11em;margin:2px 0 0;font-size:clamp(15px,1.2vw,19px);font-weight:580}.exercise-identity{border-inline:1px solid #ffffff1f}.exercise-identity span{color:#92a7ae;font-size:8px}.exercise-identity b{letter-spacing:.07em;margin-top:2px;font-size:11px;font-weight:600}.exercise-identity small{display:none}.header-status{text-align:right;align-items:flex-end}.header-status>span{color:#bed2ca;font-size:8px}.header-status>span i{background:#7fa991;border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block;box-shadow:0 0 0 3px #7fa99126}.header-status b{color:#d2d8d4;margin-top:2px;font:9px Consolas,monospace}.header-status small{display:none}.timebar{background:#efefe8f5;border-bottom:1px solid #a7b0b0;grid-template-columns:140px minmax(300px,.8fr) minmax(220px,1fr) 130px;align-items:stretch;min-height:48px;display:grid;box-shadow:0 5px 14px #1b2a3214}.clock-block,.speed-controls,.operation-phase,.risk-readout{border-right:1px solid #c2c8c6;padding:5px 12px}.clock-block span,.operation-phase span,.risk-readout span{color:#718086;font-size:7px}.clock-block time{color:#253d4b;letter-spacing:.05em;margin-top:0;font:700 18px/1.15 Consolas,monospace;display:block}.clock-block time small{color:#819096;font-size:10px}.speed-controls{align-items:center;gap:4px;display:flex}.speed-controls button{color:#59686e;cursor:pointer;background:#f7f6ef;border:1px solid #b9c0be;min-width:48px;height:29px;padding:0 8px;font-size:8px;transition:all .15s}.speed-controls button:hover{color:#213845;border-color:#7e9298}.speed-controls button.active{color:#f7f6ef;background:#314c5b;border-color:#2e4958;box-shadow:inset 0 -2px #88a8b2}.speed-controls button.step{color:#344b55;background:#e5e8e3;min-width:98px;margin-left:3px}.speed-controls button.step i{color:#839397;margin-left:4px;font:8px Consolas,monospace}.operation-phase{flex-wrap:wrap;align-content:center;gap:3px 12px;display:flex}.operation-phase b{letter-spacing:.06em;font-size:9px;font-weight:600}.operation-phase>i{background:#cfd4d1;flex:0 0 100%;height:3px;margin-top:4px}.operation-phase>i em{background:#668aa0;height:100%;transition:width .45s;display:block}.risk-readout{border-right:0;flex-direction:column;justify-content:center;display:flex}.risk-readout b{color:#806641;margin-top:1px;font-size:10px}.risk-readout small{color:#89928f;margin-top:1px;font:7px Consolas,monospace}.risk-readout.alert{background:#eee5dc;box-shadow:inset 4px 0 #a26952}.risk-readout.alert b{color:#975346}.workspace{border-bottom:1px solid #98a3a3;grid-template-columns:32px minmax(0,1fr) 32px;width:100%;height:calc(100vh - 100px);min-height:620px;transition:grid-template-columns .22s;display:grid;position:relative}.workspace.left-collapsed,.workspace.right-collapsed,.workspace.left-collapsed.right-collapsed{grid-template-columns:32px minmax(0,1fr) 32px}.side-panel{background:#ebebe2fa;min-width:0;position:relative;overflow:hidden}.formation-panel{border-right:1px solid #98a4a4;grid-area:1/1}.battlefield{grid-area:1/2}.command-panel{border-left:1px solid #98a4a4;grid-area:1/3}.side-panel:not(.collapsed){z-index:50;width:min(290px,85vw);position:absolute;top:0;bottom:0;overflow-y:auto;box-shadow:12px 0 28px #0c1c2047}.formation-panel:not(.collapsed){left:0}.command-panel:not(.collapsed){right:0;box-shadow:-12px 0 28px #0c1c2047}.side-panel.collapsed{background:#233a3d}.panel-collapse{z-index:20;color:#68767a;cursor:pointer;background:#e9eae4;border:1px solid #b1b9b6;width:22px;height:27px;position:absolute;top:10px;right:8px}.command-panel .panel-collapse{left:8px;right:auto}.side-panel.collapsed .panel-collapse{color:#d5e3dd;background:#304d4d;border-color:#5e7b78;width:23px;top:calc(50% - 25px);right:4px;transform:translateY(-50%)}.command-panel.collapsed .panel-collapse{left:4px;right:auto}.collapsed-panel-label{color:#9fb6af;letter-spacing:.18em;writing-mode:vertical-rl;pointer-events:none;font:7px Consolas,Microsoft YaHei UI,monospace;position:absolute;top:calc(50% + 18px);left:50%;transform:translate(-50%,-50%)}.panel-title{background:#e5e6df;border-bottom:1px solid #bfc6c3;height:68px;padding:12px 16px}.panel-title span{color:#849193;font-size:7px}.panel-title h2{letter-spacing:.08em;margin:4px 0 1px;font-size:13px;font-weight:600}.panel-title small{color:#8a9696;font-size:7px}.faction-heading{color:#395464;background:#dfe4e2;border-bottom:1px solid #c4cac6;align-items:center;height:34px;padding:0 13px;font-size:9px;font-weight:700;display:flex}.faction-heading i{background:#779eb0;border:1px solid #486e81;width:8px;height:8px;margin-right:8px;transform:rotate(45deg)}.faction-heading b{color:#849092;margin-left:auto;font:7px Consolas,monospace}.faction-heading.faction-red{color:#765252;border-top:1px solid #afb9b6}.faction-heading.faction-red i{background:#aa6a69;border-color:#855657}.unit-list{display:grid}.unit-card{color:#37464b;text-align:left;cursor:pointer;background:#f6f5edb3;border:0;border-bottom:1px solid #cdd1cd;grid-template-columns:35px 1fr;gap:8px;min-height:55px;padding:8px 10px;display:grid;position:relative}.unit-card:hover{background:#f8f7f0}.unit-card.active{background:#f5f5ed;box-shadow:inset 3px 0 #557f93}.unit-card>span:not(.unit-glyph){flex-direction:column;min-width:0;display:flex}.unit-card>span b{text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:650;overflow:hidden}.unit-card>span small{color:#7c8787;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:7px;overflow:hidden}.unit-card>em{color:#5c7a72;text-align:right;grid-column:2;margin-top:-12px;font-size:7px;font-style:normal}.unit-glyph{color:#54768a;width:32px;height:28px;display:inline-block;position:relative}.unit-glyph>i,.unit-glyph>b{content:"";background:currentColor;display:block;position:absolute}.glyph-infantry{border:1px solid}.glyph-infantry:before,.glyph-infantry:after{content:"";background:currentColor;width:23px;height:1px;position:absolute;top:13px;left:4px;transform:rotate(28deg)}.glyph-infantry:after{transform:rotate(-28deg)}.glyph-spider>b{clip-path:polygon(10% 30%,25% 0,80% 0,100% 45%,83% 100%,15% 88%,0 55%);background:currentColor;border:1px solid #d7e1df;width:17px;height:12px;top:7px;left:8px}.glyph-spider>i{transform-origin:100%;width:13px;height:2px;top:16px;left:1px;transform:rotate(-34deg)}.glyph-spider>i:nth-child(2){top:21px;transform:rotate(26deg)}.glyph-spider>i:nth-child(3){transform-origin:0;left:auto;right:1px;transform:rotate(34deg)}.glyph-spider>i:nth-child(4){transform-origin:0;top:21px;left:auto;right:1px;transform:rotate(-26deg)}.glyph-artillery{border:1px solid}.glyph-artillery:before{content:"";background:currentColor;width:20px;height:1px;position:absolute;top:13px;left:5px}.glyph-artillery:after{content:"";border:1px solid;width:4px;height:11px;position:absolute;top:8px;left:14px}.glyph-air:before{content:"";clip-path:polygon(0 43%,38% 24%,46% 0,58% 0,64% 24%,100% 45%,100% 64%,61% 58%,56% 100%,45% 100%,40% 58%,0 65%);background:currentColor;width:28px;height:4px;position:absolute;top:12px;left:2px}.glyph-ax01>b{border-radius:1px;width:7px;height:15px;top:5px;left:13px}.glyph-ax01>i{border-radius:50%;width:5px;height:5px;top:2px;left:14px}.glyph-ax01>i:nth-child(2){width:21px;height:3px;top:9px;left:6px}.glyph-ax01>i:nth-child(3){width:3px;height:10px;top:18px;left:10px;transform:rotate(12deg)}.glyph-ax01>i:nth-child(4){width:3px;height:10px;top:18px;left:20px;transform:rotate(-12deg)}.glyph-ax01.is-air:after{border-top:2px solid;content:"";clip-path:polygon(0 0,43% 45%,50% 100%,57% 45%,100% 0,100% 35%,63% 90%,37% 90%,0 35%);border-inline:1px solid;width:32px;height:8px;position:absolute;top:8px;left:0}.glyph-defense{border:1px solid}.glyph-defense:before{content:"";border:1px solid;border-radius:50%;width:14px;height:14px;position:absolute;top:5px;left:8px}.glyph-defense:after{content:"";background:currentColor;width:26px;height:1px;position:absolute;top:13px;left:3px;transform:rotate(-28deg)}.red-summary{grid-template-columns:1fr 1fr;display:grid}.red-summary span{border-bottom:1px solid #c9ceca;flex-direction:column;gap:2px;padding:10px 9px;display:flex}.red-summary span+span{border-left:1px solid #c9ceca}.red-summary b{color:#765959;font-size:7px}.red-summary small{color:#929895;font-size:6px}.left-intel{background:#e4e3da;border-left:2px solid #a8764c;margin:12px;padding:11px}.left-intel span{color:#778383;font-size:7px}.left-intel b{float:right;font:10px Consolas,monospace}.left-intel>i{clear:both;background:#c3c8c4;height:3px;margin-top:7px;display:block}.left-intel>i em{background:#758f8f;width:78%;height:100%;display:block}.left-intel p{color:#84684d;margin:8px 0 0;font-size:7px;line-height:1.5}.battlefield{background:#a8ab99;grid-template-rows:48px minmax(0,1fr);min-width:0;display:grid;overflow:hidden}.map-toolbar{z-index:3;color:#e5e2d6;background:#303a39;border-bottom:1px solid #62685d;justify-content:space-between;align-items:center;padding:5px 12px;display:flex}.map-toolbar>div:first-child{flex-direction:column;display:flex}.map-toolbar span{color:#aeb7ae;font-size:7px}.map-toolbar b{letter-spacing:.08em;margin-top:1px;font-size:10px;font-weight:600}.map-toolbar small{color:#9da79f;margin-top:1px;font-size:6px}.view-switch{border:1px solid #6b746b;display:flex}.view-switch button{color:#bdc4bb;cursor:pointer;background:0 0;border:0;min-width:68px;padding:6px 8px;font-size:7px}.view-switch button+button{border-left:1px solid #6b746b}.view-switch button.active{color:#2d3633;background:#dedccd}.map-canvas{isolation:isolate;cursor:default;touch-action:none;-webkit-user-select:none;user-select:none;background:#87938b;min-height:0;position:relative;overflow:hidden}.map-canvas.semantic-overview{--oregon-map-width:min(93.2cqw, 172.04cqh);--oregon-map-height:min(50.06cqw, 92.4cqh);--oregon-map-half-width:min(46.6cqw, 86.02cqh);--oregon-map-half-height:min(25.03cqw, 46.2cqh);background:radial-gradient(circle at 72% 7%,#bdb58b1a,#0000 35%),repeating-linear-gradient(7deg,#dddac205 0 1px,#0000 1px 5px),#202925;box-shadow:inset 0 0 52px #040807ad;container-type:size}.map-viewport{z-index:1;transform-origin:50%;will-change:transform;background:linear-gradient(#efe8c91f,#4a58451a),url(/assets/maps/oregon-usgs-topo.jpg) 50%/100% 100% no-repeat,#d5d0b8;transition:transform .18s ease-out;position:absolute;inset:0}.semantic-overview .map-viewport{width:var(--oregon-map-width);height:var(--oregon-map-height);aspect-ratio:2048/1100;top:50%;left:50%;background-blend-mode:multiply, normal, normal;background:linear-gradient(#74764e1f,#2b32271f),url(/assets/maps/oregon-usgs-topo.jpg) 50%/100% 100% no-repeat,#c7c5aa;border:1px solid #b2b599b8;inset-block-end:auto;inset-inline-end:auto;translate:-50% -50%;box-shadow:0 0 0 1px #090f0deb,0 0 0 5px #96977d29,0 9px 24px #00050480,inset 0 0 32px #1b251f1f}.semantic-operational .map-viewport{background:linear-gradient(#f7f1da05,#46544214),url(/assets/maps/mount-hood-military-operational-v2.png) 50%/100% 100% no-repeat,#c7ccb2;animation:.24s ease-out both semantic-map-swap}.map-viewport:before{z-index:2;content:"";pointer-events:none;background:#494e3a0b;position:absolute;inset:0}.map-viewport:after{z-index:2;content:"";pointer-events:none;background:linear-gradient(90deg,#192a301c,#0000 7% 93%,#192a301c),linear-gradient(#192a300f,#0000 13% 87%,#192a3014);position:absolute;inset:0}.semantic-overview .map-viewport:before{-webkit-backdrop-filter:saturate(.72)contrast(1.12)sepia(.08);backdrop-filter:saturate(.72)contrast(1.12)sepia(.08);mix-blend-mode:soft-light;background:linear-gradient(#6e6f4d0e,#44493909),repeating-linear-gradient(0deg,#2f372b09 0 1px,#0000 1px 4px)}.semantic-overview .map-viewport:after{background:linear-gradient(90deg,#161e1a29,#0000 6% 94%,#161e1a29),linear-gradient(#161e1a24,#0000 9% 91%,#161e1a24),radial-gradient(circle at 72% 12%,#e2dcb51a,#0000 28%)}.military-map-grid{z-index:2;pointer-events:none;background:repeating-linear-gradient(90deg,#2a3a3129 0 1px,#0000 1px 4.166%),repeating-linear-gradient(0deg,#2a3a3129 0 1px,#0000 1px 5%),repeating-linear-gradient(90deg,#2a3a3152 0 1px,#0000 1px 8.333%),repeating-linear-gradient(0deg,#2a3a3152 0 1px,#0000 1px 10%);position:absolute;inset:0;box-shadow:inset 0 0 0 1px #2a3a3194}.semantic-overview .military-map-grid{background:repeating-linear-gradient(90deg,#3d453718 0 1px,#0000 1px 4.166%),repeating-linear-gradient(0deg,#3d453718 0 1px,#0000 1px 5%),repeating-linear-gradient(90deg,#30392e3d 0 1px,#0000 1px 8.333%),repeating-linear-gradient(0deg,#30392e3d 0 1px,#0000 1px 10%);box-shadow:inset 0 0 0 1px #313a2f8f}.semantic-operational .military-map-grid{background:repeating-linear-gradient(90deg,#2a3a311f 0 1px,#0000 1px 2.5%),repeating-linear-gradient(0deg,#2a3a311f 0 1px,#0000 1px 3.125%),repeating-linear-gradient(90deg,#2a3a314d 0 1px,#0000 1px 5%),repeating-linear-gradient(0deg,#2a3a314d 0 1px,#0000 1px 6.25%)}.map-grid-columns{z-index:23;grid-template-columns:repeat(var(--grid-label-columns,10), 1fr);color:#1b2721d1;text-align:center;pointer-events:none;font:600 6px Consolas,monospace;display:grid;position:absolute;top:3px;left:54px;right:54px}.map-grid-rows{z-index:23;grid-template-rows:repeat(var(--grid-label-rows,9), 1fr);color:#1b2721d1;pointer-events:none;align-items:center;font:600 6px Consolas,monospace;display:grid;position:absolute;top:54px;bottom:54px;left:4px}.map-grid-columns span,.map-grid-rows span{background:#ebe5cdbd;padding:1px 3px}.semantic-overview .map-grid-columns{top:calc(50% - var(--oregon-map-half-height) + 3px);right:auto;left:calc(50% - var(--oregon-map-half-width));width:var(--oregon-map-width)}.semantic-overview .map-grid-rows{top:calc(50% - var(--oregon-map-half-height));bottom:auto;left:calc(50% - var(--oregon-map-half-width) - 23px);height:var(--oregon-map-height)}.semantic-overview .map-grid-columns span,.semantic-overview .map-grid-rows span{color:#d8d5c3;background:#262f2be0;border:1px solid #91998457;box-shadow:0 1px 3px #00070647}.map-canvas.can-pan{cursor:grab}.map-canvas.awaiting-target:not(.dragging){cursor:crosshair}.map-canvas.dragging{cursor:grabbing}.map-canvas.dragging .map-viewport{transition:none}.oregon-boundary-emphasis{z-index:1;filter:drop-shadow(0 0 1px #fcf6d8f5)drop-shadow(0 0 4px #2d352d7a);pointer-events:none;background:#747a560b;position:absolute;inset:0}.oregon-city{z-index:4;pointer-events:none;align-items:center;gap:5px;display:flex;position:absolute;transform:translate(-50%,-50%)}.oregon-city>i{background:#263934;border:1px solid #f7f2daf5;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 1px #27352db8,0 1px 3px #1f2f3052}.oregon-city>span{color:#1f2924;text-shadow:0 1px #fffae7e6;white-space:nowrap;background:#efe9d2ad;flex-direction:column;padding:1px 3px;display:flex}.oregon-city b{letter-spacing:.04em;font-size:7px;font-weight:650}.oregon-city small{color:#536057;letter-spacing:.08em;margin-top:1px;font:5px Consolas,monospace}.oregon-city.city-primary>i{background:#405e60;width:9px;height:9px}.oregon-city.city-secondary>span{background:#efe9d28c}.oregon-city.city-secondary b{font-size:6px}.semantic-overview .oregon-city.city-secondary{opacity:.82}.semantic-overview .oregon-city>span{color:#29302a;text-shadow:0 1px #fffce9b8;background:#e8e4cddb;border-left:2px solid #525f4eb8;box-shadow:0 1px 3px #272d2633}.semantic-overview .oregon-city small{color:#626c61}.semantic-overview .oregon-city>i{background:#515e52;border-color:#f2edd1f0;box-shadow:0 0 0 1px #313b32b8,0 1px 3px #20262152}.semantic-operational .oregon-city.city-secondary{opacity:.68}.mount-hood-reference{z-index:6;pointer-events:none;align-items:center;gap:3px;display:flex;position:absolute;transform:translate(-50%,-50%)}.mount-hood-reference>i{background:#344b49;border:1px solid #ece8ccf2;width:6px;height:6px;transform:rotate(45deg);box-shadow:0 0 0 2px #17272880}.mount-hood-reference>span{color:#202b25;white-space:nowrap;background:#efe9d2d1;flex-direction:column;padding:2px 3px;display:flex}.mount-hood-reference b{letter-spacing:.04em;font-size:6px}.mount-hood-reference small{color:#56635b;letter-spacing:.07em;font:4px Consolas,monospace}.semantic-overview .mount-hood-reference{opacity:.66}.semantic-operational .mount-hood-reference{opacity:1}.strategic-site-marker{z-index:9;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:5px;min-width:0;padding:0;display:flex;position:absolute;transform:translate(-10%,12%)}.strategic-site-marker>i{background:#743f34;border:2px solid #f2d483;border-radius:2px;place-items:center;width:15px;height:15px;display:grid;transform:rotate(45deg);box-shadow:0 0 0 2px #2834329e,0 0 8px #e4b34f7a}.strategic-site-marker>i span{color:#fff4c7;font:700 7px Noto Serif SC,serif;transform:rotate(-45deg)}.strategic-site-marker>span{color:#fff5d6;white-space:nowrap;background:#1f2f30e6;border-left:2px solid #d39f55;flex-direction:column;min-width:0;padding:3px 5px;display:flex;box-shadow:0 2px 7px #121e1f66}.strategic-site-marker b{letter-spacing:.05em;font-size:8px}.strategic-site-marker small{color:#d4c899;letter-spacing:.07em;margin-top:1px;font:4px Consolas,monospace}.strategic-site-marker em{color:#b9c6c0;margin-top:2px;font:4px Consolas,monospace;display:none}.semantic-operational .strategic-site-marker{transform-origin:50%;transform:translate(-50%,-50%)}.semantic-operational .strategic-site-marker em{display:block}.strategic-site-marker:hover>span,.strategic-site-marker:focus-visible>span{background:#354541fa;border-left-color:#ffe09a}.strategic-site-marker.site-local{transform:translate(-50%,-50%)}.strategic-site-marker.site-local>span{min-width:0}.strategic-site-marker.site-local em{display:block}.semantic-overview .strategic-site-marker{transform:translate(-45%,-82%)}.semantic-overview .strategic-site-marker>i{background:radial-gradient(circle at 38% 32%,#b68a57,#684b31 70%);border:1px solid #b28a53;border-radius:2px;width:17px;height:17px;transform:rotate(45deg);box-shadow:0 2px 1px #2d221870,0 3px 6px #1e19143d}.semantic-overview .strategic-site-marker>i span{color:#f4e5b6;font-size:7px;transform:rotate(-45deg)}.semantic-overview .strategic-site-marker>span{color:#f1ead5;background:#2a312beb;border:1px solid #a79a779e;border-left:2px solid #c69255;min-width:0;padding:3px 5px;box-shadow:0 2px 6px #0b100d57}.semantic-overview .strategic-site-marker small{color:#c7bd91}.strategic-force-marker{z-index:10;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:flex;position:absolute;transform:translate(-50%,-50%)}.strategic-force-marker>i{color:#eef3ec;background:#375564eb;border:2px solid;place-items:center;width:34px;height:29px;display:grid;box-shadow:0 0 0 3px #eceee080,0 3px 9px #1826275c}.strategic-force-marker>i:before,.strategic-force-marker>i:after{content:"";background:currentColor;width:26px;height:1px;position:absolute;transform:rotate(27deg)}.strategic-force-marker>i:after{transform:rotate(-27deg)}.strategic-force-marker>i span{z-index:1;background:#375564eb;padding:0 2px;font:700 9px Consolas,monospace;position:relative}.strategic-force-marker.force-red>i{color:#f0dfd8;background:#7e4845f0}.strategic-force-marker.force-red>i span{background:#7e4845f0}.strategic-force-marker>span{color:#edf0e9;white-space:nowrap;background:#223134e6;border-left:3px solid #75a7bc;flex-direction:column;min-width:120px;padding:4px 6px;display:flex;box-shadow:0 2px 8px #15222357}.strategic-force-marker.force-red>span{border-left-color:#bd7770}.strategic-force-marker b{letter-spacing:.05em;font-size:8px}.strategic-force-marker small{color:#bdc9c4;margin-top:1px;font-size:5px}.strategic-force-marker em{color:#91aaa5;margin-top:2px;font:5px Consolas,monospace}.strategic-force-marker:hover>span,.strategic-force-marker:focus-visible>span{background:#314546fa}.semantic-overview .strategic-force-marker{filter:drop-shadow(0 2px 2px #1218134d);align-items:center;gap:4px;display:flex;transform:translate(-50%,-50%)}.semantic-overview .strategic-force-marker>i{color:#eef0e7;clip-path:none;background:#426474f5;border:1px solid #eef0e2f5;width:26px;height:18px;margin-left:0;display:grid;position:relative;transform:none;box-shadow:0 0 0 1px #26302cc7,0 2px 2px #1f241f40}.semantic-overview .strategic-force-marker.force-red>i{color:#f2e4dd;background:#824240f2}.semantic-overview .strategic-force-marker>i:before{background:currentColor;border-radius:0;width:19px;height:1px;top:8px;left:3px;transform:rotate(26deg)}.semantic-overview .strategic-force-marker>i:after{background:currentColor;border:0;border-radius:0;width:19px;height:1px;top:8px;left:3px;transform:rotate(-26deg)}.semantic-overview .strategic-force-marker>i span,.semantic-overview .strategic-force-marker.force-red>i span{color:inherit;letter-spacing:.06em;background:0 0;padding:0;font-size:6px}.semantic-overview .strategic-force-marker>span{color:#303730;background:#e8e4cdeb;border:1px solid #525b4c94;border-left:3px solid #567a89;min-width:max-content;max-width:104px;padding:2px 4px 2px 5px;display:flex;position:static;box-shadow:0 1px 3px #282d263d}.semantic-overview .strategic-force-marker.force-red>span{border-left-color:#965b54}.semantic-overview .strategic-force-marker b{letter-spacing:.03em;font-size:6px}.semantic-overview .strategic-force-marker small,.semantic-overview .strategic-force-marker em{color:#9aafa8;display:none}.semantic-overview .strategic-force-marker:hover>span,.semantic-overview .strategic-force-marker:focus-visible>span{color:#f0eee3;background:#2f3831fa}.semantic-overview .strategic-force-marker:hover small,.semantic-overview .strategic-force-marker:focus-visible small,.semantic-overview .strategic-force-marker:hover em,.semantic-overview .strategic-force-marker:focus-visible em{display:block}.official-road-network{z-index:3;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.official-road-network path{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.official-road-network .road-casing{stroke:#3d372ad1;stroke-width:.44px}.official-road-network .road-surface{stroke:#c9b98beb;stroke-width:.2px}.official-road-network .primary-corridor .road-casing{stroke:#363126f5;stroke-width:.72px}.official-road-network .primary-corridor .road-surface{stroke:#ca994afa;stroke-width:.34px}.semantic-overview .official-road-network .freight-highway{opacity:.52}.semantic-overview .official-road-network .primary-corridor{opacity:1;filter:drop-shadow(0 0 .35px #f1e0aad6)}.semantic-operational .official-road-network .road-casing{stroke:#313a45e0;stroke-width:.62px}.semantic-operational .official-road-network .road-surface{stroke:#c3c9cef5;stroke-width:.28px}.semantic-operational .official-road-network .freight-highway{opacity:.86}.official-road-label{z-index:4;color:#202821;letter-spacing:.05em;white-space:nowrap;pointer-events:none;background:#f1ebd3e6;border:1px solid #484531b8;border-radius:2px;flex-direction:column;padding:2px 4px;font:600 5px Consolas,monospace;display:flex;position:absolute;transform:translate(-50%,-50%)}.official-road-label small{color:#4b615b;margin-top:1px;font-size:4px}.official-road-label.label-primary{color:#19251f;background:#e8e5ccf5;border-color:#344337e6}.semantic-overview .official-road-label{color:#343a31;background:#ebe5ccf0;border-color:#635e45ad}.semantic-overview .official-road-label small{color:#6d6f58}.semantic-overview .official-road-label.label-primary{color:#352d1f;background:#f2e4b8f5;border-color:#9e7034e0}.strategic-operation-overlay{z-index:5;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.strategic-operation-overlay .operational-sector{stroke-width:.2px;vector-effect:non-scaling-stroke}.strategic-operation-overlay .sector-blue{fill:#4670840e;stroke:#49708057}.strategic-operation-overlay .sector-red{fill:#8b4a420b;stroke:#8b4a4247}.strategic-operation-overlay .theater-boundary{fill:none;stroke:#ece7cdcc;stroke-width:.24px;vector-effect:non-scaling-stroke}.strategic-operation-overlay .contact-belt{fill:none;stroke:#685b3db3;stroke-dasharray:.55 .4;stroke-width:.28px;vector-effect:non-scaling-stroke}.strategic-operation-overlay .operation-axis{fill:none;stroke-linecap:round;stroke-width:.46px;vector-effect:non-scaling-stroke}.strategic-operation-overlay .axis-blue{stroke:#387191f0}.strategic-operation-overlay .axis-red{stroke:#a1443ceb}.strategic-operation-overlay .axis-secondary{stroke-dasharray:1.2 1;stroke-width:.34px}.strategic-operation-overlay .axis-arrow-blue{fill:#477f9a}.strategic-operation-overlay .axis-arrow-red{fill:#9f5149}.strategic-operation-overlay .operation-objective-ring{fill:#c4a05b14;stroke:#d6b468eb;stroke-dasharray:.8 .55;stroke-width:.3px}.strategic-operation-overlay .operation-objective-core{fill:#d8b468}.strategic-operation-overlay .axis-label{letter-spacing:.08em;paint-order:stroke;stroke:#eae5cdeb;stroke-width:.32px;font:600 1.15px Consolas,monospace}.strategic-operation-overlay .axis-label-blue{fill:#355f75}.strategic-operation-overlay .axis-label-red{fill:#8b443f}.strategic-operation-overlay .sector-label{letter-spacing:.12em;paint-order:stroke;stroke:#e8e4cce0;stroke-width:.25px;font:500 1px Consolas,monospace}.strategic-operation-overlay .sector-label-blue{fill:#315666e0}.strategic-operation-overlay .sector-label-red{fill:#793d38d1}.operational-point{z-index:7;pointer-events:none;align-items:center;gap:5px;display:flex;position:absolute;transform:translate(-50%,-50%)}.operational-point>i{background:#396e62;border:2px solid #f5f2df;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 2px #2b3d3b9e,0 2px 4px #19262559}.operational-point.point-peak>i{background:#7c694b;border-radius:1px;transform:rotate(45deg)}.operational-point.point-river>i{background:#4c88a1}.operational-point>span{color:#243a3d;white-space:nowrap;background:#f6f7ebe6;border:1px solid #475b5847;flex-direction:column;padding:3px 5px;display:flex;box-shadow:0 1px 3px #2132302e}.operational-point b{letter-spacing:.04em;font-size:7px}.operational-point small{color:#576d6d;letter-spacing:.05em;margin-top:1px;font:5px Consolas,monospace}.local-route-label{z-index:7;color:#273b58;pointer-events:none;background:#f8f8ecf0;border:1px solid #74849b;border-radius:3px;padding:2px 5px;font:700 7px Consolas,monospace;position:absolute;box-shadow:0 1px 3px #2331363d}.local-route-label.route-us26{top:68%;left:28%}.local-route-label.route-or35{top:72%;left:61%}.regional-road-label{z-index:6;color:#443b2d;pointer-events:none;white-space:nowrap;background:#efead1d6;border-block:1px solid #544a36b3;flex-direction:column;padding:2px 5px;display:flex;position:absolute;box-shadow:0 1px 3px #28302a2e}.regional-road-label b{letter-spacing:.05em;font:600 5px Consolas,monospace}.regional-road-label small{color:#6c6557;margin-top:1px;font-size:4px}.regional-force-marker{z-index:12;pointer-events:none;align-items:center;display:flex;position:absolute;transform:translate(-50%,-50%)}.regional-force-marker .unit-glyph{color:#e8efeb;transform-origin:100%;background:#365869eb;border-color:currentColor;flex:0 0 25px;width:25px;height:21px;transform:scale(.82);box-shadow:0 0 0 2px #eef0e4a3,0 2px 5px #1a272761}.regional-force-marker.faction-red .unit-glyph{color:#efded8;background:#7c4744f0}.regional-force-marker>span{color:#edf0e9;white-space:nowrap;background:#253537e0;border-left:2px solid #75a6b8;flex-direction:column;margin-left:2px;padding:2px 4px;display:flex}.regional-force-marker.faction-red>span{border-left-color:#be7871}.regional-force-marker b{font-size:6px}.regional-force-marker small{color:#b8c6c1;font-size:4px}.terrain-feature{z-index:3;pointer-events:none;position:absolute;transform:translate(-50%,-50%)}.terrain-feature>span{color:#d8ded6;letter-spacing:.07em;background:#2c3939b3;width:max-content;padding:2px 4px;font:6px Consolas,monospace;position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%)}.terrain-mountain{width:72px;height:44px}.terrain-mountain.terrain-large{width:100px;height:60px}.terrain-mountain i{clip-path:polygon(50% 0,100% 100%,0 100%);filter:drop-shadow(7px 8px 3px #23352c26);background:linear-gradient(135deg,#596b60 0 54%,#77887b 55%);width:55%;height:100%;position:absolute;bottom:0}.terrain-mountain i:nth-child(2){height:73%;right:0}.terrain-mountain i:nth-child(3){background:linear-gradient(135deg,#68796d 0 54%,#829083 55%);height:60%;left:31%}.terrain-town{align-items:flex-end;gap:2px;width:52px;height:34px;padding:3px;display:flex;transform:translate(-50%,-50%)skewY(-6deg)}.terrain-town i{background:#626b68;border-top:1px solid #b6b9aa;flex:1;height:55%;box-shadow:4px 3px #3e464447}.terrain-town i:nth-child(2){height:82%}.terrain-town i:nth-child(3){height:66%}.terrain-town i:nth-child(4){height:92%}.terrain-town i:nth-child(5){height:46%}.terrain-airbase{background:#737d77;border:1px solid #d6d9c9a6;width:74px;height:26px;transform:translate(-50%,-50%)rotate(-8deg)}.terrain-airbase i{background:repeating-linear-gradient(90deg,#d5d6c8 0 10px,#0000 10px 15px);width:63px;height:2px;position:absolute;top:11px;left:5px}.terrain-airbase b{color:#d7dad0;font:6px Consolas,monospace;position:absolute;bottom:2px;right:3px}.terrain-bridge{background:#4b5858;width:56px;height:12px;transform:translate(-50%,-50%)rotate(73deg);box-shadow:inset 0 0 0 2px #abb4ab}.terrain-bridge i{border-top:1px dashed #d6d7c9;width:48px;position:absolute;top:5px;left:4px}.terrain-defense{border-bottom:2px dashed #915d5a;gap:5px;width:78px;padding-bottom:4px;display:flex}.terrain-defense i{clip-path:polygon(50% 0,100% 100%,0 100%);background:#794d4b80;border:1px solid #9a6966;width:20px;height:9px}.coverage{z-index:2;pointer-events:none;border-radius:50%;position:absolute}.coverage:before{border-radius:inherit;content:"";position:absolute;inset:0}.coverage span{color:#efe1d6;width:max-content;font:6px Consolas,monospace;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.coverage-artillery{aspect-ratio:1.25;background:#914c450e;border:1px dashed #87484394;width:22%;top:40%;left:35%}.coverage-radar{aspect-ratio:1.25;background:radial-gradient(circle,#0000 0 42%,#91524d12 43% 44%,#0000 45% 67%,#91524d17 68% 69%,#0000 70%);border:1px solid #8f564f75;width:21%;top:9%;left:34%}.coverage-blue{aspect-ratio:1.5;background:#4b778a0b;border:1px dashed #40677a94;width:27%;top:25%;left:12%}.coverage-blue span{color:#d5e3e4}.route{z-index:5;pointer-events:none;position:absolute;inset:0}.route i{transform-origin:0;height:2px;position:absolute}.route i:after{content:"";border-top:2px solid;border-right:2px solid;width:6px;height:6px;position:absolute;top:-2px;right:-1px;transform:rotate(45deg)}.route span{background:#e3e5db80;border:1px solid;border-radius:50%;width:8px;height:8px;position:absolute;transform:translate(-50%,-50%)}.route-ground{color:#c8dfdf}.route-ground i{background:#d0e3e1;box-shadow:0 0 0 1px #304e5761}.route-air{color:#d5d6c2}.route-air i{background:repeating-linear-gradient(90deg,#ece6c9 0 8px,#0000 8px 13px);height:1px}.route-supply{color:#9fc0af}.route-supply i{background:repeating-linear-gradient(90deg,#a9c8b7 0 5px,#0000 5px 8px);height:3px}.route-candidate{color:#e3e5d98c}.route-candidate i{background:repeating-linear-gradient(90deg,#e3e5d98c 0 4px,#0000 4px 8px);height:1px}.route-candidate i:after{display:none}.map-unit{z-index:10;color:#e5efeb;cursor:pointer;background:0 0;border:0;align-items:center;padding:0;transition:left .6s linear,top .6s linear,filter .16s;display:flex;position:absolute;transform:translate(-50%,-50%)}.map-unit .unit-glyph{color:#e2eae5;filter:drop-shadow(0 2px 2px #17262680);border-color:currentColor;flex:0 0 38px;width:38px;height:33px;padding:3px}.map-unit .unit-glyph:after{border-color:currentColor}.map-unit.faction-blue .unit-glyph{background:#395b6ce0;box-shadow:0 0 0 2px #ccdedd73}.map-unit.faction-red .unit-glyph{color:#eadbd4;background:#7d4946db;box-shadow:0 0 0 2px #e5cfc66b}.map-unit-label{color:#e9ede5;text-align:left;white-space:nowrap;background:#2c3a3bcc;flex-direction:column;max-width:110px;margin-left:6px;padding:3px 5px;display:flex}.faction-red .map-unit-label{background:#5b3736d1}.map-unit-label b{letter-spacing:.05em;font-size:7px}.map-unit-label small{color:#bdc8c3;text-overflow:ellipsis;max-width:96px;margin-top:1px;font-size:6px;overflow:hidden}.map-unit.selected{z-index:15;filter:drop-shadow(0 0 5px #e6ebddd9)}.map-unit.selected .unit-glyph{box-shadow:0 0 0 2px #f0eee0,0 0 0 5px #486a78b3}.map-unit.selected:after{border-top:1px solid #f1efdf;content:"";border-inline:1px solid #f1efdf;width:17px;height:5px;position:absolute;top:-10px;left:11px}.map-unit.airborne{animation:2.4s ease-in-out infinite unit-hover}@keyframes unit-hover{50%{filter:drop-shadow(0 8px 5px #20323559);margin-top:-5px}}.map-compass{z-index:18;color:#26342d;place-items:center;width:45px;height:63px;font:8px Consolas,monospace;display:grid;position:absolute;top:16px;right:17px}.map-compass b{font-size:10px}.map-compass i{background:#e1e4d8;width:1px;height:30px}.map-compass i:before{content:"";border-bottom:9px solid #e1e4d8;border-left:5px solid #0000;border-right:5px solid #0000;position:absolute;top:11px;left:18px}.map-compass i{background:#26342d}.map-compass i:before{border-bottom-color:#26342d}.map-compass span{border-top:2px solid #26342d;padding-top:3px}.map-legend{z-index:18;color:#253029;background:#ece6cfe0;border:1px solid #323d347a;flex-wrap:wrap;gap:8px 13px;max-width:calc(100% - 26px);padding:6px 8px;font-size:6px;display:flex;position:absolute;bottom:10px;left:13px}.map-legend span{align-items:center;gap:4px;display:flex}.map-legend i{width:13px;height:3px}.legend-blue{background:#91b8c4}.legend-red{background:#bb7a75}.legend-highway{background:#d8b76f;box-shadow:0 0 0 1px #434a41c7;height:2px!important}.legend-ground{background:#d0e3e1}.legend-air{background:repeating-linear-gradient(90deg,#ece6c9 0 3px,#0000 3px 5px)}.legend-supply{background:#9fc0af}.legend-river{background:#77a9c7;height:2px!important}.legend-contour{background:repeating-linear-gradient(90deg,#c0a87e 0 3px,#0000 3px 5px);height:2px!important}.legend-academy{background:#9d5b49;transform:rotate(45deg);width:8px!important;height:8px!important}.legend-local-road{background:repeating-linear-gradient(90deg,#7c6d55 0 3px,#0000 3px 5px);height:1px!important}.cursor-order{z-index:30;color:#dde7e1;pointer-events:none;background:#26383ce0;border-left:2px solid #d0c49e;padding:7px 10px;position:absolute;bottom:38px;right:15px}.cursor-order span{color:#c6b98e;font-size:7px;display:block}.cursor-order b{margin-top:2px;font-size:9px;display:block}.map-source{z-index:18;color:#29342dc7;text-align:right;background:#ece6cfd6;max-width:280px;padding:3px 5px;font:5px Consolas,monospace;position:absolute;bottom:10px;right:12px}.semantic-overview .map-compass{color:#d8d4bf}.semantic-overview .map-compass i{background:#d8d4bf}.semantic-overview .map-compass i:before{border-bottom-color:#d8d4bf}.semantic-overview .map-compass span{border-top-color:#d8d4bf}.semantic-overview .map-legend,.semantic-overview .map-source{color:#e1ddcc;background:#272f2beb;border-color:#9297827a}.map-zoom-controls{z-index:24;color:#e9e7dc;background:#2d3531f0;border:1px solid #e0decdb8;width:38px;display:grid;position:absolute;top:13px;right:14px;overflow:hidden;box-shadow:0 3px 10px #11181547}.map-zoom-controls button{color:#edf1e9;cursor:pointer;background:0 0;border:0;place-items:center;width:38px;height:34px;padding:0;font:22px/1 Consolas,monospace;display:grid}.map-zoom-controls button:hover:not(:disabled),.map-zoom-controls button:focus-visible{color:#303733;background:#e4e0d0;outline:none}.map-zoom-controls button:disabled{color:#dee4db47;cursor:not-allowed}.map-zoom-controls output{color:#aebdb9;border-block:1px solid #becbc647;place-items:center;height:20px;font:6px Consolas,monospace;display:grid}.map-zoom-controls+.map-compass{top:126px;right:10px}.semantic-map-indicator{z-index:24;color:#1e2b24;border:1px solid #313e34a3;pointer-events:none;background:#eee8d1ed;border-left:3px solid #536e66;flex-direction:column;min-width:218px;padding:8px 10px 9px;transition:border-color .22s,background .22s;display:flex;position:absolute;top:13px;left:14px;box-shadow:0 4px 13px #1422252e}.semantic-map-indicator span{color:#56665d;letter-spacing:.1em;font:5px Consolas,monospace}.semantic-map-indicator b{letter-spacing:.08em;margin-top:3px;font-size:9px}.semantic-map-indicator small{color:#56645c;margin-top:2px;font-size:5px}.semantic-map-indicator dl{border-top:1px solid #3e4b4152;grid-template-columns:1fr 1fr;gap:4px;margin:6px 0 0;padding-top:5px;display:grid}.semantic-map-indicator dl div{align-items:center;gap:5px;display:flex}.semantic-map-indicator dt{color:#6e786f;font:5px Consolas,monospace}.semantic-map-indicator dd{color:#26352d;margin:0;font:600 5px Consolas,monospace}.semantic-map-indicator em{color:#6b4e2d;letter-spacing:.04em;margin-top:5px;font:600 5px Microsoft YaHei UI,sans-serif}.semantic-map-indicator.level-operational{border-left-color:#c2ae78}.semantic-overview .semantic-map-indicator{color:#eae6d7;background:#2a322ef2;border-color:#929884ad #929884ad #929884ad #c6a65e;box-shadow:0 4px 14px #050b094d}.semantic-overview .semantic-map-indicator span,.semantic-overview .semantic-map-indicator small,.semantic-overview .semantic-map-indicator dt{color:#abb3a7}.semantic-overview .semantic-map-indicator dd{color:#e3dfcf}.semantic-overview .semantic-map-indicator dl{border-top-color:#9ba18c4d}.semantic-overview .semantic-map-indicator em{color:#d2b574}.map-level-breadcrumb{z-index:25;background:#2d3531eb;border:1px solid #dadacb85;align-items:stretch;height:26px;display:flex;position:absolute;top:13px;left:50%;transform:translate(-50%);box-shadow:0 3px 10px #11181538}.map-level-breadcrumb button{color:#aebdb9;letter-spacing:.04em;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0 8px;font:6px Microsoft YaHei UI,sans-serif}.map-level-breadcrumb button.active{color:#303733;background:#e4e0d0}.map-level-breadcrumb button:disabled{color:#cad5d059;cursor:not-allowed}.map-level-breadcrumb i{color:#80938f;place-items:center;width:13px;font:12px Consolas,monospace;display:grid}.map-pan-hint{z-index:24;color:#ebe8da85;letter-spacing:.05em;pointer-events:none;background:#2d3531c2;border:1px solid #dadacb3d;padding:5px 7px;font-size:6px;transition:color .16s,border-color .16s;position:absolute;top:13px;right:61px}.map-pan-hint.active{color:#edf0e8;border-color:#e2e9df99}@keyframes semantic-map-swap{0%{opacity:.28;filter:saturate(.6)contrast(.88)}to{opacity:1;filter:saturate()contrast()}}.tactical-entry-overlay{z-index:80;color:#e7eee8;letter-spacing:.08em;text-align:center;background:radial-gradient(circle,#325254c7,#142227f7 58%);place-content:center;justify-items:center;display:grid;position:absolute;inset:0}.tactical-entry-overlay>span{color:#9fc0bd;margin-top:18px;font:7px Consolas,monospace}.tactical-entry-overlay>b{letter-spacing:.16em;margin-top:8px;font-size:18px;font-weight:600}.tactical-entry-overlay>small{color:#b8c7c1;margin-top:7px;font-size:7px}.entry-reticle{border:1px solid #b0d0c9b8;border-radius:50%;width:78px;height:78px;animation:.72s ease-out both tactical-lock;position:relative;box-shadow:0 0 0 13px #80aea714,inset 0 0 20px #83bcb429}.entry-reticle:before,.entry-reticle:after{content:"";background:#b9d8d1ad;position:absolute}.entry-reticle:before{width:108px;height:1px;top:38px;left:-16px}.entry-reticle:after{width:1px;height:108px;top:-16px;left:38px}.entry-reticle i{border:1px dashed #bbd8d270;border-radius:50%;position:absolute;inset:12px}.entry-reticle i:nth-child(2){background:#bcd6cd2e;border-style:solid;inset:27px}.entry-reticle span{background:#d7e8df;border-radius:50%;width:7px;height:7px;position:absolute;top:35px;left:35px;box-shadow:0 0 13px #b7d8cf}@keyframes tactical-lock{0%{opacity:0;transform:scale(1.55)rotate(-24deg)}to{opacity:1;transform:scale(1)rotate(0)}}.mode-observation .map-canvas{perspective:900px}.mode-observation .map-viewport{background:linear-gradient(#1d2e331f,#1d2e3347),url(/assets/maps/oregon-operational-relief-v2.png) 50%/cover no-repeat,#7d8b84}.mode-observation .semantic-operational .map-viewport{background:linear-gradient(#1b2b2f0d,#1b2b2f21),url(/assets/maps/mount-hood-usgs-operational-v1.png) 50%/100% 100% no-repeat,#cbd5ca}.mode-observation .map-detail-layer{background:linear-gradient(#1d2e331a,#1d2e333d),url(/assets/maps/oregon-operational-relief-v2.png) 50%/cover no-repeat,#7d8b84}.mode-observation .map-viewport:before,.mode-observation .map-legend{opacity:.2}.mode-observation .terrain-feature,.mode-observation .coverage,.mode-observation .map-unit{transform-origin:50%;transform:translate(-50%,-50%)rotateX(32deg)scaleY(.82)}.mode-observation .route{transform:none}.mode-observation .coverage{opacity:.35}.mode-observation .route-candidate,.mode-observation .map-unit-label small{display:none}.mode-observation .map-unit .unit-glyph{transform:scale(1.28)}.observation-caption{z-index:21;color:#e7ebe3;background:#2a393ac7;border-left:2px solid #c7bd9a;padding:9px 13px;position:absolute;top:16px;left:16px}.observation-caption span{color:#aebfbb;font-size:6px;display:block}.observation-caption b{margin-top:4px;font-size:10px;display:block}.observation-caption small{color:#b9c3bd;margin-top:2px;font-size:6px;display:block}.selected-unit-sheet{border-bottom:1px solid #bfc6c2;padding:12px}.selected-unit-head{grid-template-columns:42px 1fr;align-items:center;gap:10px;padding-bottom:10px;display:grid}.selected-unit-head .unit-glyph{color:#54768a;width:38px;height:34px}.selected-unit-head>div{min-width:0}.selected-unit-head span{color:#81908f;font-size:6px}.selected-unit-head h3{text-overflow:ellipsis;white-space:nowrap;margin:3px 0;font-size:10px;font-weight:650;overflow:hidden}.selected-unit-head small{color:#7e8b8a;font:7px Consolas,monospace}.selected-unit-sheet dl,.prediction-section dl{border:1px solid #c5cbc6;grid-template-columns:1fr 1fr;margin:0;display:grid}.selected-unit-sheet dl div,.prediction-section dl div{padding:6px 7px}.selected-unit-sheet dl div:nth-child(2n),.prediction-section dl div:nth-child(2n){border-left:1px solid #c5cbc6}.selected-unit-sheet dl div:nth-child(n+3){border-top:1px solid #c5cbc6}.selected-unit-sheet dt,.prediction-section dt{color:#879190;font-size:6px}.selected-unit-sheet dd,.prediction-section dd{color:#45585d;margin:2px 0 0;font-size:7px}.metric-grid{grid-template-columns:1fr 1fr;gap:8px 12px;margin-top:10px;display:grid}.status-metric{grid-template-columns:1fr auto;gap:3px;display:grid}.status-metric span{color:#7c8988;font-size:6px}.status-metric b{color:#475f68;font:8px Consolas,monospace}.status-metric>i{background:#c9ceca;grid-column:1/-1;height:3px}.status-metric>i em{background:#6e929d;height:100%;display:block}.status-metric.caution>i em{background:#a46e55}.command-section,.prediction-section{border-bottom:1px solid #bfc6c2;padding:10px 12px}.section-label{color:#657476;justify-content:space-between;margin-bottom:7px;font-size:7px;display:flex}.section-label small{color:#969f9d;font-size:6px}.command-grid{grid-template-columns:1fr 1fr;gap:4px;display:grid}.command-grid button{color:#4f6064;text-align:left;cursor:pointer;background:#f3f2eb;border:1px solid #bdc5c2;align-items:center;min-height:29px;padding:5px 7px;font-size:7px;display:flex}.command-grid button:hover{background:#e7ebe6;border-color:#70868b}.command-grid button i{color:#608495;border:1px solid #8aa2a9;place-items:center;width:17px;height:17px;margin-right:5px;font:9px Consolas,monospace;display:grid}.command-grid button.support i{color:#7b7654;border-color:#aaa277}.command-grid button.combat i{color:#8d5e5c;border-color:#aa807d}.command-grid button.pending{color:#f1f1e9;background:#426273;border-color:#365463}.command-grid button.pending i{color:#e8eee9;border-color:#c1d2d0}.target-prompt{color:#725f42;background:#e8e2d5;border-left:2px solid #ac7c41;margin:7px 0 0;padding:6px 7px;font-size:7px;line-height:1.4}.target-prompt i{background:#ad7c3f;border-radius:50%;width:5px;height:5px;margin-right:6px;display:inline-block}.prediction-score{grid-template-columns:1fr auto;gap:2px;margin-bottom:8px;display:grid}.prediction-score span{color:#768484;font-size:7px}.prediction-score strong{color:#436474;font:16px Consolas,monospace}.prediction-score>i{background:#c8ceca;grid-column:1/-1;height:4px}.prediction-score>i em{background:#648897;height:100%;transition:width .25s;display:block}.prediction-section dl div{border-top:0!important}.prediction-section dd.warning{color:#985849}.analysis-drawer{z-index:80;pointer-events:none;position:fixed;bottom:0;left:38px;right:38px}.analysis-toggle{color:#dce7e2;cursor:pointer;pointer-events:auto;background:#1f3738f5;border:1px solid #58726f;border-bottom:0;justify-content:space-between;align-items:center;width:172px;height:29px;margin-left:auto;padding:0 10px;font-size:7px;display:flex;box-shadow:0 -3px 12px #08171933}.analysis-toggle b{color:#a9c0b9;letter-spacing:.06em;font:6px Consolas,monospace}.analysis-drawer.expanded .analysis-toggle{color:#f0f3ed;background:#29484a}.analysis-row{pointer-events:auto;border:1px solid #748482;border-bottom:0;grid-template-columns:minmax(570px,1.04fr) minmax(450px,.96fr);min-height:124px;max-height:min(210px,34vh);display:grid;overflow:auto;box-shadow:0 -12px 30px #0b1a1d4d}.concept-panel{background:#e9e9e1;border-right:1px solid #9da8a7;grid-template-columns:minmax(180px,.8fr) minmax(300px,1.15fr) minmax(340px,1.45fr);align-items:stretch;display:grid}.concept-heading{border-right:1px solid #c1c7c3;flex-direction:column;justify-content:center;padding:12px 16px;display:flex}.concept-heading>span{color:#8d9695;font-size:6px}.concept-heading>div{margin-top:3px}.concept-heading h2{letter-spacing:.08em;margin:0;font-size:11px}.concept-heading p{color:#9a604d;margin:3px 0 0;font-size:7px}.concept-heading>i{color:#9a876a;margin-top:8px;font-size:6px;font-style:normal}.profile-tabs{border-right:1px solid #c1c7c3;align-content:center;gap:3px;padding:11px;display:grid}.profile-tabs button{color:#647171;text-align:left;cursor:pointer;background:#f2f1e9;border:1px solid #c1c7c3;padding:7px 9px;font-size:7px}.profile-tabs button.active{color:#f0f1ea;background:#506e7c;border-color:#3f5d6a;box-shadow:inset 3px 0 #a9c1c5}.profile-data{grid-template-columns:repeat(4,1fr);align-content:center;padding:12px 14px 30px;display:grid}.profile-data>div{border-left:1px solid #c2c7c3;flex-direction:column;padding:3px 11px;display:flex}.profile-data>div:first-child{border-left:0}.profile-data span{color:#7c8988;font-size:6px}.profile-data b{color:#3f5d68;margin-top:4px;font:15px Consolas,monospace}.profile-data b.warning{color:#a05749}.profile-data small{color:#959d9a;margin-top:2px;font-size:6px}.model-disclaimer{color:#858e8b;align-self:end;margin:0 14px 9px;font-size:6px;position:absolute}.concept-panel{position:relative}.event-log{background:#e3e5df;grid-template-columns:130px 1fr;min-width:0;display:grid}.event-log header{border-right:1px solid #bec5c1;padding:13px}.event-log header span{color:#8b9694;font-size:6px}.event-log header h2{letter-spacing:.08em;margin:5px 0;font-size:11px}.event-log header i{color:#668477;font-size:6px;font-style:normal}.event-log>div{align-content:center;padding:8px 13px;display:grid;overflow:hidden}.event-log p{color:#566465;grid-template-columns:34px 7px 1fr;align-items:center;gap:7px;min-height:18px;margin:0;font-size:6px;display:grid}.event-log time{color:#748281;font:7px Consolas,monospace}.event-log p>i{background:#6e8b80;border-radius:50%;width:4px;height:4px}.event-log p.warning>i{background:#a2664c}.event-log p.warning span{color:#805c4d}.event-log p.notice>i{background:#667f94}.system-footer{color:#86908e;background:#d4d9d5;justify-content:space-between;align-items:center;min-height:26px;padding:0 18px;font-size:6px;display:flex}.system-footer b{color:#8d604e;font-weight:500}@media (max-width:1250px){.system-header{grid-template-columns:46px minmax(280px,1fr) minmax(230px,.7fr) 180px}.system-title h1{font-size:15px}.workspace,.workspace.left-collapsed,.workspace.right-collapsed,.workspace.left-collapsed.right-collapsed{grid-template-columns:30px minmax(0,1fr) 30px}.analysis-row{grid-template-columns:1fr}.concept-panel{border-bottom:1px solid #9da8a7;border-right:0}}@media (max-width:980px){.system-header{grid-template-columns:50px 1fr 250px}.header-status{display:none}.timebar{grid-template-columns:130px 1fr 150px}.operation-phase{display:none}.workspace{grid-template-columns:30px minmax(0,1fr) 30px;height:calc(100vh - 100px)}.side-panel:not(.collapsed){width:min(290px,85vw);top:0;bottom:0}.workspace.left-collapsed,.workspace.right-collapsed,.workspace.left-collapsed.right-collapsed{grid-template-columns:30px minmax(0,1fr) 30px}.concept-panel{grid-template-columns:170px 220px 1fr}}@media (max-width:760px){.system-header{grid-template-columns:45px 1fr}.exercise-identity{display:none}.system-title{padding-inline:13px}.system-title h1{letter-spacing:.08em;font-size:14px}.timebar{grid-template-columns:130px 1fr}.risk-readout{display:none}.clock-block{padding-inline:12px}.speed-controls{gap:2px;padding-inline:8px;overflow-x:auto}.speed-controls button{min-width:43px}.speed-controls button.step{min-width:82px}.workspace{grid-template-columns:28px minmax(0,1fr) 28px;height:calc(100vh - 100px);min-height:540px}.workspace.left-collapsed,.workspace.right-collapsed,.workspace.left-collapsed.right-collapsed{grid-template-columns:28px minmax(0,1fr) 28px}.view-switch button{min-width:65px;padding-inline:6px}.map-toolbar{padding-inline:9px}.map-toolbar small{display:none}.analysis-row{display:block}.concept-panel{grid-template-columns:1fr}.concept-heading{border-bottom:1px solid #c1c7c3;border-right:0}.profile-tabs{border-bottom:1px solid #c1c7c3;border-right:0;grid-template-columns:repeat(3,1fr)}.profile-data{min-height:90px}.model-disclaimer{grid-column:1/-1;margin:0 12px 10px;position:static}.event-log{grid-template-columns:105px 1fr;min-height:120px}.analysis-drawer{left:31px;right:31px}}@media (prefers-reduced-motion:reduce){.map-unit,.map-unit.airborne,.operation-phase>i em,.prediction-score>i em{transition:none;animation:none}}
