:root{font-family:Georgia,Times New Roman,serif;color:#e0dfc9;background:#252b29;font-synthesis:none;--gold: #e8c77a;--line: #a4ab8b38;--warning: #c75a45;--paper: #e8d2aa;--paper-hi: #f1e2c4;--ink: #292e2b;--olive: #66765c;--steel: #76827f;--red: #9d3b2c;--brass: #cca04e;--bronze: #b97a4a;--silver: #b9bfbf}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}button{font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}button:disabled{cursor:default}#app{height:100dvh}.screen[hidden]{display:none}#mission-screen{height:100%;display:flex;flex-direction:column;padding:max(0px,env(safe-area-inset-top)) max(0px,env(safe-area-inset-right)) max(0px,env(safe-area-inset-bottom)) max(0px,env(safe-area-inset-left))}.masthead{display:flex;justify-content:space-between;align-items:center;padding:10px 24px;border-bottom:1px solid var(--line);font:10px Courier New,monospace;letter-spacing:1.4px;color:#b5b9a6}.masthead b{font-weight:400;opacity:.55;margin-left:18px}.instrument{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 24px;min-height:62px}.instrument h1{font:12px Courier New,monospace;letter-spacing:2px;margin:0;font-weight:400;color:#dddcc2}#mission-title{font:12px Courier New,monospace;white-space:nowrap}.targeting{display:flex;align-items:center;gap:14px;font:9px Courier New,monospace;letter-spacing:1px}.targeting strong{font:26px Courier New,monospace;color:var(--gold);min-width:85px;text-align:right;font-variant-numeric:tabular-nums}.targeting strong.urgent{color:#ef957e}#field{position:relative;flex:1;min-height:0;overflow:hidden;background:#667577}canvas{display:block;position:absolute;inset:0;width:100%;height:100%}.field-note{position:absolute;z-index:1;left:30px;top:22px;font:9px Courier New,monospace;letter-spacing:2px;color:#d5dac2;opacity:.8;pointer-events:none}.field-note span{margin:0 10px}#hits{position:absolute;inset:0;z-index:2}.tree-hit{position:absolute;background:none;border:0;padding:0;border-radius:0;-webkit-tap-highlight-color:transparent}.tree-hit:focus-visible{outline:1px dashed var(--gold);outline-offset:-3px;background:#e8c77a09}.targeting-track{position:absolute;bottom:0;height:3px;background:#172b2855;width:100%;z-index:3;pointer-events:none}.targeting-track i{display:block;background:var(--warning);width:100%;height:100%;transform-origin:left;transition:transform .1s linear}#overlay{position:absolute;inset:0;z-index:4;display:flex;justify-content:center;align-items:center;pointer-events:none}#overlay[hidden]{display:none}#overlay.blocking{pointer-events:auto;background:#17262333}.card{text-align:left;width:min(520px,90%);padding:34px 42px;background:#242e2bef;border:1px solid #9ba68b66;box-shadow:0 18px 70px #18232044;position:relative}.card:before{content:"";position:absolute;top:-1px;left:42px;width:52px;height:3px;background:var(--gold)}.eyebrow{font:10px Courier New,monospace;letter-spacing:2px;color:var(--gold);margin:0 0 20px}h2{font-weight:400;font-size:48px;line-height:1.02;letter-spacing:-1.5px;margin:0 0 18px}h2 em{font-style:normal;color:var(--gold)}.card p:not(.eyebrow){font-size:17px;line-height:1.5;color:#c5ccbb;margin:0 0 24px}.card button{min-height:48px;background:var(--gold);color:#252b29;border:0;padding:12px 22px;font:700 12px Courier New,monospace;letter-spacing:1px;display:flex;justify-content:space-between;align-items:center;gap:30px;pointer-events:auto}.card button:hover{background:#f4d993}.card p.historical{font-size:11px;line-height:1.6;margin:24px 0 12px;color:#a5b1a2}.card small{display:block;font:9px/1.5 Courier New,monospace;color:#9da993}.compact h2{font-size:44px}.compact small{margin-top:22px}.announcement{text-align:center;text-shadow:0 2px 12px #21312b}.announcement h2{font-size:42px}.announcement .eyebrow{margin-bottom:16px}.warning h2{font-size:76px;color:#f6b29d}.warning .eyebrow{color:#ffd2b0}.result-banner{position:absolute;bottom:30px;display:flex;align-items:center;gap:20px;padding:18px 24px;background:#25332cf2;border:1px solid #e8c77a66;max-width:90%}.result-banner>span{font-size:28px;color:var(--gold)}.result-banner b{font:12px Courier New,monospace;color:var(--gold);letter-spacing:1px}.result-banner p{font-size:14px;margin:7px 0 0}footer{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 24px;height:66px;flex-shrink:0;border-top:1px solid var(--line)}.report{min-width:0}#status{display:block;font-size:14px;color:#d1d5bf}#mistakes{display:block;font:10px Courier New,monospace;color:#9aa58e;margin-top:6px}nav{display:flex;gap:4px;flex-shrink:0}nav button{border:1px solid var(--line);background:transparent;color:#c3ccb8;font:11px Courier New,monospace;min-height:44px;padding:0 13px}nav button:hover{background:#e8c77a0d}nav button:disabled{opacity:.4}#debug:empty{display:none}#debug{position:absolute;left:14px;top:40px;max-width:94%;white-space:pre-wrap;z-index:5;pointer-events:none;background:#142321df;color:#f4d993;font:10px/1.6 monospace;padding:6px}@media(max-width:650px){.masthead{padding:7px 14px;font-size:8px;letter-spacing:.6px}.masthead b{display:none}.instrument{padding:7px 14px;min-height:56px;gap:8px}.instrument h1{font-size:9px;letter-spacing:.7px;text-align:center;max-width:120px}#mission-title{font-size:10px}.targeting{display:block;text-align:right;line-height:1.3}.targeting span{font-size:7px}.targeting strong{display:block;font-size:21px;min-width:62px}.field-note{left:22px;top:18px;font-size:7px;letter-spacing:1px}.card{padding:26px;width:88%}.card:before{left:26px}h2{font-size:38px}.card p:not(.eyebrow){font-size:15px;margin-bottom:18px}.card p.historical{font-size:10px;margin-top:20px}.card small{font-size:8px}.card .eyebrow{font-size:9px;margin-bottom:15px}.card button{font-size:11px;min-height:48px;padding:12px 18px;gap:16px}.compact h2{font-size:35px}.compact p{font-size:14px}footer{padding:7px 10px;gap:6px;height:94px}.report{flex:1}#status{font-size:11px;line-height:1.25}#mistakes{font-size:8px;line-height:1.4;margin-top:4px}nav{gap:3px}nav button{font-size:9px;padding:0 8px;min-width:44px}.result-banner{bottom:18px;padding:14px;gap:12px}.result-banner p{font-size:12px}.announcement h2{font-size:30px}.warning h2{font-size:60px}.desktop{display:none}}@media(max-height:500px){.masthead{padding-top:4px;padding-bottom:4px;font-size:8px}.instrument{min-height:42px;padding-top:3px;padding-bottom:3px}footer{height:48px;padding-top:2px;padding-bottom:2px}.card{width:min(650px,90%);padding:18px 26px}.intro h2{font-size:30px;line-height:1}.intro h2 br{display:none}.card .eyebrow{margin-bottom:10px}.card p:not(.eyebrow){font-size:13px;margin-bottom:12px}.card p.historical{margin-top:12px;font-size:10px}.card .historical br{display:none}.card small{font-size:8px}.card button{min-height:44px;padding:10px 18px}.compact h2{font-size:32px;margin-bottom:10px}.compact small{margin-top:10px}.field-note{top:14px}.targeting strong{font-size:20px}.result-banner{bottom:15px}.result-banner p{margin-top:4px}.card h2{margin-bottom:12px}}@media(prefers-reduced-motion:reduce){.targeting-track i{transition:none}}#mission-title{font-family:Georgia,serif;font-size:18px;font-style:italic;color:var(--paper);letter-spacing:0}#overlay{overflow-y:auto;padding:12px 0}#overlay.opaque{background:#17232099}#hits[hidden]{display:none}.card .actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.card button.secondary{background:transparent;color:var(--paper);border:1px solid #c9b99355}.card button.secondary:hover{background:#e8c77a14}.card.brief{width:min(560px,92%)}.card .rules{list-style:none;padding:0;margin:0 0 22px;font:12px/1.7 Courier New,monospace;color:#c5ccbb}.card .rules li:before{content:"— ";color:var(--gold)}.card .rules b{color:var(--gold);font-weight:400}.card small.session{margin-top:16px;color:#f0b39f}.under-fire .targeting-track i{animation:under-fire 1.4s ease-in-out infinite}@keyframes under-fire{50%{opacity:.55}}.card.result{width:min(600px,94%)}.result-body{display:flex;gap:26px;align-items:center}.medal-wrap{display:flex;flex-direction:column;align-items:center;gap:8px;flex-shrink:0}.medal-wrap b{font:11px Courier New,monospace;letter-spacing:1.5px;color:var(--gold)}.medal-wrap.stamp svg{animation:stamp .5s cubic-bezier(.2,1.4,.4,1) both}@keyframes stamp{0%{transform:scale(1.5) rotate(-12deg);opacity:0}}.result h2{font-size:38px;margin-bottom:14px}.stats{display:grid;grid-template-columns:repeat(3,auto);gap:4px 18px;margin:0 0 12px}.stats div{display:contents}.stats dt{grid-row:1;font:9px Courier New,monospace;letter-spacing:1px;color:#9da993;text-transform:uppercase}.stats dd{grid-row:2;margin:0;font-size:19px;color:var(--paper);font-variant-numeric:tabular-nums}.tags{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 10px!important}.tags span{font:700 9px Courier New,monospace;letter-spacing:1px;padding:4px 7px;background:var(--brass);color:var(--ink)}.card p.goal,.card p.unlock,.card p.unsaved{font-size:14px!important;margin:0 0 14px!important}.card p.unlock{color:var(--gold)!important;border-left:3px solid var(--gold);padding-left:10px}.card p.unlock.campaign{font-size:16px!important}.card p.unsaved{color:#f0b39f!important}.map-screen{position:fixed;inset:0;z-index:20;display:flex;flex-direction:column;background:radial-gradient(ellipse at 50% 40%,#39403b,#222826 80%) fixed,var(--ink);color:var(--paper);padding:env(safe-area-inset-top) env(safe-area-inset-right) 0 env(safe-area-inset-left)}.map-header{flex:none;display:flex;align-items:center;gap:18px;padding:10px 22px;border-bottom:1px solid #e8d2aa22}.brand{display:flex;flex-direction:column;min-width:0}.brand b{font-size:24px;font-style:italic;font-weight:400;color:var(--paper-hi);line-height:1.1}.brand span{font:9px Courier New,monospace;letter-spacing:1.6px;color:#b9ad8f;margin-top:3px}.summary{margin-left:auto;display:flex;gap:14px;align-items:center;font:11px Courier New,monospace;color:#cfc3a4;flex-wrap:wrap;justify-content:flex-end}.summary .rank{font:700 11px Courier New,monospace;letter-spacing:1.2px;text-transform:uppercase;color:var(--ink);background:var(--brass);padding:5px 9px}.map-header nav button,.settings-card button{border:1px solid #e8d2aa44;background:transparent;color:var(--paper);font:11px Courier New,monospace;min-height:44px;padding:0 13px}.map-header nav button:hover{background:#e8d2aa14}.map-notice{flex:none;margin:0;padding:8px 22px;font-size:13px;background:#9d3b2c33;color:#f4d7c6;border-bottom:1px solid #9d3b2c66}.map-notice[hidden]{display:none}.map-body{flex:1;min-height:0;display:flex;gap:18px;padding:16px 22px 20px}.map-scroll{flex:1;min-width:0;container-type:size;display:flex;align-items:center;justify-content:center}.map-canvas{position:relative;width:min(100cqw,100cqh * 16 / 9);aspect-ratio:16 / 9;container-type:inline-size;box-shadow:0 0 0 1px #5a4a32,0 18px 60px #0008;border-radius:3px;overflow:hidden}.map-art{position:absolute;inset:0;width:100%;height:100%}.map-art.portrait{display:none}.map-art .paper{fill:var(--paper)}.map-art .stain{fill:#b48d5a;opacity:.12}.map-art .wash.s1{fill:#879a58;opacity:.26}.map-art .wash.s2{fill:#86704f;opacity:.25}.map-art .wash.s3{fill:#66737c;opacity:.3}.map-art .trench{fill:none;stroke:#5b4a33;stroke-width:5;stroke-linejoin:round;opacity:.55}.map-art .wire{fill:none;stroke:#4a3f33;stroke-width:1.5;stroke-dasharray:3 5;opacity:.6}.map-art .crater{fill:#6e5a3f;fill-opacity:.22;stroke:#5b4a33;stroke-opacity:.45}.map-art .g-trunk{stroke:#3d3a2c;stroke-width:2;fill:none;stroke-linecap:round}.map-art .g-crown{fill:#75864c;fill-opacity:.8;stroke:#3d3a2c;stroke-width:1}.map-art .g-blossom{fill:#f6ece0}.map-art .g-stump{fill:#4b4232;fill-opacity:.85}.map-art .g-dead{stroke:#4a5154;stroke-width:2;fill:none;stroke-linecap:round}.map-art .house path{fill:#b48a5e;stroke:#3d3a2c;stroke-width:1.5}.map-art .house .roof{fill:none;stroke-width:3}.map-art .house .door{fill:#3d3a2c}.map-art .compass circle{fill:#e3caa0;stroke:#5a4a32;stroke-width:2}.map-art .compass .inner{fill:none;stroke-dasharray:2 4}.map-art .compass path{fill:#9d3b2c}.map-art .compass .ew{fill:#5a4a32}.map-art .compass text{font:700 16px Georgia,serif;fill:#5a4a32;text-anchor:middle}.map-art .route-under{fill:none;stroke:#f4e6c8;stroke-width:16;stroke-linecap:round;opacity:.55}.map-art .route{fill:none;stroke:#6b5a3e;stroke-width:4;stroke-dasharray:2 11;stroke-linecap:round;opacity:.55}.map-art .route.open{stroke:var(--red);stroke-dasharray:14 9;opacity:.85}.map-art .vignette{pointer-events:none}.sector-banner{position:absolute;left:var(--lx);top:var(--ly);transform:translate(-50%,-50%) rotate(-2deg);display:flex;flex-direction:column;align-items:center;padding:.5cqw 2.2cqw .6cqw;background:#f1e2c4;border:1px solid #5a4a32;box-shadow:0 2px #5a4a3255,0 0 0 4px #f1e2c466;color:var(--ink);pointer-events:none;white-space:nowrap}.sector-banner b{font-size:clamp(12px,1.7cqw,26px);letter-spacing:.08em;text-transform:uppercase}.sector-banner span{font-size:clamp(10px,1cqw,15px);font-style:italic;color:#5a4a32}.sector-banner.locked{filter:grayscale(.8);opacity:.78}.sector-banner.locked span:after{content:" · locked"}.sector-banner.celebrate,.node.celebrate{animation:celebrate .6s ease-in-out 3;box-shadow:0 0 0 4px var(--brass),0 0 26px var(--brass)}@keyframes celebrate{50%{transform:translate(-50%,-50%) scale(1.12)}}.nodes{position:absolute;inset:0;margin:0;padding:0;list-style:none}.node{--size: clamp(44px, 3.5cqw, 58px);position:absolute;left:var(--lx);top:var(--ly);width:var(--size);height:var(--size);transform:translate(-50%,-50%);border-radius:50%;padding:0;display:grid;place-items:center;font:bold calc(var(--size) * .36) Georgia,serif;color:var(--ink);background:radial-gradient(circle at 35% 30%,#f8ecd2,#dcc394);border:3px solid #5a4a32;box-shadow:0 3px #3d3220aa}.node.checkpoint{--size: clamp(52px, 4.4cqw, 72px)}.node.checkpoint:before{content:"";position:absolute;inset:-7px;border-radius:50%;border:2px dashed #5a4a32aa}.node[data-state=available]{background:radial-gradient(circle at 35% 30%,#c4563f,var(--red));color:var(--paper-hi);border-color:var(--brass)}.node[data-state=available]:after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--red);animation:node-pulse 1.8s ease-out infinite}@keyframes node-pulse{0%{transform:scale(.9);opacity:.9}to{transform:scale(1.35);opacity:0}}.node[data-state=locked]{background:#b8a581;color:#6c5d43;border-color:#8a7856;box-shadow:none}.node[data-state=completed][data-medal="1"]{border-color:var(--bronze)}.node[data-state=completed][data-medal="2"]{border-color:var(--silver)}.node[data-state=completed][data-medal="3"]{border-color:var(--brass);background:radial-gradient(circle at 35% 30%,#fff1c9,#e3c26e)}.node .state-icon{position:absolute;right:-5px;bottom:-5px;width:20px;height:20px;border-radius:50%;display:none;border:2px solid var(--ink)}.node[data-state=completed] .state-icon{display:block;background:var(--bronze)}.node[data-medal="2"] .state-icon{background:var(--silver)}.node[data-medal="3"] .state-icon{background:var(--brass)}.node[data-state=locked] .state-icon{display:block;background:#6c5d43 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Crect x='4' y='7' width='8' height='6' rx='1' fill='%23e8d2aa'/%3E%3Cpath d='M5.5 7V5.5a2.5 2.5 0 0 1 5 0V7' fill='none' stroke='%23e8d2aa' stroke-width='1.6'/%3E%3C/svg%3E") center / 14px no-repeat;border-color:#8a7856}.node.selected{outline:3px solid var(--ink);outline-offset:4px;z-index:2}.node:focus-visible{outline:3px solid var(--brass);outline-offset:5px;z-index:3}.node:hover:not([data-state=locked]){filter:brightness(1.08)}.mission-panel{flex:none;width:320px;align-self:center;background:linear-gradient(#f1e2c4,#e5cfa5);color:var(--ink);padding:24px 24px 20px;border:1px solid #5a4a32;box-shadow:0 14px 40px #0007;position:relative}.mission-panel:before{content:"";position:absolute;top:-1px;left:24px;width:52px;height:4px;background:var(--red)}.mission-panel .eyebrow{color:var(--red);margin-bottom:12px}.mission-panel h2{font-size:32px;letter-spacing:-.5px;margin:0 0 10px}.mission-panel .briefing{font-size:15px;line-height:1.45;margin:0 0 12px}.mission-panel .facts{font:11px Courier New,monospace;color:#5a4a32;margin:0 0 14px}.mission-panel .best{display:flex;gap:12px;align-items:center;padding:10px 0;border-top:1px solid #5a4a3244;border-bottom:1px solid #5a4a3244}.mission-panel .best b{display:block;font-size:15px}.mission-panel .best span{font-size:12px;color:#5a4a32}.mission-panel .goal,.mission-panel .locked-note{font-size:13px;margin:10px 0 0}.mission-panel .locked-note{color:var(--red);font-weight:700}.mission-panel .start{margin-top:16px;width:100%;min-height:52px;display:flex;justify-content:space-between;align-items:center;padding:0 20px;background:var(--red);color:var(--paper-hi);border:2px solid #6e2519;box-shadow:0 3px #5a1d13;font:700 13px Courier New,monospace;letter-spacing:1.5px}.mission-panel .start:hover{background:#b0452f}.mission-panel .start[aria-disabled=true]{background:#b8a581;border-color:#8a7856;color:#6c5d43;box-shadow:none;cursor:not-allowed}.mission-panel .medal-key{font-size:11px;line-height:1.5;color:#5a4a32;margin:14px 0 0}.mission-panel button:focus-visible{outline:3px solid var(--ink)}.title-overlay{position:absolute;inset:0;z-index:5;display:grid;place-items:center;background:#1c2220d9;overflow-y:auto;padding:16px}.title-overlay .card{width:min(540px,100%)}dialog#settings{border:1px solid #5a4a32;padding:0;background:linear-gradient(#f1e2c4,#e5cfa5);color:var(--ink);width:min(440px,calc(100vw - 32px));box-shadow:0 20px 70px #000a}dialog#settings::backdrop{background:#111a}.settings-card{padding:22px 24px}.settings-card h2{font-size:30px;margin:0 0 14px}.settings-card button{color:var(--ink);border-color:#5a4a3288}.settings-card button.danger{background:var(--red);color:var(--paper-hi);border-color:#6e2519;margin-right:8px}.settings-card .history{font-size:13px;line-height:1.5;color:#4a3f33}.settings-card .reset,.settings-card .reset-confirm{border-top:1px solid #5a4a3244;padding-top:10px;font-size:13px}.settings-card .reset-confirm[hidden]{display:none}@media(max-height:560px)and (orientation:landscape){.map-header{padding:4px 14px;gap:10px}.brand b{font-size:17px}.brand span,.map-notice,.sector-banner span{display:none}.summary{font-size:9px;gap:8px}.map-body{padding:8px 12px 10px;gap:10px}.mission-panel{width:250px;padding:12px 14px;align-self:stretch;overflow-y:auto}.mission-panel h2{font-size:21px}.mission-panel .briefing{font-size:12px;margin-bottom:6px}.mission-panel .eyebrow{margin-bottom:6px;font-size:8px}.mission-panel .medal-key,.mission-panel .facts{display:none}.mission-panel .best{padding:4px 0}.mission-panel .best svg{width:30px;height:30px}.mission-panel .start{margin-top:8px;min-height:44px}}@media(max-width:760px)and (orientation:portrait){.map-header{flex-wrap:wrap;padding:8px 14px;gap:6px 10px}.brand b{font-size:19px}.brand span{font-size:8px;letter-spacing:1px}.map-header nav{margin-left:auto}.map-header nav button{padding:0 10px;font-size:10px}.summary{order:3;width:100%;margin-left:0;justify-content:flex-start;font-size:10px;gap:10px}.map-notice{padding:6px 14px;font-size:12px}.map-body{display:block;padding:0;overflow:hidden;position:relative}.map-scroll{container-type:normal;display:block;height:100%;overflow-y:auto;overscroll-behavior:contain;padding:12px 14px 230px}.map-canvas{width:100%;aspect-ratio:400 / 1100}.map-art.landscape{display:none}.map-art.portrait{display:block}.node,.sector-banner{left:var(--px);top:var(--py)}.node{--size: 46px}.node.checkpoint{--size: 54px}.sector-banner{padding:4px 18px 5px}.sector-banner b{font-size:15px}.sector-banner span{font-size:11px}.mission-panel{position:absolute;left:0;right:0;bottom:0;width:auto;max-height:48%;overflow-y:auto;padding:14px 16px calc(14px + env(safe-area-inset-bottom));border-width:1px 0 0;box-shadow:0 -10px 30px #0008}.mission-panel:before{left:16px}.mission-panel .eyebrow{font-size:9px;margin-bottom:6px}.mission-panel h2{font-size:23px;margin-bottom:4px}.mission-panel .briefing{font-size:13px;margin-bottom:6px}.mission-panel .facts{margin-bottom:6px}.mission-panel .best{padding:6px 0}.mission-panel .best svg{width:32px;height:32px}.mission-panel .goal,.mission-panel .medal-key{display:none}.mission-panel .start{margin-top:10px;min-height:48px}}@media(max-width:650px){#mission-title{font-size:13px;max-width:92px}.result-body{gap:14px}.medal-wrap svg{width:72px;height:72px}.result h2{font-size:27px;margin-bottom:8px}.stats{gap:2px 10px}.stats dd{font-size:15px}.card.result{padding:20px 18px}.card .actions{gap:6px}.card .actions button{padding:10px 12px;gap:10px}.card .rules{font-size:11px;margin-bottom:14px}}@media(max-height:500px){.medal-wrap svg{width:64px;height:64px}.result h2{font-size:26px}.card.result{padding:14px 22px}}@media(prefers-reduced-motion:reduce){.node[data-state=available]:after,.under-fire .targeting-track i,.medal-wrap.stamp svg,.sector-banner.celebrate,.node.celebrate{animation:none}}#mission-screen[hidden],#map-screen[hidden]{display:none}.operations-map{height:100%;overflow-y:auto;padding:clamp(20px,4vw,64px);color:var(--ink);background:var(--paper);background-image:repeating-linear-gradient(0deg,#493e2410 0 1px,transparent 1px 5px)}.operations-header{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1400px;margin:auto}.operations-header .eyebrow{color:#695c3c}.operations-header h1{font-size:clamp(44px,5vw,78px);line-height:.88;margin:16px 0 32px;letter-spacing:-3px;font-weight:400}.operations-header h1 em{color:var(--red)}.service-record{display:grid;gap:8px;border-left:2px solid #9d3b2c66;padding:12px 0 12px 24px}.service-record small,.service-record span{font:11px/1.5 Courier New,monospace}.service-record strong{font-size:clamp(20px,3vw,34px);font-weight:400}.operations-chart{position:relative;max-width:1400px;margin:auto;border:1px solid #665f3b66;background:#f6e9c350}.chart-heading{position:relative;z-index:1;display:flex;justify-content:space-between;gap:12px;padding:14px 22px;border-bottom:1px solid #665f3b44;font:10px/1.5 Courier New,monospace;letter-spacing:1px}.chart-terrain{position:absolute;inset:40px 0 0;width:100%;height:calc(100% - 40px);color:#786a3d;opacity:.16;pointer-events:none}.operation-locations{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,3vw,48px);padding:32px}.operation-location{min-width:0;padding:0 12px 16px}.operation-pin{display:grid;place-items:center;width:52px;height:52px;border:2px solid currentColor;border-radius:50%;background:var(--paper-hi);box-shadow:0 0 0 5px #e8d2aa,0 0 0 6px #665f3b66;font:22px Georgia,serif;margin:8px 0 28px}.operation-location h2{font-size:clamp(22px,2.4vw,36px);font-weight:400;margin:4px 0 8px;letter-spacing:-1px}.operation-location .eyebrow{color:var(--red);font-size:10px;margin:0}.operation-motto{font-style:italic;font-size:17px;margin:0 0 16px}.operation-detail{font:11px/1.9 Courier New,monospace;min-height:48px}.operation-location.locked,.operation-location.locked .eyebrow{color:#777260}.operation-location button,.operations-footer button{min-height:44px;padding:12px 16px;border:1px solid var(--ink);background:var(--ink);color:var(--paper-hi);font:11px/1.4 Courier New,monospace;letter-spacing:.6px}.operation-location button{display:block;width:100%}.operation-location button:hover:not(:disabled){background:#4b5142}.operation-location button:disabled{color:#777260;background:#665f3b0c;border-color:#665f3b44}.operations-map button:focus-visible{outline-color:var(--red)}.operation-location .assisted-button{margin-top:10px;color:var(--ink);background:transparent}.operation-location .assisted-button:hover{color:var(--paper-hi)}.operation-medal{display:flex;align-items:center;gap:8px;font:11px Courier New,monospace;margin-bottom:16px}.operation-medal svg{width:32px;height:32px}.operations-footer{max-width:1400px;margin:24px auto 0;display:flex;justify-content:space-between;align-items:start;gap:24px;border-top:1px solid #665f3b44;padding:20px 0}.operations-footer>div{max-width:780px}.operations-footer b{font-size:20px;font-weight:400}.operations-footer p{font-size:13px;line-height:1.6;margin:8px 0}.operations-footer small{font:10px/1.6 Courier New,monospace}.operations-footer .history{font-style:italic;opacity:.7}.operations-footer nav{display:flex;gap:8px;flex-wrap:wrap}.drill-markers{display:flex;gap:5px;padding:0 24px 10px}.drill-markers span{flex:1;text-align:center;color:#9ca691;border-bottom:2px solid #a4ab8b38;padding:4px 0;font:10px Courier New,monospace}.drill-markers .done{color:var(--gold);border-color:var(--gold)}.drill-markers .current{color:#252b29;background:var(--gold);border-color:var(--gold)}.operation-award{display:flex;gap:20px;align-items:center;margin:20px 0;color:var(--gold);font-size:24px}.operation-award svg{width:64px;height:64px}@media(max-width:700px){.operations-header{align-items:start}.service-record{padding:8px 0 8px 12px;margin-top:12px;max-width:135px}.service-record span{font-size:10px}.operation-locations{grid-template-columns:1fr;padding:24px;gap:28px}.operation-location{position:relative;padding:0 0 24px 64px;border-bottom:1px solid #665f3b44}.operation-location:last-child{border-bottom:0;padding-bottom:0}.operation-pin{position:absolute;left:0;top:0;width:38px;height:38px;font-size:18px;margin:4px 0}.operation-location h2{font-size:27px}.operation-motto{margin-bottom:10px}.operation-detail{min-height:0;margin-bottom:12px}.chart-heading{flex-direction:column;gap:3px;font-size:9px}.operations-footer{flex-direction:column}.drill-markers{padding:0 10px 8px;gap:3px}.drill-markers span{font-size:9px}.operation-result{max-height:95%;overflow-y:auto;padding:20px}#mission-tag{font-size:9px;letter-spacing:.3px}}.exp-bar{display:flex;align-items:center;gap:10px;padding:0 24px 10px;font:10px Courier New,monospace;letter-spacing:1px;color:#9ca691}.exp-pick{display:flex;align-items:center;gap:8px}.exp-pick select{min-height:36px;background:#1c2321;color:#dddcc2;border:1px solid var(--line);font:12px Courier New,monospace;padding:0 8px}.exp-id{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exp-bar button{min-height:36px;border:1px solid var(--line);background:transparent;color:#dddcc2;font:11px Courier New,monospace;letter-spacing:1px;padding:0 12px;white-space:nowrap}.exp-bar .exp-sketch{border-color:var(--gold);color:var(--gold)}.exp-bar .exp-sketch[aria-expanded=true]{background:var(--gold);color:#252b29}.exp-row{position:relative;flex:1;min-height:0;display:flex}.exp-row #field{flex:1;min-width:0}.sketch-panel{position:absolute;z-index:6;top:8px;left:8px;width:52%;max-width:520px;background:#d8cfb2;color:#2f2a22;border:1px solid #6f6447;box-shadow:0 10px 30px #10181688;pointer-events:auto}.sketch-panel[hidden]{display:none}.sketch-panel header{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:4px 4px 4px 8px;font:700 9px Courier New,monospace;letter-spacing:1px}.sketch-close{min-height:32px;min-width:44px;border:1px solid #6f6447;background:transparent;color:#2f2a22;font:700 10px Courier New,monospace}.sketch-body{padding:0 4px;line-height:0}.sketch-canvas{display:block;position:static;width:100%}.sketch-note,.sketch-concealed{margin:0;padding:4px 8px 6px;font:9px/1.4 Courier New,monospace;color:#5a5141}.sketch-concealed{display:none}.sketch-panel.concealed .sketch-body,.sketch-panel.concealed .sketch-note{visibility:hidden;height:0}.sketch-panel.concealed .sketch-concealed{display:block}.sketch-panel.docked{position:static;width:clamp(300px,34vw,560px);max-width:none;flex-shrink:0;align-self:flex-start;margin:0 12px 0 0;box-shadow:none}.sketch-panel.docked .sketch-close{display:none}.sketch-panel.docked header{padding:8px 10px}.sketch-panel.docked .sketch-note{padding:8px 10px 10px}#overlay:has(.exp-result){align-items:flex-end}#overlay:has(.exp-result).blocking{background:transparent;pointer-events:none}.card.exp-result{pointer-events:auto;width:min(620px,94%);padding:18px 24px 16px;margin-bottom:10px;max-height:92%;overflow-y:auto}.card.exp-result:before{left:24px}.exp-result .eyebrow{margin-bottom:8px}.exp-result h2{font-size:30px;margin-bottom:8px}.exp-result.lost h2{color:#f6b29d}.card.exp-result p.why{font-size:15px;margin-bottom:10px}.exp-stats{display:flex;flex-wrap:wrap;gap:4px 18px;margin:0 0 12px;font:11px Courier New,monospace}.exp-stats dt{color:#9da993;font-size:9px;letter-spacing:1px;text-transform:uppercase}.exp-stats dd{margin:0;color:var(--gold);font-size:16px}.exp-result .actions{display:flex;gap:10px;flex-wrap:wrap}.exp-result .actions button{min-height:44px;gap:16px}.card button.secondary{background:transparent;color:#dddcc2;border:1px solid var(--line)}.exp-log{margin-top:12px;font:10px Courier New,monospace;color:#b5bba7}.exp-log summary{cursor:pointer;min-height:28px}.exp-log table{border-collapse:collapse;margin:6px 0;width:100%}.exp-log th,.exp-log td{border-bottom:1px solid #a4ab8b22;padding:2px 4px;text-align:left}.exp-brief .rules{margin-bottom:18px}.sketch-panel:not(.docked) .sketch-note{display:none}@media(max-width:650px){.exp-bar{padding:0 10px 6px;gap:6px}.exp-pick{flex:1;min-width:0}.exp-pick span,.exp-id{display:none}.exp-pick select{width:100%}.exp-bar button{padding:0 8px;letter-spacing:0}.card.exp-result{padding:12px 14px}.exp-result h2{font-size:22px}.card.exp-result p.why{font-size:13px;line-height:1.35}.exp-stats dd{font-size:13px}}@media(max-height:500px){.exp-bar{padding:0 10px 4px}.sketch-panel.docked{width:36vw;margin:0 8px 0 0}.sketch-panel.docked header{padding:4px 8px}.sketch-panel.docked .sketch-note{padding:4px 8px}.exp-bar button,.exp-pick select{min-height:30px}.sketch-panel{width:55%}.card.exp-result{padding:6px 12px;margin-bottom:4px;max-height:116px}.exp-result .eyebrow,.exp-result .exp-stats{display:none}.card.exp-result.dock-top{margin-top:4px}.exp-result .eyebrow{margin-bottom:2px}.exp-result .actions button{min-height:36px;padding:6px 14px}.exp-stats dd{font-size:12px}.exp-result h2{font-size:17px;margin-bottom:2px}.card.exp-result p.why{font-size:11px;line-height:1.3;margin-bottom:4px}.exp-stats{margin-bottom:6px}.exp-log{display:none}}@media(max-width:650px){.exp-bar .long,.sketch-panel .long{display:none}}.card.exp-result.dock-top{align-self:flex-start;margin:10px 0 0}.card.exp-result.dock-bottom{align-self:flex-end}.card.exp-result.dock-left{margin-right:auto;margin-left:12px}.card.exp-result.dock-right{margin-left:auto;margin-right:12px}.why-row{display:flex;gap:14px;align-items:flex-start;margin-bottom:10px}.why-row .compare{flex-shrink:0;width:176px;height:auto;border:1px solid #6f6447}.why-row p.why{margin:0}@media(max-width:650px),(max-height:500px){.why-row .compare{width:120px}.why-row{gap:10px}}.tree-no{position:absolute;left:0;right:0;bottom:2px;text-align:center;font:700 11px Courier New,monospace;color:#ecebd6;text-shadow:0 0 3px #000,0 0 2px #000;pointer-events:none}.view-badge{position:absolute;z-index:1;top:6px;left:8px;padding:3px 7px;font:700 10px Courier New,monospace;letter-spacing:1px;pointer-events:none;background:#1c2321cc;color:var(--gold);border:1px solid #a4ab8b55}.sketch-panel .view-badge{display:none;background:#d8cfb2e6;color:#3a3429;border-color:#6f6447}.view-badge.now{left:auto;right:8px}.sketch-panel.pure .view-badge{display:block}.sketch-panel.pure header,.sketch-panel.pure .sketch-note{display:none}.sketch-panel.pure .sketch-body{position:relative;padding:0}.exp-row.pure.with-sketch .sketch-panel.docked{order:-1;flex:1 1 0;width:auto;max-width:none;margin:0;align-self:stretch;border-width:0 1px 0 0}.exp-row.pure.with-sketch #field{flex:1 1 0}.sketch-panel.over{inset:0;width:auto;max-width:none;z-index:1;border:0;box-shadow:none}.sketch-panel.over.concealed{display:none}.view-toggle{display:flex;padding:0 10px 8px}.view-toggle[hidden]{display:none}.view-toggle button{-webkit-tap-highlight-color:transparent;flex:1;min-height:48px;border:1px solid var(--line);background:transparent;color:#dddcc2;font:700 14px Courier New,monospace;letter-spacing:2px}.view-toggle button+button{border-left:0}.view-toggle button small{display:block;font:9px Courier New,monospace;letter-spacing:1px;opacity:.75}.view-toggle button[aria-pressed=true]{background:var(--gold);border-color:var(--gold);color:#252b29}.pair-layer{position:absolute;inset:0;pointer-events:none}.pair-box{position:absolute;border:2px dashed #a3341f}.pair-box[hidden]{display:none}.same-mark{position:absolute;transform:translate(-50%,-50%);padding:1px 5px;font:700 10px Courier New,monospace;color:#3a3429;background:#d8cfb2e6;border:1px solid #6f6447}@media(max-height:500px){.view-toggle button{min-height:36px}}@media(max-width:650px){.card.pure-result{padding:10px 12px}.pure-result .eyebrow,.pure-result .exp-stats,.pure-result .exp-log{display:none}.pure-result h2{font-size:20px;margin-bottom:6px}.pure-result .why-row .compare{width:104px}}.shutter-screen .hud{display:flex;gap:6px;padding:8px 14px 6px;border-bottom:1px solid var(--line)}.hud-cell{display:flex;flex:1;flex-direction:column;min-width:0}.hud-cell.wave{flex:1.7}.hud-cell span{font:9px Courier New,monospace;letter-spacing:1px;color:#9ca691}.hud-cell strong{font:700 21px Courier New,monospace;color:var(--gold);font-variant-numeric:tabular-nums;white-space:nowrap}.hud-cell strong.urgent{color:#ef957e}.hud-cell strong.hot{color:#f6dc9d}.shutter-screen .exp-bar{padding-top:6px}.shutter-screen .field-note,.shutter-screen .tree-no{display:none}.shutter-screen .kbd .tree-no{display:block}.shutter-screen .shutter-canvas{z-index:0}.shutter-screen #hits{z-index:2}.shutter-screen .tree-hit:hover:not(:disabled){background:#e8c77a10}.banner{position:absolute;z-index:3;top:6px;left:0;right:0;text-align:center;font:700 12px Courier New,monospace;letter-spacing:2px;color:var(--gold);text-shadow:0 0 4px #000,0 0 2px #000;opacity:0;pointer-events:none}.banner small{display:block;margin-top:2px;font:9px Courier New,monospace;letter-spacing:1px;opacity:.85}.banner.show{opacity:1}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.shutter-screen #overlay.result.blocking{pointer-events:auto;background:#101816b3;align-items:center}.shutter-screen .card.exp-result{margin-bottom:0}.shutter-result h2{margin-bottom:4px}@media(max-width:650px){.shutter-screen .hud{padding:6px 10px 4px;gap:4px}.hud-cell strong{font-size:15px}.banner{font-size:10px;letter-spacing:1px}.shutter-screen .exp-id{display:none}}@media(max-height:500px){.shutter-screen .masthead{display:none}.shutter-screen .hud{padding:4px 14px 2px}.hud-cell span{font-size:8px}.hud-cell strong{font-size:16px}.shutter-screen .exp-bar{padding-top:3px}.shutter-screen footer{height:48px;padding:4px 14px}.shutter-screen #status{font-size:12px}.shutter-screen #detail{display:none}.shutter-screen nav button{min-height:40px}.shutter-screen .card.exp-result{max-height:none;padding:8px 16px;width:min(560px,96%)}.shutter-screen .card.exp-result .eyebrow,.shutter-screen .card.exp-result .exp-stats{display:block}.shutter-screen .card.exp-result .exp-stats{display:flex;margin-bottom:6px}.shutter-screen .card.exp-result h2{font-size:20px}.shutter-screen .card.exp-result .exp-log{display:none}.shutter-screen .card.brief{padding:10px 18px;max-height:96%;overflow-y:auto}.shutter-screen .card.brief p,.shutter-screen .card.brief li{font-size:12px;margin:4px 0}.shutter-screen .card.brief h2{font-size:20px;margin:2px 0}}.shutter-screen #detail{display:block;font:10px Courier New,monospace;color:#9aa58e;margin-top:6px}@media(max-width:420px){.shutter-screen .hud{gap:6px;padding:6px 8px 4px}.hud-cell strong{font-size:13px}.hud-cell.wave{flex:2.2}.hud-cell.wave strong{font-size:11px;letter-spacing:0}.banner small,.shutter-screen #detail{display:none}}
