@font-face{font-family:Big Shoulders Stencil Display;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/big-shoulders-stencil-display-vietnamese-900-normal-BBimTkhG.woff2)format("woff2"),url(/assets/big-shoulders-stencil-display-vietnamese-900-normal-C5Uz_91J.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Big Shoulders Stencil Display;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/big-shoulders-stencil-display-latin-ext-900-normal-CRGiGopc.woff2)format("woff2"),url(/assets/big-shoulders-stencil-display-latin-ext-900-normal-lx5yg9yC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Big Shoulders Stencil Display;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/big-shoulders-stencil-display-latin-900-normal-C2a_AZvg.woff2)format("woff2"),url(/assets/big-shoulders-stencil-display-latin-900-normal-DNqnuUup.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-vietnamese-500-normal-zTViEIzf.woff2)format("woff2"),url(/assets/barlow-vietnamese-500-normal-GNfB7rCE.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-latin-ext-500-normal-DOaysfXq.woff2)format("woff2"),url(/assets/barlow-latin-ext-500-normal-CJPcKP2Q.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-latin-500-normal-BPAOfeC8.woff2)format("woff2"),url(/assets/barlow-latin-500-normal-C1h8hMer.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-vietnamese-700-normal-D6euyNzi.woff2)format("woff2"),url(/assets/barlow-vietnamese-700-normal-4Jt4k04K.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-latin-ext-700-normal-BLuWmldJ.woff2)format("woff2"),url(/assets/barlow-latin-ext-700-normal-CctuGmmz.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-latin-700-normal-A9pxMQ4z.woff2)format("woff2"),url(/assets/barlow-latin-700-normal-__SGTsZ1.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/barlow-vietnamese-800-normal-Cl1Mc_Dv.woff2)format("woff2"),url(/assets/barlow-vietnamese-800-normal-D0VWpbij.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/barlow-latin-ext-800-normal-BiucknKG.woff2)format("woff2"),url(/assets/barlow-latin-ext-800-normal-D7I3yvUw.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/barlow-latin-800-normal-s1sAMnoV.woff2)format("woff2"),url(/assets/barlow-latin-800-normal-BdVooDN4.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#f2efe6;--grid:#e3dfd2;--navy:#0f1b2e;--navy2:#1a2c48;--line:#3a5275;--sea:#24487a;--sea2:#2c5a8c;--deep:#060d18;--red:#e0452f;--yellow:#f5b82e;--mist:#93a3b8;--tip:#9fc0e8;--stencil:"Big Shoulders Stencil Display", Impact, sans-serif;--mono:"IBM Plex Mono", ui-monospace, monospace;--ui:"Barlow", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--navy);color:var(--paper);font-family:var(--ui);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}button{color:inherit;font-family:inherit}button:focus-visible,input:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}.stencil{font-family:var(--stencil);letter-spacing:1px;font-weight:900;line-height:.95}.mono{font-family:var(--mono);font-weight:600}.mist{color:var(--mist)}.screen{position:relative;overflow:hidden}.chart{background-color:var(--paper);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);height:100dvh;color:var(--navy);background-size:40px 40px;flex-direction:column;gap:18px;padding:30px 56px 28px;animation:60s linear infinite chart-drift;display:flex}@keyframes chart-drift{to{background-position:40px 40px}}.night{background:var(--navy);flex-direction:column;align-items:center;gap:14px;height:100dvh;padding:48px 72px 44px;display:flex}.phone{min-height:100dvh;padding:max(26px, env(safe-area-inset-top)) 20px max(26px, env(safe-area-inset-bottom));background:var(--navy);flex-direction:column;gap:14px;max-width:520px;margin:0 auto;display:flex}.center{text-align:center;justify-content:center;align-items:center}.flags .flag{transform-box:fill-box;transform-origin:0;animation:2.2s ease-in-out infinite flutter}.flags .f2{animation-delay:.2s}.flags .f3{animation-delay:.4s}.flags .f4{animation-delay:.6s}.flags .f5{animation-delay:.8s}@keyframes flutter{0%,to{transform:skewY(0)scaleX(1)}50%{transform:skewY(-6deg)scaleX(.94)}}.btn{cursor:pointer;height:58px;font-family:var(--stencil);letter-spacing:1px;background:var(--yellow);color:var(--navy);text-transform:uppercase;border:none;border-radius:2px;padding:0 22px;font-size:26px;font-weight:900;transition:transform .12s}.btn:active:not(:disabled){transform:translateY(2px)}.btn:disabled{background:var(--navy2);color:var(--mist);cursor:default}.btn.red{background:var(--red);color:var(--paper)}.btn.ghost{border:2px solid var(--line);color:var(--paper);font-family:var(--ui);text-transform:none;letter-spacing:0;background:0 0;font-size:17px;font-weight:800}.chart .btn.ghost{border-color:var(--navy);color:var(--navy)}.btn.small{height:44px;font-size:18px}.btn.fire:not(:disabled){animation:1.4s ease-in-out infinite fire-pulse}@keyframes fire-pulse{0%,to{box-shadow:0 0 #e0452f99}50%{box-shadow:0 0 0 12px #e0452f00}}.pill{border:2px solid var(--navy);height:44px;color:var(--navy);font-family:var(--mono);cursor:pointer;background:0 0;border-radius:2px;padding:0 14px;font-size:14px;font-weight:600}.pill.on{background:var(--navy);color:var(--yellow)}.tag{background:var(--yellow);color:var(--navy);font-family:var(--mono);white-space:nowrap;padding:4px 10px;font-size:15px;font-weight:600}.tag.red{background:var(--red);color:var(--paper)}.clock{background:var(--navy);min-width:100px;height:50px;color:var(--yellow);font-family:var(--mono);border-radius:2px;justify-content:center;align-items:center;padding:0 18px;font-size:26px;font-weight:600;display:flex}.clock.hurry{background:var(--red);color:var(--paper);animation:.5s ease-in-out infinite alternate throb}@keyframes throb{to{transform:scale(1.06)}}.input{border:2px solid var(--line);background:var(--navy2);height:56px;color:var(--paper);font-family:var(--ui);border-radius:2px;outline:none;width:100%;padding:0 16px;font-size:22px;font-weight:700}.input.code{text-align:center;letter-spacing:.3em;font-family:var(--mono)}.err{background:var(--red);color:var(--paper);text-align:left;cursor:pointer;border:none;padding:10px 14px;font-size:15px;font-weight:700}.status-dot{z-index:9;font-family:var(--mono);background:var(--navy);color:var(--mist);padding:4px 10px;font-size:12px;position:fixed;top:10px;right:10px}.sound-btn{z-index:9;width:auto;position:fixed;bottom:14px;left:14px}.link{color:var(--mist);cursor:pointer;background:0 0;border:none;padding:10px;font-size:15px;text-decoration:underline}.panel{background:var(--navy);width:444px;color:var(--paper);border-radius:2px;flex-direction:column;gap:14px;padding:18px 20px 20px;transition:box-shadow .3s,transform .3s;display:flex;position:relative}.panel.target{box-shadow:0 0 0 4px var(--yellow);transform:translateY(-4px)}.panel h2{font-family:var(--stencil);margin:0;font-size:32px;font-weight:900;line-height:1}.panel-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.waters{grid-template-columns:repeat(11,minmax(0,1fr));grid-auto-rows:34px;gap:3px;display:grid}.waters.small{grid-auto-rows:29px;gap:2px}.waters .lbl{font-family:var(--mono);color:var(--mist);justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.waters.small .lbl{font-size:12px}.sq{border:none;border-radius:1px;justify-content:center;align-items:center;padding:0;display:flex;position:relative;overflow:visible}.sq.water{background:var(--sea);animation:6s linear infinite shimmer;animation-delay:var(--d);background-image:linear-gradient(120deg,#0000 30%,#ffffff14 45%,#0000 60%);background-size:300% 100%}@keyframes shimmer{0%{background-position:150% 0}to{background-position:-150% 0}}.sq.ship{background:var(--paper)}.sq.hit{background:var(--red);animation:.5s ease-out both hit-shake}.sq.sunk{background:var(--deep)}.sq.aim{box-shadow:inset 0 0 0 3px var(--yellow)}.sq.sel{background:var(--yellow)!important}.sq.tip{background:var(--tip)}button.sq{cursor:pointer}.ring{border:2px solid var(--paper);border-radius:50%;width:8px;height:8px;animation:.4s cubic-bezier(.3,1.8,.5,1) both pop}.small .ring{width:6px;height:6px}.cross{animation:.35s cubic-bezier(.3,1.8,.5,1) both stamp}.crosshair{animation:2s ease-in-out infinite spin-pulse}@keyframes spin-pulse{0%,to{transform:scale(1)rotate(0)}50%{transform:scale(1.18)rotate(45deg)}}.tip-txt{font-family:var(--mono);color:var(--navy);font-size:9px;font-weight:600}@keyframes hit-shake{0%,to{transform:none}20%{transform:translate(-3px,1px)}40%{transform:translate(3px,-1px)}60%{transform:translate(-2px)}}@keyframes pop{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes stamp{0%{opacity:0;transform:scale(2.2)}to{opacity:1;transform:none}}.impact{pointer-events:none;z-index:4;position:absolute;inset:0}.impact .ball{background:#0b0f17;border-radius:50%;width:14px;height:14px;margin:-7px 0 0 -7px;animation:.75s cubic-bezier(.5,0,.9,.6) both ball;position:absolute;top:50%;left:50%;box-shadow:inset -3px -3px #ffffff40}@keyframes ball{0%{opacity:0;transform:translate(-260px,-320px)scale(2.6)}15%{opacity:1}to{opacity:1;transform:translate(0)scale(.6)}}.impact .fx{opacity:0;border-radius:50%;position:absolute;top:50%;left:50%}.splash .fx{border:3px solid #cfe3ff;width:10px;height:10px;margin:-5px 0 0 -5px;animation:.9s ease-out .72s both ripple}.splash .fx.b{animation-delay:.85s}.splash .fx.c{animation-delay:1s}@keyframes ripple{0%{opacity:1;transform:scale(.4)}to{opacity:0;transform:scale(5)}}.burst .fx{background:radial-gradient(circle, #fff3c4 0%, var(--yellow) 30%, var(--red) 60%, transparent 70%);width:30px;height:30px;margin:-15px 0 0 -15px;animation:.8s ease-out .72s both boom}.burst .fx.b{background:radial-gradient(circle,#93a3b8cc,#0000 70%);animation:1.6s ease-out .9s both smoke}.burst .fx.c{background:var(--yellow);width:6px;height:6px;margin:-3px;animation:.7s ease-out .75s both spark}@keyframes boom{0%{opacity:1;transform:scale(.2)}60%{opacity:1;transform:scale(2.4)}to{opacity:0;transform:scale(3)}}@keyframes smoke{0%{opacity:.9;transform:scale(.5)translateY(0)}to{opacity:0;transform:scale(3)translateY(-30px)}}@keyframes spark{0%{opacity:1;box-shadow:0 0 0 0 var(--yellow);transform:translate(0)}to{opacity:0;box-shadow:18px -10px 0 0 var(--red), -16px -6px 0 0 var(--yellow), 6px 14px 0 0 var(--red), -10px 16px 0 0 var(--yellow);transform:translateY(-20px)}}.strip{justify-content:space-between;gap:6px;display:flex}.strip.big{background:var(--navy2);border-radius:2px;justify-content:center;gap:24px;padding:16px 24px}.strip-ship{flex-direction:column;gap:5px;display:flex}.strip.big .strip-ship{align-items:center;gap:8px}.strip-ship .segs{gap:2px;display:flex}.strip.big .segs{gap:3px}.strip-ship .segs span{background:var(--paper);width:12px;height:12px}.strip.big .segs span{width:18px;height:18px}.strip-ship .nm{font-family:var(--mono);font-size:12px;font-weight:600}.strip.big .nm{font-size:14px}.strip-ship.gone .segs span{background:var(--red)}.strip-ship.gone .nm{color:var(--mist);text-decoration:line-through}.topline{justify-content:space-between;align-items:center;gap:16px;display:flex}.brand{align-items:center;gap:20px;display:flex}.brand .title{font-family:var(--stencil);letter-spacing:1px;font-size:54px;font-weight:900;line-height:1}.banner{background:var(--navy);color:var(--paper);border-radius:2px;align-items:center;gap:18px;padding:13px 20px;animation:.5s ease-out both slide-in;display:flex}.banner .msg{flex:1;font-size:18px;font-weight:700}@keyframes slide-in{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:none}}.panels{justify-content:center;gap:64px;display:flex}.logline{text-align:center;font-family:var(--mono);margin:auto 0 0;font-size:18px;font-weight:500;line-height:1.3}.logline span{white-space:nowrap;animation:.6s steps(30,end) both typein;display:inline-block;overflow:hidden}@keyframes typein{0%{max-width:0}to{max-width:100%}}.crews{gap:32px;display:flex}.crew-col{background:var(--navy);color:var(--paper);border-radius:2px;flex-direction:column;flex:1;gap:10px;padding:18px;display:flex}.crew-col h2{font-family:var(--stencil);margin:0;font-size:40px;font-weight:900}.sailor{background:var(--navy2);border-radius:2px;align-items:center;gap:10px;height:50px;padding:0 12px;animation:.4s ease-out both slide-in;display:flex}.sailor .nm{flex:1;font-size:19px;font-weight:700}.sailor button{border:1px solid var(--line);height:34px;color:var(--mist);cursor:pointer;font-family:var(--mono);background:0 0;border-radius:2px;padding:0 10px;font-size:12px}.sailor.away{opacity:.5}.add-bot{border:2px dashed var(--line);height:46px;color:var(--mist);cursor:pointer;background:0 0;border-radius:2px;font-size:15px;font-weight:700}.qr{background:var(--paper);border:3px solid var(--navy);padding:12px}.qr svg{width:170px;height:170px;display:block}.big-code{font-family:var(--stencil);letter-spacing:.15em;color:var(--red);font-size:60px;font-weight:900;line-height:1}.sunk-title{font-family:var(--stencil);letter-spacing:4px;margin:0;font-size:120px;font-weight:900;line-height:.9;animation:.6s cubic-bezier(.3,1.6,.5,1) .4s both slam}@keyframes slam{0%{opacity:0;transform:scale(2.5)}to{opacity:1;transform:none}}.sinking .hull{transform-origin:270px 230px;animation:4.6s ease-in .2s both sink}@keyframes sink{0%{transform:rotate(0)translateY(-6px)}15%{transform:rotate(-6deg)translateY(4px)}45%{transform:rotate(-12deg)translateY(16px)}to{transform:rotate(-24deg)translateY(120px)}}.sinking .fire path{transform-box:fill-box;transform-origin:bottom;animation:.35s ease-in-out infinite alternate flicker}.sinking .fire .f2{animation-duration:.45s}@keyframes flicker{0%{transform:scaleY(1)skew(0)}to{transform:scaleY(1.2)skew(5deg)}}.sinking .smoke circle{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-out infinite puff}.sinking .smoke circle:nth-child(2){animation-delay:.8s}.sinking .smoke circle:nth-child(3){animation-delay:1.6s}@keyframes puff{0%{opacity:.7;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-90px)scale(3)}}.sinking .wave{animation:3s ease-in-out infinite alternate wave}.sinking .w2{animation-duration:2.2s;animation-direction:alternate-reverse}@keyframes wave{0%{transform:translate(0)}to{transform:translate(-60px)}}.sinking .pennant{transform-box:fill-box;transform-origin:0;animation:.8s ease-in-out infinite flutter}.count-sq{background:var(--yellow);width:48px;height:48px;color:var(--navy);font-family:var(--mono);border-radius:2px;justify-content:center;align-items:center;font-size:24px;font-weight:600;animation:.5s ease-in-out infinite alternate throb;display:flex}.victory h1{font-family:var(--stencil);margin:0;font-size:96px;font-weight:900;line-height:.9;animation:.6s cubic-bezier(.3,1.6,.5,1) both slam}.awards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:100%;display:grid}.award{background:var(--navy2);border-top:5px solid var(--yellow);flex-direction:column;gap:4px;padding:14px;animation:.5s ease-out both slide-in;display:flex}.award .t{font-family:var(--stencil);color:var(--yellow);font-size:24px;font-weight:900}.award .w{font-size:20px;font-weight:800}.award .y{font-family:var(--mono);color:var(--mist);font-size:12px}.confetti{pointer-events:none;position:absolute;inset:0;overflow:hidden}.confetti span{width:14px;height:14px;animation:5s linear infinite fall;position:absolute;top:-20px}@keyframes fall{to{transform:translateY(110vh)rotate(720deg)}}.ph-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.ph-top .mono{color:var(--mist);font-size:14px}.ph-title{font-family:var(--stencil);margin:0;font-size:46px;font-weight:900;line-height:.95}.ph-lede{color:var(--mist);margin:0;font-size:16px;font-weight:500;line-height:1.35}.boat-pick{flex-wrap:wrap;gap:8px;display:flex}.boat-pick button{cursor:pointer;border:2px dashed var(--line);height:44px;color:var(--paper);background:0 0;border-radius:2px;align-items:center;gap:8px;padding:0 12px;font-size:15px;font-weight:800;display:flex}.boat-pick button.placed{background:var(--paper);color:var(--navy);border:none}.boat-pick button.on{background:var(--yellow);color:var(--navy);border:none;animation:.3s ease-out both lift}.boat-pick .segs{gap:2px;display:flex}.boat-pick .segs span{background:currentColor;width:8px;height:8px}@keyframes lift{0%{transform:translateY(0)}50%{transform:translateY(-5px)}to{transform:none}}.row2{gap:10px;display:flex}.row2>*{flex:1}.crewbox{background:var(--navy2);border-radius:2px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.crewbox .chips{flex-wrap:wrap;gap:8px;display:flex}.crewbox .chips button{background:var(--tip);height:44px;color:var(--navy);cursor:pointer;border:none;border-radius:2px;padding:0 14px;font-size:15px;font-weight:800;animation:.3s ease-out both pop}.incoming{background:var(--yellow);color:var(--navy);border-radius:2px;flex-direction:column;gap:8px;padding:16px 18px;animation:.6s ease-out both shake;display:flex}.incoming.calm{background:var(--navy2);color:var(--paper);animation:none}.incoming .big{font-family:var(--stencil);font-size:34px;font-weight:900;line-height:.95}@keyframes shake{0%,to{transform:none}15%{transform:translate(-6px,2px)rotate(-1deg)}30%{transform:translate(6px,-2px)rotate(1deg)}45%{transform:translate(-4px,1px)}60%{transform:translate(4px)}75%{transform:translate(-2px)}}.shiplist{flex-direction:column;gap:6px;display:flex}.shiplist>div{background:var(--navy2);border-radius:2px;justify-content:space-between;align-items:center;height:34px;padding:0 12px;display:flex}.shiplist .nm{font-size:16px;font-weight:700}.shiplist .gone .nm{color:var(--mist);text-decoration:line-through}.shiplist .segs{gap:3px;display:flex}.shiplist .segs span{background:var(--paper);width:14px;height:14px}.shiplist .segs span.h{background:var(--red)}.shiplist .gone .segs span{background:var(--line)}.note{border:1px dashed var(--line);color:var(--mist);border-radius:2px;margin:auto 0 0;padding:12px 14px;font-size:15px;font-weight:500;line-height:1.4}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.confetti,.impact{display:none}}@media (width<=1000px){.chart{padding:20px}.panels{flex-direction:column;align-items:center;gap:20px;overflow:auto}.awards{grid-template-columns:repeat(2,minmax(0,1fr))}}.victory{padding:28px 48px 24px;gap:12px!important}.victory h1{font-size:64px}.victory .panel{gap:8px;padding:12px 16px}.victory .panel h2{font-size:24px}.victory .waters.small{grid-auto-rows:21px}.victory .award{padding:10px 12px}.victory .award .t{font-size:20px}
