:root{--cork: #c19a6e;--cork-dark: #8f6a43;--frame: #1c2530;--frame-2: #141b23;--paper: #f7f2e6;--paper-2: #eee6d3;--paper-3: #e4d9c1;--line: #ddd2bb;--line-strong: #b8aa8b;--ink: #1d2631;--ink-soft: #3c4653;--muted: #6a6355;--faint: #7d7563;--red: #b8322a;--red-deep: #8f241e;--red-wash: rgba(184, 50, 42, .09);--blue: #2c5b8f;--blue-wash: rgba(44, 91, 143, .1);--brass: #c9962e;--sticky: #f6dc78;--sticky-blue: #cfe0ee;--shadow-card: 0 1px 1px rgba(60, 38, 14, .18), 0 6px 14px -4px rgba(60, 38, 14, .35), 0 18px 30px -18px rgba(60, 38, 14, .45);--shadow-lift: 0 2px 2px rgba(60, 38, 14, .16), 0 14px 26px -6px rgba(60, 38, 14, .45), 0 30px 40px -24px rgba(60, 38, 14, .5);--accent: var(--red);--amber: var(--red);--amber-soft: #a99c80;--amber-wash: var(--red-wash);--phosphor: var(--blue);--panel: var(--paper);--panel-2: var(--paper-2);--sunk: var(--paper-2);--rule: var(--line);--rule-strong: var(--line-strong);--field: var(--paper);--stencil: "Big Shoulders Stencil", "Arial Narrow", Impact, sans-serif;--mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--sans: "IBM Plex Sans", system-ui, -apple-system, sans-serif;--marker: "Permanent Marker", "Comic Sans MS", cursive;--bar: 64px;--gap: 28px;--ease: cubic-bezier(.2, .75, .2, 1);--spring: cubic-bezier(.34, 1.56, .64, 1);color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background-color:var(--cork);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .32 0 0 0 0 .2 0 0 0 0 .09 0 0 0 3 -1.25'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='600'%3E%3Cfilter id='b'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.012' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .45 0 0 0 0 .3 0 0 0 0 .15 0 0 0 .9 -.3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23b)'/%3E%3C/svg%3E");color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}.num{font-family:var(--mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}h1,h2,h3,p,figure{margin:0}button{font:inherit;color:inherit;cursor:pointer;background:none}a{color:var(--red);text-underline-offset:3px}::selection{background:var(--sticky);color:var(--ink)}:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.stencil{font-family:var(--stencil);font-weight:800;letter-spacing:.01em;text-transform:uppercase}.code{font-family:var(--mono);font-size:10.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase}.marker{font-family:var(--marker);font-weight:400;letter-spacing:.01em}.app{display:flex;flex-direction:column;height:100%}.classbar{flex:none;display:flex;justify-content:space-between;align-items:center;height:26px;padding:0 20px;background:var(--frame-2);color:#b9b2a0;font:500 10px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase}.classbar a{color:#efe8d6;text-decoration:none;letter-spacing:.08em}.classbar a:hover{color:#fff}.classbar b{color:var(--sticky);font-weight:500}.topbar{display:flex;align-items:stretch;height:var(--bar);flex:0 0 var(--bar);background:var(--frame);color:#efe8d6;box-shadow:0 6px 14px -6px #140e068c;position:relative;z-index:5}.wordmark{display:flex;align-items:center;gap:12px;padding:0 24px 0 20px;white-space:nowrap}.wordmark-title{font-family:var(--stencil);font-weight:800;font-size:27px;line-height:.9;letter-spacing:.02em;text-transform:uppercase}.wordmark-sub{display:block;margin-top:4px;color:#e39087;font:500 9px/1 var(--mono);letter-spacing:.24em}.wordmark svg .ring{transform-origin:11px 11px;animation:spin 16s linear infinite}.ticker{position:relative;flex:1;min-width:0;display:flex;align-items:center;margin:14px 0;background:#f1ead6;color:var(--ink);box-shadow:inset 0 1px #fff6,0 1px 2px #0006;overflow:hidden}.ticker-label{flex:none;align-self:stretch;display:flex;align-items:center;gap:7px;padding:0 12px;background:var(--red);color:#fbeee9}.ticker-window{flex:1;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 20px,#000 calc(100% - 30px),transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 20px,#000 calc(100% - 30px),transparent)}.ticker-track{display:inline-flex;white-space:nowrap;animation:ticker var(--ticker-time, 60s) linear infinite}.ticker:hover .ticker-track{animation-play-state:paused}.ticker-item{padding:0 20px 0 0;color:var(--ink-soft);font:12px/36px var(--mono);letter-spacing:.03em}.ticker-item b{color:var(--ink);font-weight:600}.ticker-item .up{color:var(--blue)}.ticker-item .down{color:var(--red)}.ticker-item:after{content:"✕";margin-left:20px;color:var(--line-strong);font-size:9px}.clock{flex:none;display:flex;flex-direction:column;justify-content:center;padding:0 22px;font:500 16px/1 var(--mono);letter-spacing:.04em}.clock .code{margin-top:5px;color:#8f8a7c;font-size:9px}.led{display:inline-block;width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.led-live{animation:pulse 1.6s ease-in-out infinite}.nav{display:flex;align-items:flex-end;gap:4px;padding-right:16px}.nav button{position:relative;display:flex;flex-direction:column;justify-content:center;gap:2px;height:46px;padding:0 16px;border:0;border-radius:6px 6px 0 0;color:#c9c2b0;text-align:left;font-weight:500;font-size:13px;transition:color .2s,background-color .25s,transform .25s var(--ease)}.nav button .code{font-size:9px;color:#8f8a7c}.nav button:hover:not(:disabled){color:#fff;background:#ffffff0f}.nav button[aria-current=true]{color:var(--ink);background:var(--paper);transform:translateY(1px)}.nav button[aria-current=true] .code{color:var(--red)}.nav button:disabled{cursor:not-allowed;opacity:.4}.nav-badge{display:inline-grid;place-items:center;min-width:17px;height:17px;margin-left:6px;padding:0 4px;border-radius:50%;background:var(--red);color:#fff;font:600 10px/1 var(--mono);vertical-align:1px}.alert{display:flex;align-items:center;gap:12px;padding:10px 20px;background:var(--red);color:#fff7f2;font-weight:500;animation:drop .35s var(--ease)}.alert .btn{background:transparent;border-color:#fff7f2;color:#fff7f2;box-shadow:none}.screen{flex:1;min-height:0;overflow:auto}.screen-enter{min-height:100%;animation:screen-in .5s var(--ease)}.boot{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;background:#1c25308c;cursor:pointer;animation:boot-out .45s ease-in forwards;animation-delay:var(--boot-hold, 2.3s)}.boot-inner{position:relative;width:min(520px,calc(100% - 40px));padding:34px 34px 26px;background:var(--paper);box-shadow:var(--shadow-lift);font:13px/1.95 var(--mono);color:var(--ink-soft);animation:card-drop .7s var(--spring) backwards;transform:rotate(-1.2deg)}.boot-title{margin-bottom:18px;font-family:var(--stencil);font-weight:800;font-size:58px;line-height:.88;color:var(--ink);text-transform:uppercase}.boot-title small{display:block;margin-top:8px;color:var(--red);font:500 11px var(--mono);letter-spacing:.24em}.boot-line{display:flex;gap:10px;opacity:0;animation:boot-line .01s forwards}.boot-line .dots{flex:1;overflow:hidden;color:var(--line-strong);white-space:nowrap}.boot-line .ok{color:var(--blue)}.boot-line .warn{color:var(--red)}.boot-skip{margin-top:18px;color:var(--faint);font-size:11px}.card{position:relative;background:var(--paper);box-shadow:var(--shadow-card);animation:card-drop .6s var(--spring) backwards;animation-delay:calc(var(--i, 0) * 70ms)}.card-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 14px;padding:20px 24px 0}.card-title{font-family:var(--stencil);font-weight:800;font-size:22px;line-height:1;letter-spacing:.02em;text-transform:uppercase}.card-body{padding:16px 24px 24px}.pinned:before{content:"";position:absolute;top:-7px;left:50%;width:16px;height:16px;margin-left:-8px;border-radius:50%;background:radial-gradient(circle at 35% 32%,#f08a80 0 18%,var(--red) 46%,var(--red-deep) 100%);box-shadow:2px 4px 4px -1px #28140873;z-index:3;animation:pin-pop .45s var(--spring) backwards;animation-delay:calc(var(--i, 0) * 70ms + .35s)}.pinned.pin-blue:before{background:radial-gradient(circle at 35% 32%,#8fb3dc 0 18%,var(--blue) 46%,#1d3d62 100%)}.pinned.pin-brass:before{background:radial-gradient(circle at 35% 32%,#f3d488 0 18%,var(--brass) 46%,#8d6516 100%)}.pinned.pin-left:before{left:28px}.taped:after{content:"";position:absolute;top:-11px;left:50%;width:96px;height:24px;margin-left:-48px;background:#f0e4c4c7;box-shadow:0 1px 2px #3c260e33;transform:rotate(-2.5deg);z-index:3}.sticky{position:relative;padding:18px 18px 16px;background:var(--sticky);color:var(--ink);box-shadow:0 1px 1px #3c260e26,0 10px 18px -8px #3c260e80;transform:rotate(var(--tilt, -1.5deg));animation:note-in .6s var(--spring) backwards;animation-delay:calc(var(--i, 0) * 90ms + .15s);transition:transform .3s var(--ease),box-shadow .3s}.sticky:hover{transform:rotate(0) translateY(-3px);box-shadow:var(--shadow-lift)}.sticky-blue{background:var(--sticky-blue)}.sticky-paper{background:var(--paper)}.sticky .marker{display:block;font-size:26px;line-height:1.05}.sticky .code{display:block;margin-bottom:6px;color:#1d26319e;font-size:9.5px}.label{font-size:12px;font-weight:500;color:var(--muted)}.heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.heading .label{display:flex;align-items:center;gap:8px;color:var(--ink-soft);font:600 10.5px/1.2 var(--mono);letter-spacing:.15em;text-transform:uppercase}.heading .label:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--red);flex:none}.heading-code{color:var(--red)}.note{color:var(--muted);font-size:13.5px;line-height:1.6}.hint{color:var(--faint);font-size:12.5px;line-height:1.55}.rule{height:1px;background:var(--line);border:0;margin:14px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 16px;border:1.5px solid var(--ink);border-radius:3px;background:var(--paper);color:var(--ink);font:600 11.5px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;box-shadow:0 2px 0 var(--ink);transition:transform .12s,box-shadow .12s,background-color .2s,color .2s}.btn:hover:not(:disabled){background:#fffdf6;transform:translateY(-1px);box-shadow:0 3px 0 var(--ink)}.btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 0 0 var(--ink)}.btn:disabled{color:var(--faint);border-color:var(--line-strong);box-shadow:0 2px 0 var(--line-strong);cursor:not-allowed}.btn-primary{border-color:var(--red-deep);background:var(--red);color:#fff8f2;box-shadow:0 3px 0 var(--red-deep)}.btn-primary:hover:not(:disabled){background:#c93a31;box-shadow:0 4px 0 var(--red-deep)}.btn-primary:active:not(:disabled){box-shadow:0 0 0 var(--red-deep)}.btn-primary:disabled{background:var(--paper-3)}button.btn[data-busy=true][data-busy]{border-color:var(--ink);color:var(--ink);background:var(--sticky) repeating-linear-gradient(-45deg,rgba(29,38,49,.14) 0 9px,transparent 9px 18px);background-size:200% 100%;box-shadow:0 2px 0 var(--ink);animation:hazard .8s linear infinite}.btn-sm{min-height:32px;padding:4px 11px;font-size:10.5px}.btn-ghost{box-shadow:none;border-style:dashed;border-color:var(--line-strong);color:var(--ink-soft)}.btn-ghost:hover:not(:disabled){box-shadow:none;border-color:var(--ink)}input[type=text],input[type=number],select,textarea{font:inherit;color:var(--ink);background:#fffdf7;border:1.5px solid var(--line-strong);border-radius:3px;padding:7px 10px;width:100%;min-height:40px;caret-color:var(--red);transition:border-color .2s,box-shadow .2s}select{font-family:var(--mono);font-size:12.5px}textarea{resize:vertical;padding:14px 16px;font:15px/1.7 var(--mono);background:#fffdf7 repeating-linear-gradient(transparent 0 calc(1.7em - 1px),#2c5b8f29 calc(1.7em - 1px),#2c5b8f29 1.7em);background-position:0 13px}input::placeholder,textarea::placeholder{color:#9b927f;opacity:1}input:hover,select:hover,textarea:hover{border-color:var(--muted)}input:focus,select:focus,textarea:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-wash)}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:26px;background:none;cursor:grab;--c: var(--red);--fill: 0%}input[type=range]:active{cursor:grabbing}input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:linear-gradient(90deg,var(--c) var(--fill),var(--paper-3) var(--fill));box-shadow:inset 0 1px 1px #3c260e40}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;margin-top:-7px;border-radius:50%;border:2px solid var(--ink);background:radial-gradient(circle at 38% 34%,#fff 0,#fff 20%,#efe6cf 60%);box-shadow:0 2px 3px #28180866;transition:transform .2s var(--spring)}input[type=range]:hover::-webkit-slider-thumb,input[type=range]:focus::-webkit-slider-thumb{transform:scale(1.15)}input[type=range]:active::-webkit-slider-thumb{transform:scale(1.25)}input[type=range]::-moz-range-track{height:6px;border-radius:3px;background:var(--paper-3)}input[type=range]::-moz-range-progress{height:6px;border-radius:3px;background:var(--c)}input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;border:2px solid var(--ink);background:#f7f2e6}table{width:100%;border-collapse:collapse}thead th{position:sticky;top:0;z-index:2;background:var(--paper);border-bottom:1.5px solid var(--ink);padding:12px 12px 10px;font:600 10px/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:right;white-space:nowrap}thead th:first-child,thead th.left{text-align:left}thead th button{border:0;padding:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit}thead th button:hover,thead th[aria-sort] button{color:var(--red)}thead th[aria-sort=descending] button:after{content:" ▾"}thead th[aria-sort=ascending] button:after{content:" ▴"}tbody td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}tbody td:first-child,tbody td.left{text-align:left}tbody tr{transition:background-color .15s}tbody tr:hover{background:#e4d9c180}tbody tr[aria-selected=true]{background:var(--red-wash);box-shadow:inset 4px 0 0 var(--red)}.bar-track{height:6px;border-radius:3px;background:var(--paper-3);overflow:hidden}.bar-fill{height:100%;border-radius:3px;background:var(--red);transform-origin:left;transition:width .5s var(--ease),background-color .3s;animation:grow-x .9s var(--ease) backwards}.tag{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border:1.5px solid var(--line-strong);border-radius:3px;color:var(--muted);font:600 10px/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.tag-accent,.tag-warn{border-color:var(--red);color:var(--red)}.tag-ok{border-color:var(--blue);color:var(--blue)}.tag-solid{background:var(--red);border-color:var(--red);color:#fff}.stamp{display:inline-block;padding:4px 10px;border:2.5px solid currentColor;border-radius:4px;color:var(--red);font:700 12px/1.1 var(--mono);letter-spacing:.16em;text-transform:uppercase;transform:rotate(-6deg);opacity:.86;animation:stamp .45s var(--spring) backwards;animation-delay:.25s}.caveat{display:flex;gap:12px;padding:14px 16px;background:var(--sticky);color:var(--ink-soft);font-size:13px;line-height:1.55;box-shadow:0 1px 1px #3c260e26,0 8px 14px -8px #3c260e73;transform:rotate(-.8deg)}.caveat-mark{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--red);color:#fff;font:700 12px/1 var(--mono)}.rise{animation:rise .6s var(--ease) backwards;animation-delay:calc(var(--i, 0) * 45ms)}.reveal{opacity:0;transform:translateY(18px) rotate(-.6deg);transition:opacity .7s var(--ease),transform .7s var(--spring)}.reveal.is-in{opacity:1;transform:none}.cursor{display:inline-block;width:.55em;height:1.05em;margin-left:2px;vertical-align:text-bottom;background:var(--red);animation:blink .9s steps(1) infinite}.board{max-width:1640px;margin:0 auto;padding:40px 40px 80px}.board>*+*{margin-top:var(--gap)}.sitrep-band{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:32px;padding-bottom:8px}.sitrep-kicker{display:inline-flex;align-items:center;gap:10px;padding:5px 12px;background:var(--frame);color:#efe8d6;box-shadow:var(--shadow-card)}.sitrep-lead{margin-top:16px;font-family:var(--stencil);font-weight:800;font-size:clamp(42px,5vw,76px);line-height:.88;letter-spacing:.005em;text-transform:uppercase;color:var(--ink)}.sitrep-lead .holds{display:block;color:var(--red);font-size:.55em;margin-top:6px}.notes{display:flex;gap:18px;align-items:flex-start;padding-top:10px}.notes .sticky{width:172px;min-height:118px}.wr-main{display:grid;grid-template-columns:290px minmax(0,1fr) 330px;gap:var(--gap);align-items:start}.wr-lower{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:var(--gap);align-items:start}.wr-side{display:grid;gap:var(--gap)}.section-title{display:flex;align-items:baseline;gap:16px;margin-bottom:18px}.section-title h2{display:inline-block;padding:6px 14px 5px;background:var(--paper);box-shadow:var(--shadow-card);font-family:var(--stencil);font-weight:800;font-size:24px;line-height:1;letter-spacing:.02em;text-transform:uppercase;transform:rotate(-1deg)}.section-title .hint{color:#3f3426}.map-card .card-body{padding-top:8px}.map-wrap{position:relative;background:#f2ecdc;border:1.5px solid var(--line-strong);background-image:linear-gradient(rgba(44,91,143,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(44,91,143,.07) 1px,transparent 1px);background-size:40px 40px;background-position:center}.map-wrap svg{display:block;width:100%;height:auto;padding:18px 10px 14px}.map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:16px}.map-legend{display:flex;align-items:center;gap:12px}.ramp{display:flex;width:140px;height:8px;border-radius:4px;overflow:hidden}.ramp>div{flex:1;animation:fade-in .4s ease backwards;animation-delay:calc(var(--i) * 25ms)}.map-land{fill:#e9dfc6;stroke:none}.map-border{fill:none;stroke:#c5b48f;stroke-width:.7;vector-effect:non-scaling-stroke}.map-outline{fill:none;stroke:#7e6a49;stroke-width:1.2;vector-effect:non-scaling-stroke}.map-graticule{fill:none;stroke:#2c5b8f2e;stroke-width:.7;stroke-dasharray:3 6;vector-effect:non-scaling-stroke}.pin{cursor:pointer}.pin-drop{animation:pin-drop .55s var(--spring) backwards;animation-delay:calc(var(--i, 0) * 14ms + .25s)}.pin-head{stroke:#2816088c;stroke-width:.8;transition:fill .5s}.pin-shine{fill:#ffffff8c;pointer-events:none}.pin-shadow{fill:#3c260e47;pointer-events:none}.pin-lift{transition:transform .25s var(--spring)}.pin:hover .pin-lift{transform:translate(-2px,-4px)}.string{fill:none;stroke:var(--red);stroke-width:2;stroke-linecap:round;pointer-events:none;filter:drop-shadow(1px 3px 1.5px rgba(60,38,14,.35));animation:draw 1.4s var(--ease) backwards;animation-delay:.8s}.map-label{pointer-events:none;animation:note-in .5s var(--spring) backwards;animation-delay:calc(var(--i, 0) * .12s + 1s)}.map-label rect{fill:var(--paper);stroke:var(--line-strong);stroke-width:1;vector-effect:non-scaling-stroke}.map-label text{font:600 15px var(--mono);letter-spacing:.03em;text-transform:uppercase;fill:var(--ink)}.map-label .rk{fill:var(--red)}.pencil{fill:none;stroke:var(--blue);stroke-width:3;stroke-linecap:round;opacity:.85;pointer-events:none;animation:draw .8s var(--ease) backwards}.flag{pointer-events:none;animation:flag-plant .6s var(--spring) backwards}.flag-cloth{transform-box:fill-box;transform-origin:left center;animation:flutter 2.4s ease-in-out infinite}.map-readout{position:absolute;pointer-events:none;padding:6px 10px;background:var(--frame);color:#f7f2e6;font:500 11.5px var(--mono);white-space:nowrap;z-index:3;box-shadow:var(--shadow-card);animation:fade-in .15s ease}.map-readout:after{content:"";position:absolute;left:50%;bottom:-5px;margin-left:-5px;border:5px solid transparent;border-bottom:0;border-top-color:var(--frame)}.segmented{display:inline-flex;border:1.5px solid var(--ink);border-radius:3px;overflow:hidden}.segmented button{padding:6px 12px;border:0;color:var(--ink-soft);font:600 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;transition:background-color .2s,color .2s}.segmented button+button{border-left:1.5px solid var(--ink)}.segmented button:hover{background:var(--paper-2)}.segmented button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.alloc-row{padding:10px 0 8px}.alloc-row+.alloc-row{border-top:1px dashed var(--line)}.chips{display:flex;flex-wrap:wrap;gap:3px;min-height:14px;margin:7px 0 2px}.chip{width:12px;height:12px;border-radius:50%;border:1.5px solid rgba(20,14,6,.45);box-shadow:inset 0 0 0 2px #ffffff59,0 1px 1px #2818084d;animation:chip-in .4s var(--spring) backwards}.chip-ghost{background:transparent!important;border:1.5px dashed var(--line-strong);box-shadow:none}.swatch{display:inline-block;width:10px;height:10px;margin-right:8px;border-radius:50%;border:1.5px solid rgba(20,14,6,.4);flex:none}.allocation{display:flex;height:10px;border-radius:5px;overflow:hidden;background:var(--paper-3)}.allocation>div{height:100%;transition:width .4s var(--ease);box-shadow:inset -1.5px 0 0 var(--paper)}.allocation-sm{height:6px;margin:10px 0 8px}.coa-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:22px}.playing-card{position:relative;display:flex;flex-direction:column;min-height:210px;padding:16px 16px 14px;border:0;border-radius:10px;background:var(--paper);text-align:left;box-shadow:var(--shadow-card);transform:rotate(var(--tilt, 0deg));transition:transform .35s var(--spring),box-shadow .35s;animation:deal .6s var(--spring) backwards;animation-delay:calc(var(--i, 0) * 80ms + .2s)}.playing-card:before{content:"";position:absolute;top:6px;right:6px;bottom:6px;left:6px;border:1.5px solid var(--line);border-radius:6px;pointer-events:none}.playing-card:hover{transform:translateY(-10px) rotate(0);box-shadow:var(--shadow-lift)}.playing-card[aria-pressed=true]{transform:translateY(-14px) rotate(0);box-shadow:var(--shadow-lift),0 0 0 3px var(--red)}.playing-card[aria-pressed=true]:before{border-color:#b8322a59}.pc-corner{display:flex;justify-content:space-between;align-items:flex-start;font:700 13px/1 var(--mono);color:var(--red)}.pc-suit{font-size:16px}.pc-name{margin:14px 0 6px;font-family:var(--stencil);font-weight:800;font-size:24px;line-height:.95;text-transform:uppercase;color:var(--ink)}.pc-played{position:absolute;right:14px;bottom:40px}.ranking-bar{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.ranking-scroll{position:relative;overflow:auto;max-height:620px;margin:0 -24px -24px;padding:0 24px;border-top:1px solid var(--line)}.token{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1.5px solid var(--ink);background:radial-gradient(circle at 38% 32%,#fffdf6 0,#fffdf6 25%,#ece3cc 75%);box-shadow:0 2px 0 var(--ink-soft);font:600 12px/1 var(--mono);color:var(--ink)}.token-1{border-color:var(--red-deep);background:radial-gradient(circle at 38% 32%,#e2675d 0 20%,var(--red) 70%);box-shadow:0 2px 0 var(--red-deep);color:#fff}.token-top{border-color:var(--red);color:var(--red)}.delta{display:inline-block;min-width:34px;font-size:11px;text-align:right}.delta-up{color:var(--blue)}.delta-down{color:var(--red)}.pin-btn{display:inline-grid;place-items:center;width:30px;height:30px;border:1.5px dashed var(--line-strong);border-radius:50%;color:var(--faint);font-size:14px;line-height:1;transition:border-color .2s,color .2s,background-color .2s,transform .25s var(--spring)}.pin-btn:hover{border-color:var(--red);color:var(--red);transform:scale(1.1)}.pin-btn[aria-pressed=true]{border:0;background:radial-gradient(circle at 35% 32%,#f08a80 0 18%,var(--red) 46%,var(--red-deep) 100%);box-shadow:1px 3px 3px -1px #28140873;color:transparent;animation:pin-pop .4s var(--spring)}.dossier-name{font-family:var(--stencil);font-weight:800;font-size:40px;line-height:.9;letter-spacing:.01em;text-transform:uppercase;word-break:break-word}.gauges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:20px}.gauge{padding:12px 10px 10px;background:var(--paper-2);border-radius:4px}.gauge .num{display:block;font-size:25px;font-weight:500;line-height:1.05;letter-spacing:-.02em}.gauge .code{display:block;margin-top:6px;color:var(--faint);font-size:9px}.factor-row{padding:9px 0}.factor-row+.factor-row{border-top:1px dashed var(--line)}.strategy{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:0 64px;align-items:start;max-width:1340px;margin:0 auto;padding:56px 40px 96px}.strategy-aside{position:sticky;top:32px;display:grid;gap:var(--gap)}.hero-title{font-family:var(--stencil);font-weight:800;font-size:clamp(48px,5.8vw,92px);line-height:.86;letter-spacing:.005em;text-transform:uppercase;color:var(--ink)}.hero-title span{display:block;animation:rise .7s var(--ease) backwards}.hero-title span:nth-child(2){animation-delay:.08s}.hero-title span:nth-child(3){animation-delay:.16s;color:var(--red)}.kicker{display:inline-flex;align-items:center;gap:10px;margin-bottom:22px;padding:5px 12px;background:var(--frame);color:#efe8d6;box-shadow:var(--shadow-card)}.lede{max-width:600px;margin-top:26px;padding:18px 22px;background:#f7f2e6db;box-shadow:var(--shadow-card);color:var(--ink-soft);font-size:15.5px;line-height:1.7;animation:card-drop .7s var(--spring) backwards;animation-delay:.25s}.para-head{display:flex;align-items:center;gap:14px;padding:22px 26px 0}.para-num{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--ink);color:var(--paper);font-family:var(--stencil);font-weight:800;font-size:20px;line-height:1}.para-title{flex:1;font-family:var(--stencil);font-weight:800;font-size:24px;line-height:1;letter-spacing:.02em;text-transform:uppercase}.para-body{padding:18px 26px 26px}.field{display:block;padding:12px 0}.field .code{display:block;margin-bottom:7px;color:var(--muted)}.intel-row{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px dashed var(--line)}.intel-row:last-child{border-bottom:0}.intel-row .note{flex:1}.reading{max-width:940px;margin:0 auto;padding:56px 40px 96px}.wide{max-width:1340px;margin:0 auto;padding:48px 40px 96px}.sheet{padding:40px 48px 48px}.screen-title{font-family:var(--stencil);font-weight:800;font-size:clamp(42px,4.8vw,72px);line-height:.88;letter-spacing:.005em;text-transform:uppercase;max-width:18ch;animation:rise .6s var(--ease) backwards}.empty{position:relative;max-width:620px;margin:12vh auto 0;padding:40px 40px 36px;background:var(--paper);box-shadow:var(--shadow-lift);transform:rotate(-.8deg);animation:card-drop .7s var(--spring) backwards}.empty .screen-title{font-size:46px;margin:14px 0}.stack>*+*{margin-top:var(--gap)}.row{display:flex;align-items:center;gap:10px}.spread{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}.big{font-size:34px;font-weight:500;letter-spacing:-.02em;line-height:1.05}.mid{font-size:18px;font-weight:600}.readouts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.readouts>div{padding:14px 16px;background:var(--paper-2);border-radius:4px}.readouts .code{display:block;margin-top:6px;color:var(--faint);font-size:9.5px}.ring-track{fill:none;stroke:var(--paper-3)}.ring-value{fill:none;stroke:var(--red);transition:stroke-dashoffset 1.1s var(--ease)}.interval{transform-origin:var(--ox) var(--oy);animation:grow-x .8s var(--ease) backwards;animation-delay:calc(var(--i) * 45ms + .15s)}.dot-move{transition:transform .8s var(--spring),opacity .3s}.dice{display:flex;align-items:center;gap:18px}.die{width:52px;height:52px;border-radius:10px;background:var(--paper);border:2px solid var(--ink);box-shadow:0 4px 0 var(--ink-soft),0 10px 16px -6px #28180880;animation:tumble .5s ease-in-out infinite}.die:nth-child(2){animation-duration:.62s;animation-direction:reverse}.die:nth-child(3){animation-duration:.55s}.die circle{fill:var(--red)}.chain{list-style:none;margin:0;padding:0;position:relative}.chain:before{content:"";position:absolute;left:17px;top:18px;bottom:18px;width:2px;background:var(--red);opacity:.7}.chain li{position:relative;display:grid;grid-template-columns:36px 1fr;gap:18px;padding:12px 0}.chain-node{position:relative;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1.5px solid var(--ink);background:var(--paper);color:var(--ink);font:600 12px var(--mono);z-index:1;transition:background-color .4s .3s,color .4s .3s}.chain li.reveal.is-in .chain-node{background:var(--ink);color:var(--paper)}.graph-paper{background-color:#fbf8ef;background-image:linear-gradient(rgba(44,91,143,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(44,91,143,.08) 1px,transparent 1px);background-size:16px 16px;border:1.5px solid var(--line-strong)}.spacer{display:none;flex:1}@media (max-width: 1400px){.wr-main{grid-template-columns:280px minmax(0,1fr)}.wr-main>:last-child{grid-column:1 / -1}.wr-lower{grid-template-columns:minmax(0,1fr)}}@media (max-width: 1280px){.ticker{display:none}.topbar .spacer{display:block}}@media (max-width: 1080px){.strategy{grid-template-columns:minmax(0,1fr)}.strategy-aside{position:static;margin-top:40px}.wr-main,.sitrep-band{grid-template-columns:minmax(0,1fr)}}@media (max-width: 760px){:root{--gap: 20px}.classbar>:nth-child(2){display:none}.topbar{height:auto;flex-basis:auto;flex-wrap:wrap}.wordmark{height:56px;flex:1}.nav{width:100%;overflow-x:auto;padding:0 8px}.nav button{flex-shrink:0;height:44px;padding-inline:12px}.board,.strategy,.wide,.reading{padding:28px 16px 56px}.card-head{padding:18px 18px 0}.card-body{padding:14px 18px 20px}.para-head{padding:18px 18px 0}.para-body{padding:14px 18px 20px}.sheet{padding:28px 20px 32px}.hero-title{font-size:48px}.grid-2{grid-template-columns:1fr}.spread,.notes{flex-wrap:wrap}.notes .sticky{width:calc(50% - 9px);min-height:0}.ranking-scroll{margin:0 -18px -20px;padding:0 18px}.coa-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.playing-card{min-height:180px}.row{flex-wrap:wrap}.empty{margin-top:24px;padding:28px 22px}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ticker{to{transform:translate(-50%)}}@keyframes pulse{50%{opacity:.25}}@keyframes blink{50%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}@keyframes fade-in{0%{opacity:0}}@keyframes drop{0%{transform:translateY(-100%)}}@keyframes screen-in{0%{opacity:0}}@keyframes grow-x{0%{transform:scaleX(0)}}@keyframes card-drop{0%{opacity:0;transform:translateY(-26px) rotate(-2.5deg) scale(1.02)}60%{opacity:1}}@keyframes note-in{0%{opacity:0;transform:translateY(-16px) rotate(6deg) scale(.9)}}@keyframes pin-pop{0%{opacity:0;transform:translateY(-12px) scale(1.8)}}@keyframes pin-drop{0%{opacity:0;transform:translateY(-34px)}50%{opacity:1}}@keyframes chip-in{0%{opacity:0;transform:translateY(-10px) scale(.4)}}@keyframes deal{0%{opacity:0;transform:translateY(60px) rotate(8deg)}}@keyframes stamp{0%{opacity:0;transform:rotate(-6deg) scale(2.2)}70%{opacity:.9}}@keyframes draw{0%{stroke-dashoffset:var(--len, 1000)}}@keyframes flag-plant{0%{opacity:0;transform:translateY(-40px)}55%{opacity:1}}@keyframes flutter{50%{transform:skewY(-6deg) scaleX(.92)}}@keyframes tumble{0%{transform:rotate(0) translateY(0)}25%{transform:rotate(18deg) translateY(-10px)}50%{transform:rotate(-8deg) translateY(0)}75%{transform:rotate(-20deg) translateY(-6px)}}@keyframes hazard{to{background-position:-51px 0}}@keyframes boot-line{to{opacity:1}}@keyframes boot-out{to{opacity:0;visibility:hidden}}@keyframes ring-fill{0%{stroke-dashoffset:var(--c)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}.boot{display:none}}.needle{animation:needle 2.6s var(--ease) backwards;animation-delay:.4s}@keyframes needle{0%{transform:rotate(-140deg)}45%{transform:rotate(28deg)}70%{transform:rotate(-11deg)}88%{transform:rotate(4deg)}}.doctrine>div+div{position:relative;padding:34px 38px 36px;background:var(--paper);box-shadow:var(--shadow-card)}.doctrine>div+div:before{content:"";position:absolute;top:-7px;left:50%;width:16px;height:16px;margin-left:-8px;border-radius:50%;background:radial-gradient(circle at 35% 32%,#f08a80 0 18%,var(--red) 46%,var(--red-deep) 100%);box-shadow:2px 4px 4px -1px #28140873}.doctrine>div:nth-child(odd)+div:before{background:radial-gradient(circle at 35% 32%,#8fb3dc 0 18%,var(--blue) 46%,#1d3d62 100%)}.doctrine>div:last-child{background:var(--sticky);transform:rotate(-.6deg)}.doctrine>div:last-child .note{color:var(--ink-soft)}@media (max-width: 760px){.doctrine>div+div{padding:26px 20px}}.board-notes{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;align-items:start;padding:4px 6px 0}.board-notes details summary{list-style:none}.board-notes details summary:after{content:" more";color:var(--blue);text-decoration:underline}.board-notes details[open] summary:after{content:""}@media (max-width: 760px){.ranking-bar>.hint{flex-basis:100%}.ranking-bar input{width:100%!important}}
