.tut-wrap{z-index:40;background:#03070c8c;justify-content:center;align-items:center;padding:16px;animation:.25s ease-out tut-fade;display:flex;position:fixed;inset:0}.tut-card{width:min(400px,100vw - 32px);max-height:calc(100vh - 32px);color:var(--text);background:#080d14f0;border:1px solid #7cc4ff59;border-radius:12px;padding:16px 18px 14px;animation:.4s cubic-bezier(.2,.9,.3,1.2) card-in;overflow-y:auto;box-shadow:0 14px 50px #00000080}.tut-head{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:center;font-size:11px;display:flex}.tut-skip{appearance:none;color:var(--muted);font:inherit;letter-spacing:0;text-transform:none;cursor:pointer;background:0 0;border:0;padding:4px;font-size:12px;text-decoration:underline}.tut-skip:hover,.tut-skip:focus-visible{color:var(--text)}.tut-art{background:linear-gradient(#0f2233,#12324a);border-radius:8px;width:100%;height:auto;max-height:110px;margin:8px 0 4px;display:block}.tut-title{margin:8px 0 4px;font-size:18px;font-weight:800}.tut-text{color:#d3dce6;margin:0;font-size:13.5px;line-height:1.5}.tut-foot{align-items:center;gap:8px;margin-top:14px;display:flex}.tut-dots{gap:5px;margin-right:auto;display:flex}.tut-dots span{background:#fff3;border-radius:50%;width:7px;height:7px}.tut-dots span.on{background:var(--accent)}.sail-btn.tut-next{width:auto;margin-top:0;padding:9px 20px;font-size:13px}.survive-howto{appearance:none;color:var(--accent);font:inherit;cursor:pointer;text-transform:none;letter-spacing:0;background:0 0;border:0;padding:0;font-size:11.5px;text-decoration:underline}@keyframes tut-fade{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.tut-wrap,.tut-card{animation:none}}.storm-list{scrollbar-width:thin;scrollbar-color:#fff3 transparent;max-height:min(230px,27vh);margin:2px -4px 0;padding:0 4px 2px;overflow-y:auto}.storm-count{letter-spacing:0}.storm-level{letter-spacing:.08em;text-transform:uppercase;padding:5px 2px 3px;font-size:10.5px;font-weight:700}.storm-level.lvl-easy{color:#7fe0b4}.storm-level.lvl-medium{color:#ffc979}.storm-level.lvl-hard{color:#ff8a84}.storm-row{appearance:none;text-align:left;border:1px solid var(--panel-border);width:100%;color:var(--text);font:inherit;cursor:pointer;background:#ffffff0a;border-radius:8px;margin:0 0 5px;padding:6px 8px;display:block}.storm-row:hover:not(:disabled){background:#ffffff17}.storm-row:focus-visible{outline-offset:1px;outline:2px solid #fff}.storm-row:disabled{cursor:wait}.storm-row.on{background:#7cc4ff1f;border-color:#7cc4ffb3}.storm-row-top{flex-wrap:wrap;align-items:center;gap:5px;font-size:12px;display:flex}.storm-row-text{color:#b9c5d1;margin-top:3px;font-size:11.5px;line-height:1.35;display:block}.diff-chip{letter-spacing:.05em;text-transform:uppercase;color:#06121c;border-radius:999px;padding:1px 6px;font-size:10px;font-weight:800;display:inline-block}.diff-chip.lvl-easy{background:#7fe0b4}.diff-chip.lvl-medium{background:#ffc979}.diff-chip.lvl-hard{background:#ff8a84}.storm-tag{border:1px solid var(--panel-border);color:var(--muted);border-radius:999px;padding:0 5px;font-size:10px}.storm-tag.sched{color:#ffc979}.coach{border-left:3px solid var(--accent);background:#7cc4ff14;border-radius:8px;align-items:baseline;gap:8px;margin:2px 0 10px;padding:7px 9px;font-size:12.5px;line-height:1.4;display:flex}.coach-who{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);flex:none;font-size:10px;font-weight:800}.coach.tone-good{background:#5ecf9a1a;border-left-color:#5ecf9a}.coach.tone-good .coach-who{color:#7fe0b4}.coach.tone-warn{border-left-color:var(--watch);background:#f5a6231f}.coach.tone-warn .coach-who{color:#ffc979}.coach.tone-danger{border-left-color:var(--storm);background:#ef535024}.coach.tone-danger .coach-who{color:#ff8a84}.survive-card .card-section p,.card-lesson p{color:#d3dce6;margin:0 0 6px;line-height:1.45}.card-section{margin-top:8px}.card-h{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:3px;font-size:10.5px;font-weight:700;display:block}.card-lesson{border-left:3px solid var(--accent);background:#7cc4ff1a;border-radius:9px;margin:6px 0 10px;padding:9px 11px}.card-lesson .card-h{color:var(--accent)}.card-lesson p{color:var(--text);margin:0;font-size:14px}.new-best{vertical-align:middle;letter-spacing:.04em;color:#06121c;background:linear-gradient(#ffe08a,#f5a623);border-radius:999px;margin-left:10px;padding:2px 8px;font-size:11px;font-weight:800;display:inline-block}.card-share{margin:4px 0 8px}.share-row{gap:6px;display:flex}.share-text{border:1px solid var(--panel-border);min-width:0;color:var(--text);font-family:var(--mono);background:#ffffff0d;border-radius:7px;flex:1;padding:7px 8px;font-size:11px}.share-copy{flex:none;padding:6px 12px}.share-note{margin:4px 0 0;font-size:11px}.card-more{margin:4px 0 6px;font-size:12px}.card-more summary{cursor:pointer;color:var(--muted)}.card-more .card-lines{margin-top:6px}.lp{--lp-ink:#04080d;--lp-hair:#e6edf424;--lp-hair-strong:#e6edf447;--lp-dim:#a7b4c2;z-index:50;color:var(--text);font-family:var(--font);font-size:clamp(15px,min(1.14vw,2.02vh),30px);line-height:1.45;position:fixed;inset:0}.lp-scrim{pointer-events:none;background:radial-gradient(125% 100% at 0 38%,#04080deb 0%,#04080dcc 34%,#04080d57 60%,#04080d00 84%),linear-gradient(#04080d00 48%,#04080d8c 74%,#04080deb 100%),linear-gradient(#04080d73 0%,#04080d00 18%);position:absolute;inset:0}.lp-scroll{scrollbar-width:thin;scrollbar-color:#ffffff2e transparent;position:absolute;inset:0;overflow:hidden auto}.lp a{color:inherit}.lp a:focus-visible,.lp button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.lp kbd{min-width:1.6em;color:var(--text);font-family:var(--mono);text-align:center;background:#04080d8c;border:1px solid #e6edf480;border-bottom-width:2px;border-radius:.3em;padding:.05em .4em;font-size:.72em;line-height:1.4;display:inline-block}.lp-btn.primary kbd{background:var(--lp-ink);border-color:var(--lp-ink);color:#e6edf4}.lp-hero{flex-direction:column;min-height:100vh;padding:11vh 6vw 6vh;display:flex}.lp-kicker{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 .9em;font-size:.78em}.lp-title{letter-spacing:-.045em;text-shadow:0 .06em .5em #00000073;margin:0;font-size:5.6em;font-weight:800;line-height:.92}.lp-title span{color:var(--accent)}.lp-name{color:var(--lp-dim);text-shadow:0 1px .5em #0009;margin:.55em 0 0;font-size:.95em;font-style:italic}.lp-lede{max-width:30em;color:var(--text);text-wrap:pretty;text-shadow:0 1px .6em #0009;margin:.7em 0 0;font-size:1.36em;line-height:1.35}.lp-cta{flex-wrap:wrap;gap:.8em;margin-top:1.6em;display:flex}.lp-btn{border:1px solid var(--lp-hair-strong);-webkit-backdrop-filter:blur(8px);background:#0a10188c;border-radius:.5em;align-items:center;gap:.75em;padding:.72em 1.25em;font-size:1.12em;font-weight:650;text-decoration:none;transition:background .16s,border-color .16s,transform .16s;display:inline-flex}.lp-btn:hover{border-color:var(--text);transform:translateY(-1px)}.lp-btn.primary{background:var(--accent);border-color:var(--accent);color:var(--lp-ink)}.lp-btn.primary:hover{background:#a3d6ff}.lp-figs{max-width:74em;margin-top:auto;padding-top:2.4em}.lp-figs-head{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--lp-dim);align-items:center;gap:1em;margin:0 0 1em;font-size:.74em;display:flex}.lp-figs-head:after{content:"";border-bottom:1px solid var(--lp-hair-strong);background:repeating-linear-gradient(90deg, var(--lp-hair-strong) 0 1px, transparent 1px 2.2em) bottom / 100% .4em no-repeat;flex:1;height:.55em}.lp-figs-row{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.lp-fig{border-left:1px solid var(--lp-hair);--fig:var(--accent);flex-direction:column;gap:.35em;padding:.2em 1.6em .3em;text-decoration:none;transition:background .16s;display:flex}.lp-fig:first-child{border-left:0;padding-left:0}.lp-fig-caught{--fig:var(--calm)}.lp-fig-false{--fig:var(--watch)}.lp-fig:hover .lp-fig-link{color:var(--fig)}.lp-fig-value{font-family:var(--mono);font-variant-numeric:tabular-nums;align-items:baseline;gap:.6em;line-height:1;display:flex}.lp-fig-n{letter-spacing:-.04em;color:var(--fig);font-size:3.5em;font-weight:600}.lp-fig-of{color:var(--lp-dim);font-size:1.5em}.lp-gauge{gap:.22em;max-width:12em;height:.42em;margin:.25em 0 .3em;display:flex}.lp-gauge>span{background:#e6edf429;border-radius:1px;flex:1}.lp-gauge>span.on{background:var(--fig);box-shadow:0 0 .6em color-mix(in srgb, var(--fig) 55%, transparent)}.lp-gauge-none{border-bottom:1px dashed #e6edf438;height:.21em;margin-bottom:.51em}.lp-fig-label{font-size:1.08em;font-weight:700;line-height:1.2}.lp-fig-meaning{color:var(--lp-dim);text-wrap:pretty;line-height:1.35}.lp-fig-aside{font-family:var(--mono);color:var(--muted);font-size:.76em}.lp-fig-link{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:.1em;font-size:.72em;transition:color .16s}.lp-quiet{color:var(--muted);font-style:italic}.lp-hero>.lp-quiet{margin-top:auto}.lp-sheet{-webkit-backdrop-filter:blur(14px);background:linear-gradient(#05090e00 0,#05090ed1 6em,#05090ee6 100%);padding:0 6vw 3em;position:relative;-webkit-mask-image:linear-gradient(#0000 0,#000 4em);mask-image:linear-gradient(#0000 0,#000 4em)}.lp-section{max-width:74em;padding:4.2em 0 1em}.lp-head{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--lp-dim);align-items:center;gap:.9em;margin:0 0 1.5em;font-size:.8em;font-weight:500;display:flex}.lp-head:after{content:"";background:var(--lp-hair);flex:1;height:1px}.lp-head-n{color:var(--accent)}.lp-story-grid{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:start;gap:3em;display:grid}.lp-story-text p{text-wrap:pretty;margin:0 0 .7em;font-size:1.32em;line-height:1.42}.lp-story-text p.lp-tuning{border-left:3px solid var(--watch);color:var(--lp-dim);margin-top:1.1em;padding-left:.9em;font-size:1.02em}.lp-ledger{border:1px solid var(--lp-hair);background:#0a101899;border-radius:.6em;flex-direction:column;gap:1.3em;padding:1.4em 1.5em 1.2em;display:flex}.lp-ledger-row{--ship:var(--calm);grid-template-columns:1fr auto;row-gap:.35em;display:grid}.lp-ledger-row.unprepared{--ship:var(--storm)}.lp-ledger-name{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--lp-dim);align-self:end;font-size:.74em}.lp-ledger-usd{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--ship);font-size:1.9em;font-weight:600;line-height:1}.lp-ledger-bar{background:linear-gradient(90deg, var(--ship) 0 var(--w), #e6edf41a var(--w) 100%);border-radius:1px;grid-column:1/-1;height:.5em}.lp-ledger-note{color:var(--lp-dim);grid-column:1/-1;font-size:.92em}.lp-ledger-row.unprepared .lp-ledger-note{color:#ff8a80;font-weight:600}.lp-ledger-foot{border-top:1px solid var(--lp-hair);font-family:var(--mono);color:var(--muted);padding-top:.8em;font-size:.74em}.lp-defences{grid-template-columns:repeat(3,minmax(0,1fr));gap:2em;display:grid}.lp-defence{border-top:3px solid var(--d-c,var(--accent));padding-top:.9em}.lp-defence.watch{--d-c:var(--watch)}.lp-defence.storm{--d-c:var(--storm)}.lp-defence.calm{--d-c:var(--calm)}.lp-defence h3{margin:0 0 .35em;font-size:1.2em;font-weight:750}.lp-defence p{color:var(--lp-dim);text-wrap:pretty;margin:0}.lp-crew{border:1px solid var(--lp-hair);color:var(--lp-dim);border-radius:.6em;flex-wrap:wrap;align-items:baseline;gap:.4em 1em;margin:2.2em 0 0;padding:1em 1.2em;display:flex}.lp-crew-motto{color:var(--text);letter-spacing:-.01em;font-size:1.3em;font-weight:750}.lp-stack{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9em 2em;margin:1.8em 0 0;padding:0;list-style:none;display:grid}.lp-stack li{border-left:1px solid var(--lp-hair-strong);flex-direction:column;padding-left:.8em;display:flex}.lp-stack b{font-size:1.05em}.lp-stack span{color:var(--lp-dim);font-size:.92em}.lp-honesty ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9em 2.5em;margin:0;padding:0;list-style:none;display:grid}.lp-honesty li{color:var(--lp-dim);text-wrap:pretty;padding-left:1.3em;font-size:1.05em;position:relative}.lp-honesty li:before{content:"";background:var(--watch);width:.45em;height:.45em;position:absolute;top:.5em;left:0;transform:rotate(45deg)}.lp-honesty b{color:var(--text)}.lp-more{font-family:var(--mono);letter-spacing:.06em;border-bottom:1px solid;margin-top:1.3em;font-size:.82em;text-decoration:none;display:inline-block;color:var(--accent)!important}.lp-storms{grid-template-columns:repeat(auto-fill,minmax(12.5em,1fr));gap:.7em;display:grid}.lp-storm{border:1px solid var(--lp-hair);background:#0a10188c;border-radius:.5em;grid-template-columns:1fr auto;gap:.15em .6em;padding:.75em .9em;text-decoration:none;transition:border-color .16s,background .16s;display:grid}.lp-storm:hover{border-color:var(--accent);background:#7cc4ff14}.lp-storm[aria-busy=true]{border-color:var(--watch)}.lp-storm-sym{font-weight:750}.lp-storm-move{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right}.lp-storm-move.down{color:var(--down)}.lp-storm-move.up{color:var(--up)}.lp-storm-when{color:var(--lp-dim);font-size:.9em}.lp-storm-kind{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:right;align-self:center;font-size:.68em}.lp-storm-kind.scheduled{color:var(--watch)}.lp-foot{border-top:1px solid var(--lp-hair);max-width:74em;color:var(--lp-dim);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1em 2em;margin-top:4em;padding-top:1.2em;font-size:.9em;display:flex}.lp-foot>a{font-family:var(--mono);color:var(--accent);text-decoration:none}.lp-keys{flex-wrap:wrap;gap:.4em 1.2em;display:flex}.lp-close{border:1px solid var(--lp-hair-strong);color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:.45em;align-items:center;gap:.6em;padding:.5em .9em;display:inline-flex}.lp-close:hover{border-color:var(--text)}.lp-rise{animation:.9s cubic-bezier(.2,.7,.2,1) both lp-rise;animation-delay:var(--d,0s)}@keyframes lp-rise{0%{opacity:0;transform:translateY(.9em)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.lp-rise{animation:none}.lp-btn,.lp-btn:hover{transition:none;transform:none}}@media (width<=900px){.lp{font-size:15px}.lp-title{font-size:3.6em}.lp-figs-row,.lp-story-grid,.lp-defences,.lp-stack,.lp-honesty ul{grid-template-columns:1fr}.lp-fig,.lp-fig:first-child{border-left:0;border-top:1px solid var(--lp-hair);padding:1em 0}}.lp.lp-leave{pointer-events:none}.lp.lp-leave .lp-scroll{animation:.65s cubic-bezier(.55,0,.8,.25) both tr-lp-away}.lp.lp-leave .lp-scrim{animation:1.1s cubic-bezier(.45,0,.55,1) both tr-fade-out}.lp.lp-enter .lp-scrim{animation:1.1s cubic-bezier(.45,0,.55,1) both tr-fade-in}.lp.lp-enter .lp-rise{animation-delay:calc(var(--d,0s) + .6s)}.lp.lp-enter .lp-scroll{animation:.5s ease-out .45s both tr-fade-in}@keyframes tr-lp-away{to{opacity:0;translate:-3.2em}}@keyframes tr-fade-out{to{opacity:0}}@keyframes tr-fade-in{0%{opacity:0}}.overlay.hud-arrive>*,.overlay.hud-arrive>.stack-left>*,.overlay.hud-arrive>.stack-right>*{animation:.56s cubic-bezier(.2,.75,.25,1) both tr-hud-in;animation-delay:calc(.56s + var(--hd,6) * 75ms + var(--hk,0) * 70ms)}.overlay.hud-arrive>.stack-left,.overlay.hud-arrive>.stack-right{animation:none}.overlay.hud-arrive>.stack-left>*{--hd:0}.overlay.hud-arrive>.stack-right>*{--hd:3}.overlay.hud-arrive>.stack-left>:nth-child(2),.overlay.hud-arrive>.stack-right>:nth-child(2){--hk:1}.overlay.hud-arrive>.stack-left>:nth-child(n+3),.overlay.hud-arrive>.stack-right>:nth-child(n+3){--hk:2}.overlay.hud-arrive>.controls,.overlay.hud-arrive>.survive-actions{--hd:5}.overlay.hud-arrive>.chart{--hd:6}.overlay.hud-arrive>.survive-card-wrap{display:none}.overlay.hud-leave{pointer-events:none}.overlay.hud-hidden{opacity:0;pointer-events:none}.overlay.hud-hidden>*,.overlay.hud-hidden>.stack-left>*,.overlay.hud-hidden>.stack-right>*,.overlay.hud-arrive>*,.overlay.hud-arrive>.stack-left>*,.overlay.hud-arrive>.stack-right>*{will-change:opacity, translate}.overlay.hud-leave>*{animation:.38s cubic-bezier(.5,0,.75,.3) both tr-hud-out;animation-delay:calc((6 - var(--ho,0)) * 55ms)}.overlay.hud-leave>.stack-left{--ho:0}.overlay.hud-leave>.stack-right{--ho:3}.overlay.hud-leave>.controls,.overlay.hud-leave>.survive-actions{--ho:5}.overlay.hud-leave>.chart{--ho:6}:root.tr-hud-hidden .caption-bar,:root.tr-hud-hidden .end-card,:root.tr-hud-hidden .clean-note,:root.tr-hud-arrive .caption-bar,:root.tr-hud-arrive .end-card,:root.tr-hud-arrive .clean-note{display:none}:root.tr-hud-leave .caption-bar,:root.tr-hud-leave .end-card,:root.tr-hud-leave .clean-note{pointer-events:none;animation:.3s cubic-bezier(.5,0,.75,.3) both tr-hud-out}@keyframes tr-hud-in{0%{opacity:0;translate:0 .9rem}}@keyframes tr-hud-out{to{opacity:0;translate:0 .6rem}}@media (prefers-reduced-motion:reduce){.lp.lp-leave .lp-scroll,.lp.lp-leave .lp-scrim,.lp.lp-enter .lp-scrim,.lp.lp-enter .lp-scroll,.overlay.hud-arrive>*,.overlay.hud-arrive>.stack-left>*,.overlay.hud-arrive>.stack-right>*,.overlay.hud-leave>*,:root.tr-hud-leave .caption-bar,:root.tr-hud-leave .end-card{animation-duration:.16s;animation-delay:0s;translate:none}}.ex{z-index:45;color:var(--text);font-family:var(--font);font-size:clamp(13px,min(.9vw,1.6vh),22px);line-height:1.45;animation:.6s cubic-bezier(.2,.75,.25,1) .7s both ex-in;position:fixed;inset:0}.ex.ex-leave{pointer-events:none;animation:.32s cubic-bezier(.5,0,.75,.3) both ex-out}@keyframes ex-in{0%{opacity:0;translate:0 1.2em}}@keyframes ex-out{to{opacity:0;translate:0 .6em}}.ex-scrim{pointer-events:none;background:radial-gradient(120% 90% at 50% 40%,#04080d8c,#04080dd9);position:absolute;inset:0}.ex-sheet{border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);scrollbar-width:thin;scrollbar-color:#ffffff2e transparent;background:#080d14d1;border-radius:14px;padding:1.6em 1.8em 2.4em;position:absolute;inset:2.2em max(16px,6vw);overflow-y:auto}.ex-head{justify-content:space-between;align-items:flex-start;gap:1.5em;display:flex}.ex-title{letter-spacing:-.02em;margin:0;font-size:2.2em}.ex-sub{color:var(--muted);margin:.2em 0 0}.ex kbd{min-width:1.5em;color:var(--text);font-family:var(--mono);text-align:center;background:#04080d8c;border:1px solid #e6edf480;border-bottom-width:2px;border-radius:.3em;margin-left:.4em;padding:.05em .35em;font-size:.75em;display:inline-block}.ex button{font:inherit;color:inherit;cursor:pointer}.ex-back{border:1px solid var(--panel-border);background:0 0;border-radius:8px;flex:none;padding:.4em .8em}.ex-back:hover{border-color:var(--text)}.ex-filters{flex-wrap:wrap;align-items:center;gap:.8em 1.4em;margin:1.4em 0 .4em;display:flex}.ex-chips{flex-wrap:wrap;gap:.4em;display:flex}.ex-chips button{border:1px solid var(--panel-border);background:#ffffff0a;border-radius:999px;padding:.3em .85em;font-size:.9em}.ex-chips button.on{border-color:var(--accent);color:var(--accent);background:#7cc4ff29}.ex-select{color:var(--muted);align-items:center;gap:.5em;font-size:.9em;display:flex}.ex-select select{font:inherit;color:var(--text);border:1px solid var(--panel-border);background:#ffffff0d;border-radius:6px;padding:.2em .4em}.ex-book{color:var(--muted);margin:.6em 0 0;font-size:.85em}.ex-quiet{color:var(--muted)}.ex-quiet.small{margin:.2em 0 .6em;font-size:.85em}.ex-ds{border-top:1px solid var(--panel-border);margin-top:2em;padding-top:1.2em}.ex-ds-head{flex-wrap:wrap;align-items:baseline;gap:.5em .8em;display:flex}.ex-ds-head h2{margin:0;font-size:1.35em}.ex-period{color:var(--muted);font-size:.9em}.ex-label{border:1px solid var(--panel-border);letter-spacing:.02em;color:var(--muted);border-radius:999px;padding:.1em .6em;font-size:.75em;display:inline-block}.ex-label.ok{color:var(--calm);border-color:#3fa37a80}.ex-label.warn{color:var(--watch);border-color:#f5a62380}.ex-label.tiny{margin-left:.5em;font-size:.68em}.ex-note{color:#b8c4d0;max-width:62em;margin:.5em 0 0}.ex-figs{flex-wrap:wrap;gap:.6em 2.2em;margin:.9em 0 .6em;display:flex}.ex-fig{flex-direction:column;display:flex}.ex-fig-n{font-variant-numeric:tabular-nums;font-size:1.6em;font-weight:700}.ex-fig-l{color:var(--muted);font-size:.82em}.ex-table-wrap{overflow-x:auto}.ex-table{border-collapse:collapse;width:100%;font-size:.9em}.ex-table th{text-align:left;color:var(--muted);border-bottom:1px solid var(--panel-border);white-space:nowrap;padding:.4em .6em;font-size:.85em;font-weight:500}.ex-table td{vertical-align:middle;border-bottom:1px solid #ffffff0d;padding:.38em .6em}.ex-table tr:hover td{background:#ffffff08}.ex-table .num{text-align:right}.ex-table .mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.ex-table .down{color:var(--storm)}.ex-table .up{color:var(--calm)}.ex .dim{color:var(--muted)}.ex-group{font-family:var(--font);color:var(--muted);font-size:.8em;display:block}.ex-res{border-radius:5px;padding:.05em .55em;font-size:.85em;display:inline-block}.ex-res.caught{color:var(--calm);background:#3fa37a2e}.ex-res.missed{color:var(--muted);background:#ffffff0d}.ex-actions{white-space:nowrap;text-align:right}.ex-btn{border:1px solid var(--panel-border);background:#ffffff0d;border-radius:7px;margin-left:.4em;padding:.22em .7em;font-size:.9em}.ex-btn.primary{border-color:var(--accent);color:var(--accent);background:#7cc4ff2e}.ex-btn:hover{border-color:var(--text)}.ex button:focus-visible,.ex select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){.ex,.ex.ex-leave{animation-duration:.16s;animation-delay:0s;translate:none}}:root{--bg:#070b10;--panel:#0a1018b8;--panel-border:#ffffff17;--text:#e6edf4;--muted:#8b9aab;--up:#26a69a;--down:#ef5350;--calm:#3fa37a;--watch:#f5a623;--storm:#ef5350;--accent:#7cc4ff;--font:Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--controls-w:clamp(300px, 30vw, 440px);--chart-w:min(clamp(360px, 32vw, 480px), 100vw - 32px);--chart-h:clamp(220px, 34vh, 300px);--left-w:clamp(232px, 18vw, 260px);--right-w:290px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:13px;overflow:hidden}.app{position:fixed;inset:0}.scene-canvas{inset:0;position:absolute!important}.overlay{pointer-events:none;position:absolute;inset:0}.overlay>*{pointer-events:auto}.panel{background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px);border-radius:10px;position:absolute;box-shadow:0 8px 30px #00000059}.panel-head{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;font-size:11px;display:flex}.muted{color:var(--muted)}.num{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right}.tnum{font-variant-numeric:tabular-nums}.up{color:var(--up)}.down{color:var(--down)}.badge{letter-spacing:.05em;text-transform:uppercase;border:1px solid;border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:600;display:inline-block}.badge.state-0{color:var(--calm)}.badge.state-1{color:var(--watch)}.badge.state-2{color:#fff;background:var(--storm);border-color:var(--storm);animation:1.2s ease-in-out infinite pulse}.badge.scenario{color:#ffd27a;text-transform:none;letter-spacing:.02em;border-color:#ffd27a8c}.badge.closed{color:#9fb4ff;background:#3c50a038;border-color:#9fb4ff8c}.badge.verified{color:#7fe0b4;text-transform:none;letter-spacing:.02em;border-color:#7fe0b480}.badge.verified:before{content:"✓ "}.badge.warn{color:#ffc46b;text-transform:none;letter-spacing:.02em;border-color:#ffc46b8c}.badge.live{color:#6fe3d1;text-transform:none;letter-spacing:.02em;border-color:#6fe3d180}.badge.live:before{content:"";vertical-align:1px;background:currentColor;border-radius:50%;width:6px;height:6px;margin-right:5px;animation:1.8s ease-in-out infinite blink;display:inline-block}.badge.live.failed{color:#ffc46b;border-color:#ffc46b8c}@keyframes blink{50%{opacity:.35}}.badge.synthetic{color:#c9b6ff;text-transform:none;letter-spacing:.02em;border-color:#c9b6ff80}@keyframes pulse{50%{box-shadow:0 0 0 4px #ef535040}}.stack{pointer-events:none;scrollbar-width:thin;scrollbar-color:#fff3 transparent;flex-direction:column;gap:10px;display:flex;position:absolute;top:16px}.stack>*{pointer-events:auto;flex:none;position:relative}.stack-left{width:var(--left-w);max-height:calc(100vh - 112px);left:16px;overflow:hidden auto}.stack-right{width:var(--right-w);max-height:calc(100vh - var(--chart-h) - 44px);right:16px;overflow:hidden auto}.no-webgl .stack-right{max-height:calc(100vh - 112px)}.hud{padding:12px 12px 12px 14px}.hud-symbol .badge{letter-spacing:.03em;padding:2px 6px}.hud-top{justify-content:space-between;align-items:center;display:flex}.wordmark{letter-spacing:-.02em;font-size:19px;font-weight:800}.wordmark span{color:var(--accent)}.icon-btn{border:1px solid var(--panel-border);color:var(--muted);cursor:pointer;background:#ffffff0f;border-radius:8px;place-items:center;width:32px;height:32px;display:grid}.icon-btn.on{color:var(--accent);border-color:#7cc4ff66}.hud-symbol{flex-wrap:wrap;align-items:center;gap:5px;margin-top:10px;display:flex}.symbol{font-size:14px;font-weight:700}.hud-price{font-family:var(--mono);font-variant-numeric:tabular-nums;align-items:baseline;gap:8px;margin-top:6px;display:flex}.hud-price>span:first-child{font-size:26px;font-weight:700}.hud-bp{color:var(--muted);font-size:12px}.hud-time{font-family:var(--mono);color:var(--muted);font-size:12px}.gauge{margin-top:10px}.gauge-label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;margin-bottom:4px;font-size:11px;display:flex}.gauge-label span:last-child{font-family:var(--mono);color:var(--text)}.gauge-track{background:linear-gradient(90deg, var(--calm), var(--watch) 50%, var(--storm));border-radius:4px;height:7px;position:relative;overflow:hidden}.gauge-fill{background:0 0;border-radius:4px;transition:width .2s linear;position:absolute;inset:0 auto 0 0;box-shadow:0 0 0 9999px #0a1018c7}.hud-storm{color:var(--muted);margin-top:8px;font-size:11.5px}.quality{color:var(--muted);cursor:pointer;align-items:center;gap:6px;margin-top:8px;font-size:11px;display:flex}.picker{padding:4px}.picker-head{width:100%;color:var(--text);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:7px;align-items:center;gap:8px;padding:8px 10px;display:flex}.picker-head:hover{background:#ffffff0d}.picker-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px}.picker-current{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.picker-chevron,.toggle-chevron{color:var(--muted);font-size:11px}.picker-list{scrollbar-width:thin;border-top:1px solid #ffffff12;max-height:300px;padding:2px 4px 6px;overflow-y:auto}.picker-group-title{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:8px 6px 3px;font-size:10.5px}.picker-row{width:100%;color:var(--text);font:inherit;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:58px 1fr auto;align-items:baseline;gap:6px;padding:5px 6px;font-size:12px;display:grid}.picker-row:hover:not(:disabled){background:#ffffff0f}.picker-row:disabled{opacity:.6;cursor:progress}.picker-row.current{background:#7cc4ff14;border-color:#7cc4ff73}.picker-symbol{font-weight:700;font-family:var(--mono);font-size:11.5px}.picker-date{color:#c4cfda;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.picker-busy{color:var(--accent);grid-column:1/-1;font-size:10.5px}.picker-error{color:#ffb4a8;margin:2px 10px 6px;font-size:11px}.picker-note{color:var(--muted);margin:8px 6px 4px;font-size:11px}.picker-note code{font-family:var(--mono);color:#c4cfda;font-size:10.5px}.evidence{padding:12px 12px 12px 14px}.evidence .panel-toggle{text-align:left}.evidence .panel-toggle[aria-expanded=false]{margin-bottom:0}.evidence-summary{text-transform:none;letter-spacing:0;align-items:center;gap:8px;display:inline-flex}.evidence-summary .num{color:var(--text);font-size:11.5px}.evidence-row{justify-content:space-between;gap:8px;padding:3px 0;font-size:11.5px;display:flex}.evidence-row>span:first-child{white-space:nowrap;text-overflow:ellipsis;color:var(--muted);overflow:hidden}.evidence-row .num{color:var(--text);white-space:nowrap}.evidence-row small{color:var(--muted);opacity:.85;font-size:10.5px}.evidence-row .num.strong{font-weight:600}.evidence-sub{padding-top:0;font-size:11px}.evidence-sub>span:first-child{padding-left:10px}.evidence-sub .num{color:#c4cfda}.evidence-note{color:var(--muted);border-top:1px solid #ffffff12;margin-top:6px;padding-top:6px;font-size:10.5px;font-style:italic}.report,.navigator{padding:12px 14px}.panel-toggle{width:100%;font:inherit;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:11px}.badges{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.report-text p{color:#d5dde6;margin:0 0 6px;font-size:12.5px;line-height:1.45}.report-unverified{color:#ffc46b;margin-bottom:6px;font-size:11px}.report-model{color:var(--muted);margin-top:6px;font-size:10.5px}.inspector{color:#c4cfda;background:#ffffff0d;border-radius:6px;margin-top:4px;padding:6px 8px;font-size:11.5px}.inspector.ok{border-left:3px solid var(--calm)}.inspector.flag{border-left:3px solid var(--watch)}.inspector-verdict{font-weight:600}.inspector ul{margin:4px 0 0;padding-left:16px}.nav-form{gap:6px;display:flex}.nav-form input{border:1px solid var(--panel-border);min-width:0;color:var(--text);font:inherit;background:#ffffff0f;border-radius:6px;flex:1;padding:6px 8px}.nav-form input:focus-visible{outline:2px solid var(--accent);outline-offset:0}.nav-form button,.sail{background:var(--accent);color:#06121e;font:inherit;cursor:pointer;border:none;border-radius:6px;padding:6px 12px;font-weight:700}.nav-form button:disabled{opacity:.5;cursor:default}.nav-answer{margin-top:10px}.nav-error{color:#ffb4a8;margin-top:8px;font-size:11.5px}.sail{width:100%;margin-top:8px}.nav-sailing{color:#ffd27a;justify-content:space-between;gap:8px;margin-top:8px;font-size:11.5px;display:flex}.link{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.chart-src{color:#6fe3d1;font-family:var(--mono);letter-spacing:0;text-transform:none;font-size:10.5px}.front-label{visibility:hidden;will-change:transform;white-space:nowrap;text-align:center;-webkit-user-select:none;user-select:none;background:#080d14cc;border:1px solid #d6c4508c;border-radius:7px;padding:5px 10px;position:absolute;top:0;left:0;pointer-events:none!important}.front-label.released{border-color:#ef5350b3}.front-label-main{font-size:12.5px;font-weight:700}.front-label-sub{font-family:var(--mono);color:var(--muted);font-size:10.5px}.toasts{flex-direction:column;gap:5px;width:min(440px,100vw - 600px);min-width:260px;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%);pointer-events:none!important}.market-banner{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;background:#141c40d1;border:1px solid #9fb4ff80;border-radius:999px;flex-direction:column;align-self:center;align-items:center;padding:6px 16px;display:flex}.market-banner-title{color:#c8d4ff;letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.market-banner-sub{color:#9fb4ff;font-size:11.5px}.toast{border:1px solid var(--panel-border);border-left:4px solid var(--accent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a1018db;border-radius:8px;padding:6px 12px;animation:.35s ease-out toast-in,.5s ease-in 6s forwards toast-out}.toast-title{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;line-height:16px;overflow:hidden}.toast-text{color:#c4cfda;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;margin-top:2px;font-size:12px;line-height:16px;display:-webkit-box;overflow:hidden}.toast.compact{opacity:.85;padding-top:3px;padding-bottom:3px}@media (height>=900px){.toast-text{-webkit-line-clamp:2;line-clamp:2}}.toast-alarm{border-left-color:var(--watch);box-shadow:0 0 24px #f5a6234d}.toast-watch{border-left-color:#d6c450}.toast-margin_call{border-left-color:var(--storm);box-shadow:0 0 24px #ef535059}.toast-all_clear{border-left-color:var(--calm)}.toast-cut,.toast-restore{border-left-color:var(--accent)}.toast-squall{border-left-color:#f0b44c;box-shadow:0 0 18px #f0b44c40}.toast-market{border-left-color:#9fb4ff}.toast-fair_wind{border-left-color:#5ecf9a;box-shadow:0 0 18px #5ecf9a38}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}}@keyframes toast-out{to{opacity:0;transform:translateY(-6px)}}.manifest{padding:12px 14px}.positions{border-collapse:collapse;width:100%}.positions td{vertical-align:top;border-bottom:1px solid #ffffff0f;padding:4px 0}.pos-inst{font-weight:600}.pos-side{color:var(--muted);font-size:11px}.manifest-row{justify-content:space-between;gap:8px;margin-top:6px;font-size:12px;display:flex}.manifest-row>span:first-child{color:var(--muted)}.manifest-note{color:var(--muted);margin-top:6px;font-size:10.5px}.ship-row{border-top:1px solid #ffffff12;margin-top:10px;padding-top:8px}.manifest .panel-head+.ship-row{border-top:none;margin-top:0;padding-top:0}.ship-row-head{justify-content:space-between;gap:6px;font-size:12px;display:flex}.ship-name{font-weight:700}.ship-row.prepared .ship-name:before,.ship-row.unprepared .ship-name:before{content:"";vertical-align:1px;border-radius:2px;width:8px;height:8px;margin-right:6px;display:inline-block}.ship-row.prepared .ship-name:before{background:#2c8a6a}.ship-row.unprepared .ship-name:before{background:#b3402c}.ship-row-sub{color:var(--muted);justify-content:space-between;margin:3px 0 4px;font-size:11px;display:flex}.bar{background:#ffffff14;border-radius:3px;height:6px;overflow:hidden}.bar-fill{border-radius:3px;height:100%;transition:width .25s linear,background .3s}.bar-fill.ok{background:var(--calm)}.bar-fill.mid{background:var(--watch)}.bar-fill.low,.bar-fill.dead{background:var(--storm)}.chart{width:var(--chart-w);height:var(--chart-h);flex-direction:column;padding:10px 10px 6px;display:flex;bottom:16px;right:16px}.chart.large{left:calc(var(--left-w) + 32px);right:calc(var(--right-w) + 32px);width:auto;height:auto;top:70px;bottom:96px}.chart-wrap{flex:1;min-height:0;display:flex;position:relative}.chart-host{cursor:pointer;flex:1;min-width:0;min-height:0}.chart-labels{pointer-events:none;position:absolute;inset:0;overflow:hidden}.chart-label{white-space:nowrap;text-shadow:0 0 3px #080c12f2,0 0 6px #080c12cc;font-size:10.5px;font-weight:600;line-height:12px;position:absolute;transform:translate(-50%)}.chart-foot{font-size:10.5px;font-family:var(--mono);white-space:nowrap;justify-content:space-between;gap:10px;margin-top:4px;display:flex;overflow:hidden}.risk-key{color:var(--muted)}.risk-key:before{content:"";background:linear-gradient(90deg,#50a082cc,#f5a623e6,#ef5350f2);border-radius:2px;width:22px;height:6px;margin-right:5px;display:inline-block}.chart-tip{text-overflow:ellipsis;overflow:hidden}.controls{width:var(--controls-w);align-items:center;gap:12px;padding:10px 12px;display:flex;bottom:16px;left:16px}.no-webgl .controls{width:auto;right:16px}.play{background:var(--accent);color:#06121e;cursor:pointer;border:none;border-radius:50%;flex:none;place-items:center;width:40px;height:40px;display:grid}.scrub{flex:1;min-width:0}.scrub-track{--thumb:14px;padding-top:10px;position:relative}.scrub input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:16px;margin:0;display:block}.scrub input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--accent) var(--p,0%), #ffffff29 var(--p,0%));border-radius:2px;height:4px}.scrub input[type=range]::-moz-range-track{background:#ffffff29;border-radius:2px;height:4px}.scrub input[type=range]::-moz-range-progress{background:var(--accent);border-radius:2px;height:4px}.scrub input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:var(--thumb);height:var(--thumb);background:var(--accent);border:none;border-radius:50%;margin-top:-5px;box-shadow:0 0 0 3px #7cc4ff2e}.scrub input[type=range]::-moz-range-thumb{width:var(--thumb);height:var(--thumb);background:var(--accent);border:none;border-radius:50%}.scrub input[type=range]:focus-visible{outline:none}.scrub input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px #7cc4ff8c}.scrub input[type=range]:disabled{cursor:default}.ticks{height:10px;position:absolute;top:0;left:0;right:0}.tick{opacity:.6;cursor:pointer;background:0 0;border:none;border-radius:1px;flex-direction:column;gap:1px;width:4px;height:9px;margin-left:-2px;padding:0;display:flex;position:absolute;top:0}.tick:before{content:"";position:absolute;inset:-3px -5px -2px}.tick.passed,.tick:hover,.tick:focus-visible{opacity:1}.tick:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.tick-seg{border-radius:1px;flex:1;min-height:2px}.tick-tip{border:1px solid var(--panel-border);color:var(--text);font-variant-numeric:tabular-nums;text-align:left;white-space:nowrap;pointer-events:none;z-index:5;background:#080d14f0;border-radius:6px;flex-direction:column;gap:2px;padding:5px 8px;font-size:11.5px;font-weight:500;display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 6px 20px #0006}.tick.tip-l .tick-tip{left:-8px;transform:none}.tick.tip-r .tick-tip{left:auto;right:-8px;transform:none}.tick:hover .tick-tip,.tick:focus-visible .tick-tip{display:flex}.tick-tip-row i{vertical-align:0;border-radius:2px;width:7px;height:7px;margin-right:6px;display:inline-block}.scrub-meta{color:var(--muted);font-size:11px;font-family:var(--mono);justify-content:space-between;display:flex}.controls select{color:var(--text);border:1px solid var(--panel-border);font-family:var(--mono);background:#ffffff0f;border-radius:6px;padding:5px 6px}.hint{color:#e6edf473;white-space:nowrap;font-size:11px;position:absolute;bottom:18px;left:50%;transform:translate(-50%);pointer-events:none!important}.caption-bar{left:calc(28px + var(--controls-w));right:calc(28px + var(--chart-w));z-index:20;pointer-events:none;justify-content:center;display:flex;position:fixed;bottom:34px}.caption{border:1px solid var(--panel-border);border-left:3px solid var(--accent);-webkit-backdrop-filter:blur(8px);max-width:640px;color:var(--text);text-align:center;text-wrap:balance;background:#080d14cc;border-radius:8px;padding:7px 14px;font-size:14px;font-weight:600;line-height:1.35;transition:opacity .45s ease-in,transform .45s ease-in;animation:.35s ease-out caption-in;box-shadow:0 6px 24px #00000059}.caption.leaving{opacity:0;transform:translateY(4px)}.caption-time{font-family:var(--mono);font-variant-numeric:tabular-nums;color:#c4cfda;font-weight:500}.caption-dot{color:var(--muted);margin:0 6px}@keyframes caption-in{0%{opacity:0;transform:translateY(6px)}}.overlay>.stack,.overlay>.chart,.overlay>.toasts,.overlay>.hint,.survive-actions,.survive-card-wrap,.end-card{transition:opacity .3s,visibility linear}.clean-view .overlay>.stack,.clean-view .overlay>.chart,.clean-view .overlay>.toasts,.clean-view .overlay>.hint,.clean-view .survive-actions,.clean-view .survive-card-wrap,.clean-view .end-card{opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s linear .3s;pointer-events:none!important}.clean-view .caption-bar{right:calc(28px + var(--controls-w))}.clean-note{z-index:30;border:1px solid var(--panel-border);color:#c4cfda;pointer-events:none;background:#080d14b3;border-radius:999px;padding:5px 12px;font-size:11.5px;animation:2.6s forwards clean-note;position:fixed;top:16px;left:50%;transform:translate(-50%)}@keyframes clean-note{0%{opacity:0}12%,70%{opacity:1}to{opacity:0}}.end-card{left:calc(28px + var(--controls-w));right:calc(28px + var(--chart-w));z-index:30;border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px);background:#0a1018e6;border-radius:10px;max-width:420px;margin:0 auto;padding:12px 14px;animation:.35s ease-out end-in;position:fixed;bottom:96px;box-shadow:0 12px 40px #00000080}@keyframes end-in{0%{opacity:0;transform:translateY(8px)}}.end-title{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-size:11px}.end-ships{grid-template-columns:1fr 1fr;gap:12px;display:grid}.end-ship{border-left:3px solid #2c8a6a;min-width:0;padding-left:8px}.end-ship.unprepared{border-left-color:#b3402c}.end-name{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:700;overflow:hidden}.end-eq{white-space:nowrap;margin-top:2px;font-size:12px}.end-eq .num:first-child{color:var(--text);font-size:13px}.end-mc,.end-afloat{white-space:nowrap;margin-top:2px;font-size:11px}.end-mc{color:#ff8a80;font-weight:600}.end-afloat{color:var(--muted)}.end-diff{border-top:1px solid #ffffff12;justify-content:space-between;align-items:baseline;gap:8px;margin-top:6px;padding-top:7px;font-size:13px;font-weight:600;display:flex}.end-diff .num{color:var(--text);font-size:15px}.end-actions{gap:8px;margin-top:10px;display:flex}.end-actions .sail-btn{flex:1;width:auto;margin:0;padding:8px 0;font-size:13px}.end-actions .ghost-btn{flex:1;padding:8px 10px;font-size:12.5px}kbd{min-width:18px;font-family:var(--mono);text-align:center;color:#e6edf4;background:#04080d8c;border:1px solid #ffffff73;border-bottom-width:2px;border-radius:4px;margin-left:4px;padding:0 4px;font-size:10.5px;line-height:16px;display:inline-block}.sail-btn kbd{color:#e6edf4;background:#06121c;border-color:#06121c}.ship-label{visibility:hidden;will-change:transform;white-space:nowrap;text-align:center;font-family:var(--font);color:var(--text);-webkit-user-select:none;user-select:none;background:#080d14c7;border:1px solid #ffffff24;border-radius:7px;padding:5px 9px;position:absolute;top:0;left:0;pointer-events:none!important}.ship-label.prepared{border-top:3px solid #2c8a6a}.ship-label.unprepared{border-top:3px solid #b3402c}.ship-label.sunk{opacity:.85;border-color:#ef535099}.ship-label-name{font-size:12px;font-weight:700}.ship-label-eq{font-family:var(--mono);font-size:11.5px}.ship-label-status{color:#ffb4a8;font-size:10.5px}.ship-label.prepared .ship-label-status{color:#9fe0c6}.no-webgl-note{color:var(--muted);display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.no-webgl{background:radial-gradient(at 50% 20%,#13202c,#070b10 70%)}.no-webgl .no-webgl-note{font-size:12px;display:block;top:24px;transform:translate(-50%)}.no-webgl .toasts{top:56px}.loading,.fatal{text-align:center;color:var(--muted);place-content:center;gap:8px;display:grid;position:fixed;inset:0}.fatal pre{color:#ffb4a8;white-space:pre-wrap;max-width:640px;font-size:12px}@media (width<=900px){.stack-right,.evidence{display:none}.stack-left{max-height:calc(100vh - 400px)}.toasts{width:calc(100vw - 32px);top:auto;bottom:380px}.controls{width:calc(100vw - 32px);min-width:0;bottom:300px}.hint{display:none}.caption-bar,.end-card{bottom:372px;left:16px;right:16px}}.mode-switch{border:1px solid var(--panel-border);background:#ffffff0a;border-radius:8px;grid-template-columns:1fr 1fr;gap:2px;margin:2px 0 8px;padding:2px;display:grid}.mode-switch button{appearance:none;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:5px 0;font-weight:600}.mode-switch button:hover{color:var(--text)}.mode-switch button.on{background:var(--accent);color:#06121c}.mode-switch button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.badge.whatif{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.badge.whatif b{text-transform:uppercase;letter-spacing:.06em}.survive{padding:12px 14px}.survive-intro{color:#c4cfda;margin:0 0 10px;line-height:1.4}.survive-field{margin:8px 0;display:block}.survive-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:baseline;margin-bottom:4px;font-size:11px;display:flex}.survive-lev{letter-spacing:0;text-transform:none;color:var(--text);font-size:18px;font-family:var(--mono)}.survive select{width:100%;color:var(--text);border:1px solid var(--panel-border);font:inherit;background:#ffffff0f;border-radius:7px;padding:6px 8px}.survive select option,.survive select optgroup{color:var(--text);background:#0d141c}.survive input[type=range]{width:100%;accent-color:var(--accent)}.survive-ticks{color:var(--muted);justify-content:space-between;font-size:10.5px;display:flex}.survive-storm{margin:2px 0 6px;font-size:12px}.survive-note{color:var(--muted);margin:6px 0;font-size:11.5px;line-height:1.4}.survive-cargo{margin:8px 0}.crate-strip{flex-wrap:wrap;gap:3px;margin-bottom:5px;display:flex}.crate{border-radius:2px;width:11px;height:11px;box-shadow:inset 0 -2px #00000040}.survive-cargo-text{font-size:12px}.line-meter{margin:10px 0 4px}.line-track{background:linear-gradient(90deg,#5ecf9a8c,#f5a62380 55%,#ef5350b3);border-radius:4px;height:8px;position:relative}.line-mark{background:#fff;border-radius:2px;width:3px;height:16px;position:absolute;top:-4px;transform:translate(-1px);box-shadow:0 0 0 2px #ef5350cc}.line-labels{color:var(--muted);justify-content:space-between;margin-top:4px;font-size:10.5px;display:flex}.survive-line{align-items:center;gap:7px;margin:6px 0;font-size:12px;display:flex}.line-dot{border-top:2px dashed #ff6b66;flex:none;width:18px}.sail-btn{appearance:none;color:#06121c;width:100%;font:inherit;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:linear-gradient(#8fd0ff,#5aa9e6);border:0;border-radius:9px;margin-top:8px;padding:10px 0;font-size:15px;font-weight:800;box-shadow:0 6px 18px #5aa9e659}.sail-btn:hover{filter:brightness(1.08)}.survive>.sail-btn{position:sticky;bottom:0}.sail-btn:focus-visible,.ghost-btn:focus-visible,.act:focus-visible{outline-offset:2px;outline:2px solid #fff}.ghost-btn{appearance:none;border:1px solid var(--panel-border);color:var(--text);font:inherit;cursor:pointer;background:#ffffff0d;border-radius:9px;padding:9px 14px;font-weight:600}.ghost-btn:hover{background:#ffffff1a}.survive-equity{align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.survive-equity-big{font-size:22px;font-weight:700}.survive-actions{width:var(--controls-w);grid-template-columns:1fr 1fr;gap:8px;padding:8px;display:grid;bottom:84px;left:16px}.act{appearance:none;font:inherit;color:#06121c;cursor:pointer;border:1px solid #0000;border-radius:9px;flex-direction:column;align-items:center;gap:1px;padding:9px 8px;display:flex}.act-main{letter-spacing:.05em;text-transform:uppercase;font-size:16px;font-weight:800}.act-sub{opacity:.8;font-size:11px}.act.cut{background:linear-gradient(#ffc979,#f5a623)}.act.restore{background:linear-gradient(#8fd0ff,#5aa9e6)}.act:hover:not(:disabled){filter:brightness(1.08)}.act:disabled{color:var(--muted);border-color:var(--panel-border);cursor:not-allowed;background:#ffffff12}.controls button:disabled,.controls input:disabled{opacity:.45;cursor:not-allowed}.survive-card-wrap{justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0;pointer-events:none!important}.survive-card{pointer-events:auto;background:#080d14e6;width:min(460px,100vw - 32px);max-height:calc(100vh - 32px);padding:18px 20px 16px;animation:.5s cubic-bezier(.2,.9,.3,1.2) card-in;position:relative;overflow-y:auto}.survive-card.landed{border-color:#5ecf9a8c;box-shadow:0 10px 50px #5ecf9a38}.survive-card.sunk{border-color:#ef535099;box-shadow:0 10px 50px #ef535047}.card-title{letter-spacing:.02em;font-size:26px;font-weight:800}.survive-card.landed .card-title{color:#7fe0b4}.survive-card.sunk .card-title{color:#ff8a84}.card-score{flex-wrap:wrap;align-items:baseline;gap:10px;margin:2px 0 10px;display:flex}.card-score .big{font-size:24px;font-weight:700}.card-lines p{color:#d3dce6;margin:0 0 7px;line-height:1.45}.card-compare{border-collapse:collapse;width:100%;margin:10px 0;font-size:12px}.card-compare td{border-top:1px solid var(--panel-border);padding:4px 6px}.card-compare tr.you td:first-child{font-weight:700}.card-compare td.num{text-align:right}.card-best{margin-top:8px}.best-table{border-collapse:collapse;width:100%;font-size:12px}.best-table td{padding:3px 6px}.best-table tr.new{background:#7cc4ff24}.card-actions{gap:10px;margin-top:12px;display:flex}.card-actions .sail-btn{flex:1;margin-top:0}@keyframes card-in{0%{opacity:0;transform:translateY(14px)scale(.96)}}.confetti{pointer-events:none;border-radius:10px;position:absolute;inset:0;overflow:hidden}.confetti span{opacity:0;border-radius:2px;width:7px;height:11px;animation:2.6s ease-in forwards confetti;position:absolute;top:-10px}@keyframes confetti{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(420px)rotate(540deg)}}.sunk-vignette{background:radial-gradient(#0000 40%,#aa1010b3 100%);animation:1.4s ease-in-out infinite alternate sunk-pulse;position:absolute;inset:0;pointer-events:none!important}@keyframes sunk-pulse{0%{opacity:.35}to{opacity:1}}@media (prefers-reduced-motion:reduce){.confetti span,.sunk-vignette,.survive-card{animation:none}.confetti{display:none}}.toast-sail{border-left-color:var(--accent)}.toast-land{border-left-color:#5ecf9a;box-shadow:0 0 26px #5ecf9a4d}.toast-sunk{border-left-color:var(--storm);box-shadow:0 0 28px #ef535066}.ship-label.player{border-top:3px solid #d9a21b}.ship-label.player .ship-label-status{color:#ffd27a}.book-line{color:var(--muted);border-top:1px solid #ffffff12;justify-content:space-between;gap:8px;margin-top:10px;padding-top:8px;font-size:11px;display:flex}.book-line>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.book-line .num{white-space:nowrap;color:#c4cfda}.card-tabs{gap:4px;margin-top:8px;display:flex}.card-tab{border:1px solid var(--panel-border);color:var(--muted);font:inherit;white-space:nowrap;cursor:pointer;background:#ffffff0a;border-radius:6px;flex:auto;justify-content:center;align-items:center;gap:5px;padding:4px 6px;font-size:11px;font-weight:600;display:inline-flex}.card-tab:hover{color:var(--text);background:#ffffff14}.card-tab.on{color:var(--text);background:#7cc4ff1f;border-color:#7cc4ff80}.card-tab:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.card-tab-extra{font-family:var(--mono);font-variant-numeric:tabular-nums;opacity:.8;font-size:10.5px;font-weight:500}.card-tab.ok .card-tab-extra{color:var(--calm);opacity:1}.card-tab.warn .card-tab-extra{color:#ffc46b;opacity:1}.card-section{margin:8px 0 0;padding:0;animation:.18s ease-out section-in}@keyframes section-in{0%{opacity:0;transform:translateY(-3px)}}.card-section.report{padding:0}.stress-list{list-style:none}.stress-line{border-bottom:1px solid #ffffff0d;flex-wrap:wrap;justify-content:space-between;column-gap:6px;padding:3px 0;font-size:11px;line-height:1.35;display:flex}.stress-line:last-child{border-bottom:none}.stress-what{color:var(--text);white-space:nowrap}.stress-move{color:#c4cfda}.stress-res{white-space:nowrap;margin-left:auto}.stress-arrow{color:var(--muted)}.stress-mc{color:#ff8a80;font-weight:600}.stress-empty{color:var(--muted);font-size:12px;font-style:italic}.badge.mc{color:#ff8a80;background:#ef53502e}.scene-stats{z-index:50;color:#b8f5c8;pointer-events:none;white-space:nowrap;background:#0009;border-radius:6px;padding:4px 10px;font:11px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;position:fixed;top:8px;left:50%;transform:translate(-50%)}
