@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-cyrillic-wght-normal-CY6AOgYE.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-vietnamese-wght-normal-U01xdrZh.woff2)format("woff2-variations");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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-latin-ext-wght-normal-CXYtwYOx.woff2)format("woff2-variations");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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-latin-wght-normal-BzFMHfZw.woff2)format("woff2-variations");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:Pirata One;font-style:normal;font-display:swap;font-weight:400;src:url(./pirata-one-latin-ext-400-normal-CI_wL8s0.woff2)format("woff2"),url(./pirata-one-latin-ext-400-normal-DS3wEyC3.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:Pirata One;font-style:normal;font-display:swap;font-weight:400;src:url(./pirata-one-latin-400-normal-C8jLWNfm.woff2)format("woff2"),url(./pirata-one-latin-400-normal-CiJE7gJH.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{--sea:#1d8fd0;--ink:#0c2740;--panel:#0929469e;--panel-strong:#092946cc;--panel-border:#ffffff29;--text:#fff;--text-dim:#e4f2ffcc;--accent:#ff7656;--accent-strong:#e5513a;--ivory:#fff8ea;--lagoon:#6fe3d3;--amber:#ffc65c;--radius:14px;--shadow:0 6px 20px #031c3847;--gap:12px;--safe-top:max(var(--gap), env(safe-area-inset-top));--safe-right:max(var(--gap), env(safe-area-inset-right));--safe-bottom:max(var(--gap), env(safe-area-inset-bottom));--safe-left:max(var(--gap), env(safe-area-inset-left));--font:"Nunito Variable", "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;--font-display:"Pirata One", Georgia, serif;--display-scale:1.2;--display-tracking:.04em;--ease:cubic-bezier(.22, 1, .36, 1)}.hud-zone__name,.hud-card__title,.island-label__name,.hud-dest__name,.fallback h1{font-family:var(--font-display);letter-spacing:var(--display-tracking);font-weight:400}*,:before,:after{box-sizing:border-box}html,body{overscroll-behavior:none;background:var(--sea);height:100%;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;overflow:hidden}.app{position:fixed;top:0;bottom:0;left:0;right:0}button{font:inherit;color:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:0}button:focus-visible{outline:3px solid var(--amber);outline-offset:2px}.sea-canvas:focus-visible{outline:3px solid var(--amber);outline-offset:2px}[hidden]{display:none!important}.sea-view{-webkit-user-select:none;user-select:none;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.sea-canvas{touch-action:none;cursor:grab;width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}.sea-canvas.is-grabbing{cursor:grabbing}.sea-canvas:focus-visible{outline-offset:-4px}.sea-hud{pointer-events:none;font-size:14px;line-height:1.3;position:absolute;top:0;bottom:0;left:0;right:0}.sea-hud button,.sea-hud .hud-panel{pointer-events:auto}.sea-view button,.sea-view input,.sea-view label,.hud-panel{touch-action:manipulation}.sea-view{-webkit-touch-callout:none}.hud-panel{background:var(--panel);border:1px solid var(--panel-border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px)saturate(1.2);backdrop-filter:blur(8px)saturate(1.2)}.hud-top{top:var(--safe-top);left:var(--safe-left);right:var(--safe-right);justify-content:space-between;align-items:flex-start;gap:10px;display:flex;position:absolute}.hud-zone{pointer-events:none;border-radius:16px;align-items:center;gap:10px;padding:7px 16px 7px 8px;display:inline-flex}.hud-zone__icon{background:linear-gradient(160deg, var(--accent), var(--accent-strong));color:#fff;border-radius:11px;place-items:center;width:34px;height:34px;display:grid}.hud-zone__icon svg{width:22px;height:22px}.hud-zone__text{flex-direction:column;display:flex}.hud-zone__label{letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim);font-size:10px}.hud-zone__name{font-size:calc(18px * var(--display-scale));line-height:1.1}.hud-top__right{align-items:flex-start;gap:8px;display:flex;position:relative}.hud-settings-slot{display:contents}.hud-btn{border-radius:var(--radius);width:46px;height:46px;transition:transform .15s var(--ease), background-color .2s;place-items:center;display:grid}.hud-btn svg{width:22px;height:22px}.hud-btn:active{transform:scale(.94)}.hud-btn[aria-disabled=true]{opacity:.4;cursor:default;box-shadow:none}.hud-btn[aria-disabled=true]:active{transform:none}.hud-btn--label{justify-content:center;align-items:center;gap:8px;width:auto;padding:0 14px;font-weight:600;display:inline-flex}.hud-btn.is-attention{background:var(--accent);animation:attention 2s var(--ease) infinite;border-color:#fff6}@keyframes attention{0%,to{box-shadow:var(--shadow), 0 0 0 0 #ff76568c}50%{box-shadow:var(--shadow), 0 0 0 8px #ff765600}}.hud-dest{width:min(280px, calc(100vw - 2 * var(--gap)));background:var(--panel-strong);animation:pop-in .22s var(--ease);border-radius:16px;padding:10px;position:absolute;top:calc(100% + 8px);right:0}.hud-dest__head{justify-content:space-between;align-items:center;padding:2px 4px 8px 8px;display:flex}.hud-icon-btn{border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.hud-icon-btn svg{width:18px;height:18px}.hud-dest__list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.hud-dest__item{text-align:left;border-radius:12px;align-items:center;gap:12px;width:100%;min-height:50px;padding:6px 10px;transition:background-color .15s;display:flex}.hud-dest__item:hover{background:#ffffff1a}.hud-dest__item:focus-visible{background:#ffffff1a}.hud-dest__icon{width:34px;height:34px;color:var(--lagoon);background:#6fe3d32e;border-radius:50%;place-items:center;display:grid}.hud-dest__icon svg{width:20px;height:20px}.hud-dest__text{flex-direction:column;display:flex}.hud-dest__name{font-size:calc(16px * var(--display-scale))}.hud-dest__head strong{font-size:14px;font-weight:800}.hud-dest__kind{color:var(--text-dim);font-size:12px}.hud-cam{right:var(--safe-right);bottom:calc(var(--safe-bottom) + 70px);flex-direction:column;gap:8px;display:flex;position:absolute}.hud-bottom{left:var(--safe-left);right:var(--safe-right);bottom:var(--safe-bottom);flex-direction:column;align-items:flex-start;gap:10px;display:flex;position:absolute}.hud-status{pointer-events:none;border-radius:999px;align-items:center;gap:12px;max-width:100%;min-height:56px;padding:8px 8px 8px 16px;display:flex}.hud-status__dot{background:var(--text-dim);border-radius:50%;flex:none;width:10px;height:10px}.hud-status[data-mode=sailing] .hud-status__dot{background:var(--accent);animation:1.4s ease-in-out infinite dot-pulse}.hud-status[data-mode=stopped] .hud-status__dot{background:var(--amber)}.hud-status[data-mode=arrived] .hud-status__dot{background:var(--lagoon)}@keyframes dot-pulse{50%{box-shadow:0 0 0 5px #ff765640}}.hud-status__text{flex-direction:column;min-width:0;padding-right:8px;display:flex}.hud-status__main{white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;overflow:hidden}.hud-status__sub{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.hud-sail{pointer-events:auto;background:#ffffff24;border-radius:999px;flex:none;align-items:center;gap:6px;height:40px;padding:0 16px 0 12px;font-weight:600;display:inline-flex}.hud-sail svg{width:16px;height:16px}.hud-sail:hover{background:#ffffff38}.hud-card{width:min(400px,100%);color:var(--ink);animation:card-in .35s var(--ease);background:#fff9ecf2;border-color:#ffffffb3;border-radius:18px;padding:14px 16px 16px;position:relative}.hud-card__close{color:#0c27408c;touch-action:manipulation;width:34px;height:34px;transition:background-color .2s var(--ease), color .2s var(--ease);border-radius:10px;place-items:center;display:grid;position:absolute;top:8px;right:8px}.hud-card__close:hover{color:var(--ink);background:#0c274014}.hud-card__close:focus-visible{outline:3px solid var(--amber);outline-offset:1px}.hud-card__close svg{width:18px;height:18px}.hud-card__title{padding-right:30px}.hud-card__kind{color:var(--accent-strong);letter-spacing:.1em;text-transform:uppercase;background:#e5513a1f;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.hud-card__title{font-size:calc(23px * var(--display-scale));margin:6px 0 4px;line-height:1.15}.hud-card__desc{color:#0c2740c7;margin:0 0 12px;font-size:13.5px}.hud-cta{justify-content:center;align-items:center;width:100%;min-height:48px;font-size:17px;display:flex}@keyframes card-in{0%{opacity:0;transform:translateY(12px)}}@keyframes pop-in{0%{opacity:0;transform:translateY(-6px)scale(.98)}}.hud-labels{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.island-label{touch-action:none;background:var(--panel);border:1px solid var(--panel-border);font-size:calc(13.5px * var(--display-scale));white-space:nowrap;will-change:transform;border-radius:999px;align-items:center;gap:6px;padding:4px 11px 4px 4px;display:inline-flex;position:absolute;top:0;left:0;box-shadow:0 3px 10px #031c3840}.island-label:before{content:"";position:absolute;top:-8px;bottom:-8px;left:-4px;right:-4px}.island-label:after{content:"";border:5px solid #0000;border-bottom:0;border-top-color:var(--panel);margin-left:-5px;position:absolute;bottom:-6px;left:50%}.island-label__pin{background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.island-label--mouillage .island-label__pin{background:#2aa98f}.island-label__pin svg{width:15px;height:15px}.island-label.is-active{background:var(--accent-strong)}.island-label.is-active:after{border-top-color:var(--accent-strong)}.island-label.is-active .island-label__pin{color:var(--accent-strong);background:#fff}.hud-toasts{top:calc(var(--safe-top) + 62px);flex-direction:column;align-items:center;gap:6px;width:min(92vw,440px);display:flex;position:absolute;left:50%;transform:translate(-50%)}.hud-toast{background:var(--panel-strong);border:1px solid var(--panel-border);box-shadow:var(--shadow);text-align:center;animation:pop-in .25s var(--ease);border-radius:999px;padding:9px 16px;font-size:13.5px;font-weight:500;transition:opacity .35s,transform .35s}.hud-toast--warn{box-shadow:var(--shadow), inset 3px 0 0 var(--accent);border-color:#ff7656b3}.hud-toast.is-leaving{opacity:0;transform:translateY(-6px)}@media (min-width:720px){.sea-hud{font-size:15px}.hud-bottom{align-items:center}.hud-cam{bottom:var(--safe-bottom)}.hud-status{max-width:min(560px,100% - 140px)}}@media (max-width:429px){.hud-btn--label span{display:none}.hud-btn--label{justify-content:center;width:46px;padding:0}}.hud-settings{z-index:5;width:min(340px, calc(100vw - 2 * var(--gap)));max-height:calc(100vh - 150px);overscroll-behavior:contain;max-height:calc(100dvh - 150px);animation:pop-in .22s var(--ease);-webkit-user-select:none;user-select:none;background:#092946ed;border-radius:20px;padding:16px 18px 18px;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto}.hud-settings__head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.hud-settings__head h2{font-family:var(--font-display);font-weight:400;font-size:calc(19px * var(--display-scale));letter-spacing:var(--display-tracking);margin:0}.gfx-field{border:0;border-top:1px solid var(--panel-border);margin:0;padding:14px 0 10px}.gfx-field legend{float:left;letter-spacing:.08em;text-transform:uppercase;width:100%;color:var(--text-dim);padding:0 0 10px;font-size:12px;font-weight:700}.gfx-field legend+*{clear:both}.gfx-seg{background:#ffffff14;border-radius:12px;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:4px;display:grid;position:relative}.gfx-seg__opt{z-index:1;position:relative}.gfx-seg__indicator{background:var(--accent);pointer-events:none;border-radius:9px;position:absolute;top:4px;left:0;box-shadow:0 2px 8px #e5513a59}.gfx-seg__opt input{opacity:0;cursor:pointer;margin:0;position:absolute;top:0;bottom:0;left:0;right:0}.gfx-seg__opt span{white-space:nowrap;border-radius:9px;place-items:center;min-height:40px;padding:0 4px;font-size:13.5px;font-weight:600;transition:background-color .15s;display:grid}.gfx-seg__opt input:checked+span{color:#fff}.gfx-seg__opt input:focus-visible+span{outline:3px solid var(--amber);outline-offset:1px}.gfx-live{color:var(--text-dim);min-height:1.3em;margin:10px 2px 0;font-size:12.5px}.gfx-toggle{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;min-height:52px;padding:4px 0;display:flex}.gfx-toggle__text{flex-direction:column;display:flex}.gfx-toggle__text small{color:var(--text-dim);font-size:12px}.gfx-switch{-webkit-appearance:none;appearance:none;cursor:pointer;width:48px;height:28px;transition:background-color .25s var(--ease);background:#ffffff2e;border-radius:14px;flex:none;margin:0;position:relative}.gfx-switch:before{content:"";width:22px;height:22px;transition:transform .4s cubic-bezier(.34, 1.7, .5, 1), width .15s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 2px 4px #03142859}.gfx-switch:checked{background:var(--accent)}.gfx-switch:checked:before{transform:translate(20px)}.gfx-switch:active:before{width:27px}.gfx-switch:checked:active:before{transform:translate(15px)}.gfx-switch:focus-visible{outline:3px solid var(--amber);outline-offset:2px}.gfx-toggle:first-of-type{border-top:1px solid var(--panel-border)}.gfx-field .gfx-toggle:first-of-type{border-top:0}.gfx-reset{background:#ffffff1f;border-radius:12px;width:100%;min-height:46px;margin-top:14px;font-weight:600}.gfx-reset:hover{background:#fff3}.gfx-note{text-align:center;color:var(--text-dim);margin:10px 0 0;font-size:12px}.bench-banner{left:50%;bottom:calc(var(--safe-bottom) + 80px);font:600 14px/1.3 var(--font);pointer-events:none;background:#000000b8;border-radius:999px;padding:8px 16px;position:absolute;transform:translate(-50%)}.bench-report{width:min(460px, calc(100vw - 2 * var(--gap)));background:var(--ivory);color:var(--ink);box-shadow:var(--shadow);z-index:10;border-radius:18px;padding:16px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.bench-report h2{font-family:var(--font-display);font-weight:400;font-size:calc(20px * var(--display-scale));margin:0 0 10px}.bench-report textarea{width:100%;color:var(--ink);resize:none;background:#fff;border:1px solid #0c274033;border-radius:10px;padding:10px;font:12px/1.45 ui-monospace,Menlo,Consolas,monospace}.bench-report p{margin:8px 0;font-size:13px}.bench-report div{gap:8px;display:flex}.bench-report button{background:var(--accent);color:#fff;border-radius:12px;flex:1;min-height:44px;font-weight:700}.bench-report button+button{color:var(--ink);background:#0c27401f}.debug-panel{left:var(--safe-left);top:calc(var(--safe-top) + 64px);z-index:5;background:#000000a8;border-radius:10px;max-width:300px;padding:6px 10px;font:12px/1.4 ui-monospace,Consolas,monospace;position:absolute}.debug-panel summary{cursor:pointer}.debug-panel pre{white-space:pre-wrap;margin:6px 0}.debug-panel label{margin:6px 0;display:block}.debug-panel input[type=range]{width:100%;display:block}.debug-panel button{background:#ffffff26;border-radius:8px;margin-top:6px;padding:6px 10px}.fallback{background:radial-gradient(at 30% 70%,#6fe3d373,#0000 55%),linear-gradient(170deg,#eef5f9 0%,#cfe6f3 14%,#1d8fd0 34%,#1271b4 100%);place-items:center;padding:24px;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.fallback__card{max-width:440px;color:var(--ink);box-shadow:var(--shadow);background:#fff9ecf5;border-radius:20px;padding:22px 24px}.fallback__kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--accent-strong);margin:0;font-size:12px;font-weight:700}.fallback h1{font-size:calc(26px * var(--display-scale));margin:6px 0 10px;line-height:1.2}.fallback ul{padding-left:18px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.shipyard{left:var(--safe-left);bottom:calc(var(--safe-bottom) + 76px);width:min(300px, calc(100vw - 2 * var(--gap)));border:1px solid var(--panel-border);box-shadow:var(--shadow);color:var(--text);font:13.5px/1.35 var(--font);z-index:6;background:#092946e6;border-radius:16px;padding:10px 12px 12px;position:fixed}.shipyard summary{cursor:pointer;font-family:var(--font-display);font-size:calc(18px * var(--display-scale));letter-spacing:var(--display-tracking)}.shipyard__desc,.shipyard__note{color:var(--text-dim);margin:6px 0;font-size:12.5px}.shipyard__seg{background:#ffffff14;border-radius:12px;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:4px;display:grid}.shipyard__opt{position:relative}.shipyard__opt input{opacity:0;cursor:pointer;margin:0;position:absolute;top:0;bottom:0;left:0;right:0}.shipyard__opt span{border-radius:9px;place-items:center;min-height:40px;font-weight:600;display:grid}.shipyard__opt input:checked+span{background:var(--accent)}.shipyard__opt input:focus-visible+span{outline:3px solid var(--amber)}.shipyard__ups{gap:2px;margin-top:8px;display:grid}.shipyard__up{cursor:pointer;align-items:center;gap:10px;min-height:44px;display:flex}.shipyard__up input{width:20px;height:20px;accent-color:var(--accent)}.shipyard__up span{flex-direction:column;display:flex}.shipyard__up small{color:var(--text-dim)}.shipyard__stats{grid-template-columns:auto 1fr;gap:2px 12px;margin:8px 0 0;display:grid}.shipyard__stats dt{color:var(--text-dim)}.shipyard__stats dd{margin:0;font-weight:600}.shipyard__fig{justify-content:space-between;align-items:center;gap:10px;min-height:44px;margin-top:8px;display:flex}.shipyard__fig select{border:1px solid var(--panel-border);min-height:40px;color:var(--text);font:inherit;background:#ffffff1a;border-radius:10px;flex:1;padding:0 8px}.shipyard__fig option{color:var(--ink)}.shipyard__fig+.shipyard__fig{margin-top:2px}.app--shell{--tabbar-h:62px}.app-views{position:absolute;top:0;bottom:0;left:0;right:0}.app--shell .sea-view,.app--shell .shipyard{--safe-bottom:calc(max(var(--gap), env(safe-area-inset-bottom)) + var(--tabbar-h) + 4px)}.app[data-route=navire] .sea-canvas{cursor:grab}.app[data-route=navire] .sea-canvas:active{cursor:grabbing}.tabbar{z-index:8;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:var(--panel-strong);border-top:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px)saturate(1.2);backdrop-filter:blur(10px)saturate(1.2);position:absolute;bottom:0;left:0;right:0}.tabbar__track{height:var(--tabbar-h);grid-template-columns:repeat(5,1fr);display:grid;position:relative}.tabbar__indicator{pointer-events:none;border-radius:14px;width:56px;height:36px;position:absolute;top:7px;left:0}.tabbar__tab{min-width:0;color:var(--text-dim);touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;transition:color .2s var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:7px;font-size:11.5px;font-weight:700;text-decoration:none;display:flex;position:relative}.tabbar__tab svg{width:24px;height:24px;margin-top:2px}.tabbar__tab[aria-current=page]{color:var(--ivory)}.tabbar__tab[aria-current=page] svg{color:#fff;animation:tab-hop .5s var(--ease) var(--hop-delay,0s) both}@keyframes tab-hop{0%{transform:translateY(0)scale(1)}45%{transform:translateY(-2px)scale(1.05)}to{transform:translateY(0)scale(1)}}.tabbar__tab:active svg{transform:scale(.94)}.tabbar__tab:focus-visible{outline:3px solid var(--amber);outline-offset:-4px;border-radius:12px}@media (min-width:900px){.tabbar{width:460px;height:var(--tabbar-h);border:1px solid var(--panel-border);box-shadow:var(--shadow);border-radius:20px;padding:0 6px;bottom:12px;left:50%;right:auto;transform:translate(-50%)}.app--shell .sea-view,.app--shell .shipyard{--safe-bottom:calc(var(--gap) + var(--tabbar-h) + 12px)}}@media (max-height:500px){.app--shell{--tabbar-h:48px}.tabbar__tab{flex-direction:row;gap:6px}.tabbar__tab svg{margin:0}.tabbar__indicator{border-radius:14px;height:38px;top:8px}}@media (prefers-reduced-motion:reduce){.tabbar__tab[aria-current=page] svg{animation:none}}.app-screen{z-index:5;padding:var(--safe-top) var(--safe-right) calc(var(--tabbar-h) + max(var(--gap), env(safe-area-inset-bottom)) + 16px) var(--safe-left);background:radial-gradient(at 20% 85%,#6fe3d347,#0000 55%),radial-gradient(at 85% 10%,#ffc65c29,#0000 50%),linear-gradient(175deg,#134f80 0%,#0d3a62 55%,#0a2c4c 100%);place-items:center;display:grid;position:absolute;top:0;bottom:0;left:0;right:0;overflow-y:auto}.soon{text-align:center;width:min(420px,100%);padding:28px 24px}.soon__kicker{color:var(--amber);letter-spacing:.08em;text-transform:uppercase;background:#ffc65c2e;border-radius:999px;margin:0 0 10px;padding:4px 12px;font-size:12.5px;font-weight:800;display:inline-block}.soon__title{font-family:var(--font-display);font-weight:400;font-size:calc(30px * var(--display-scale));letter-spacing:var(--display-tracking);color:var(--ivory);outline:none;margin:0 0 8px}.soon__text{color:var(--text-dim);margin:0 0 18px;font-size:15px;line-height:1.45}.soon__list{text-align:left;gap:8px;margin:0;padding:0;list-style:none;display:grid}.soon__list li{border:1px solid var(--panel-border);background:#ffffff12;border-radius:14px;padding:12px 14px 12px 40px;font-weight:600;position:relative}.soon__list li:before{content:"";background:var(--lagoon);border-radius:50%;width:10px;height:10px;margin-top:-5px;position:absolute;top:50%;left:15px;box-shadow:0 0 0 3px #6fe3d340}.ship-screen{z-index:4;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.ship-panel{pointer-events:auto;left:var(--safe-left);right:var(--safe-right);bottom:calc(var(--tabbar-h) + max(var(--gap), env(safe-area-inset-bottom)) + 4px);overscroll-behavior:contain;background:var(--panel-strong);touch-action:pan-y;border-radius:20px;max-height:52%;padding:16px 16px 12px;font-size:14px;line-height:1.35;position:absolute;overflow-y:auto}@media (min-width:900px){.ship-panel{left:auto;top:var(--safe-top);width:380px;max-height:calc(100% - var(--safe-top) - var(--tabbar-h) - 26px);bottom:auto}}.ship-panel__head h1{font-family:var(--font-display);font-weight:400;font-size:calc(24px * var(--display-scale));letter-spacing:var(--display-tracking);color:var(--ivory);outline:none;margin:0}.ship-panel__head p{color:var(--text-dim);margin:6px 0 16px}.ship-classes{grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 16px;padding:0;list-style:none;display:grid}.ship-class{border:1px dashed var(--panel-border);color:var(--text-dim);background:#ffffff0f;border-radius:12px;flex-direction:column;align-items:center;padding:8px 4px;display:flex}.ship-class small{font-size:11.5px}.ship-class.is-own{border:1px solid var(--accent);color:var(--text);background:#ff76562e}.ship-panel__stats{text-align:center;grid-template-columns:repeat(3,1fr);gap:6px;margin:0 0 18px;display:grid}.ship-panel__stats dt{color:var(--text-dim);margin-bottom:2px;font-size:12px}.ship-panel__stats dd{margin:0;font-size:16px;font-weight:800}.ship-panel__group{border:0;min-width:0;margin:22px 0 0;padding:0}.ship-panel__group legend{margin-bottom:10px;padding:0;font-weight:800}.ship-panel__group legend small{color:var(--text-dim);margin-left:6px;font-weight:600}.chips{flex-wrap:wrap;gap:10px;display:flex}.swatches,.emblem-tiles{grid-template-columns:repeat(var(--cols,6), minmax(0, 1fr));justify-items:center;gap:10px;display:grid}.chip,.swatch{touch-action:manipulation;position:relative}.chip input,.swatch input{opacity:0;cursor:pointer;margin:0;position:absolute;top:0;bottom:0;left:0;right:0}.chip span{border:1px solid var(--panel-border);background:#ffffff17;border-radius:999px;place-items:center;min-height:40px;padding:0 14px;font-size:13.5px;font-weight:700;display:grid}.chip input:checked+span{background:var(--accent);border-color:var(--accent);color:#fff}.emblem-tiles{--cols:7;gap:10px}.swatches{--cols:9;gap:8px}.swatch,.emblem-tile{width:100%;max-width:50px}.swatch span{aspect-ratio:1;background:linear-gradient(var(--sw-angle,135deg), var(--sw) calc(var(--sw-split,58%) - .6px), var(--sw2) calc(var(--sw-split,58%) + .6px));border-radius:50%;width:100%;display:block;box-shadow:inset 0 0 0 2px #ffffff38}.swatch input:checked+span{box-shadow:inset 0 0 0 2px #ffffff38, 0 0 0 2px #fff, 0 0 0 5px var(--accent)}.chip input:focus-visible+span{outline:3px solid var(--amber);outline-offset:2px}.swatch input:focus-visible+span{outline:3px solid var(--amber);outline-offset:2px}.ship-panel__custom{border-top:1px solid var(--panel-border);padding-top:0}.ship-panel__group:disabled{opacity:.4}.ship-panel__group:disabled input{cursor:not-allowed}.ship-panel__group:disabled .swatch input:checked+span{box-shadow:none}.ship-panel__note{color:var(--text-dim);margin:22px 0 0;font-size:12px}.emblem-tile{touch-action:manipulation;position:relative}.emblem-tile input{opacity:0;cursor:pointer;margin:0;position:absolute;top:0;bottom:0;left:0;right:0}.emblem-tile span{aspect-ratio:1;width:100%;transition:transform .2s var(--ease);background:#fbf3e2;border-radius:12px;display:block;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px #ffffff38}.emblem-tile canvas{width:100%;height:100%;display:block}.emblem-tile__none{background:linear-gradient(135deg,#0000 calc(50% - .8px),#2a222666 calc(50% - .4px) calc(50% + .4px),#0000 calc(50% + .8px));position:absolute;top:0;bottom:0;left:0;right:0}.emblem-tile input:checked+span{box-shadow:0 0 0 2px #fff, 0 0 0 5px var(--accent)}.emblem-tile input:active+span{transform:scale(.94)}.emblem-tile input:focus-visible+span{outline:3px solid var(--amber);outline-offset:4px}.dropdown__label{margin-bottom:10px;font-weight:800;display:block}.dropdown__trigger{border:1px solid var(--panel-border);text-align:left;touch-action:manipulation;width:100%;min-height:48px;transition:background-color .2s var(--ease), border-color .2s var(--ease);background:#ffffff17;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:0 14px;font-weight:700;display:flex}.dropdown__trigger:hover,.dropdown.is-open .dropdown__trigger{background:#ffffff24;border-color:#ffffff4d}.dropdown__trigger:focus-visible{outline:3px solid var(--amber);outline-offset:2px}.dropdown__value{align-items:center;gap:10px;min-width:0;display:flex}.dropdown__chevron{color:var(--text-dim);transition:transform .3s var(--ease);flex:none}.dropdown.is-open .dropdown__chevron{transform:rotate(180deg)}.dropdown__list{z-index:60;overscroll-behavior:contain;border:1px solid var(--panel-border);color:var(--text);font:14px/1.3 var(--font);transform-origin:top;animation:dropdown-pop .28s var(--ease);background:#0d3558;border-radius:16px;outline:none;margin:0;padding:6px;list-style:none;position:fixed;overflow-y:auto;box-shadow:0 12px 32px #03142880}.dropdown__list--up{transform-origin:bottom}@keyframes dropdown-pop{0%{opacity:0;transform:scale(.92,.85)}60%{opacity:1;transform:scale(1.02,1.03)}to{transform:scale(1)}}.dropdown__option{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:11px;align-items:center;gap:10px;min-height:46px;padding:6px 10px 6px 12px;display:flex}.dropdown__option.is-active{background:#ffffff1a}.dropdown__option[aria-selected=true]{color:var(--accent)}.dropdown__option[aria-disabled=true]{opacity:.45;cursor:not-allowed}.dropdown__text{flex-direction:column;flex:1;min-width:0;display:flex}.dropdown__text small{color:var(--text-dim);font-size:12.5px}.dropdown__icon{flex:none;place-items:center;width:28px;height:28px;display:grid}.dropdown__badge{color:var(--amber);background:#ffc65c2e;border-radius:999px;flex:none;padding:2px 8px;font-size:11.5px;font-weight:800}.dropdown__check{opacity:0;flex:none}.dropdown__option[aria-selected=true] .dropdown__check{opacity:1}@media (prefers-reduced-motion:reduce){.gfx-switch,.gfx-switch:before{transition:none}.dropdown__list{animation:none}.dropdown__chevron{transition:none}}.soon__setting{text-align:left;margin:0 0 18px}.ship-panel,.hud-settings,.dropdown__list,.app-screen,.hud-dest,.shipyard{--scroll-thumb:#fff8ea4d;--scroll-fade:#092946eb;scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}.ship-panel::-webkit-scrollbar{width:10px}.hud-settings::-webkit-scrollbar{width:10px}.dropdown__list::-webkit-scrollbar{width:10px}.app-screen::-webkit-scrollbar{width:10px}.hud-dest::-webkit-scrollbar{width:10px}.shipyard::-webkit-scrollbar{width:10px}.ship-panel::-webkit-scrollbar-thumb{background:var(--scroll-thumb) padding-box;border:3px solid #0000;border-radius:10px}.hud-settings::-webkit-scrollbar-thumb{background:var(--scroll-thumb) padding-box;border:3px solid #0000;border-radius:10px}.dropdown__list::-webkit-scrollbar-thumb{background:var(--scroll-thumb) padding-box;border:3px solid #0000;border-radius:10px}.app-screen::-webkit-scrollbar-thumb{background:var(--scroll-thumb) padding-box;border:3px solid #0000;border-radius:10px}.hud-dest::-webkit-scrollbar-thumb{background:var(--scroll-thumb) padding-box;border:3px solid #0000;border-radius:10px}.shipyard::-webkit-scrollbar-thumb{background:var(--scroll-thumb) padding-box;border:3px solid #0000;border-radius:10px}.ship-panel::-webkit-scrollbar-thumb:hover{background-color:#fff8ea80}.hud-settings::-webkit-scrollbar-thumb:hover{background-color:#fff8ea80}.dropdown__list::-webkit-scrollbar-thumb:hover{background-color:#fff8ea80}.ship-panel::-webkit-scrollbar-track{margin:14px 0}.hud-settings::-webkit-scrollbar-track{margin:14px 0}.dropdown__list::-webkit-scrollbar-track{margin:14px 0}.ship-panel,.hud-settings,.dropdown__list{padding-bottom:0!important}.ship-panel:after,.hud-settings:after,.dropdown__list:after{content:"";height:calc(30px + var(--fade-pad));margin:-30px calc(-1 * var(--fade-pad-x)) 0;background:linear-gradient(transparent, var(--scroll-fade) 30px);pointer-events:none;opacity:0;transition:opacity .25s var(--ease);display:block;position:sticky;bottom:0}.ship-panel[data-scroll-more=true]:after,.hud-settings[data-scroll-more=true]:after,.dropdown__list[data-scroll-more=true]:after{opacity:1}.ship-panel{--scroll-fade:#092946d9;--fade-pad:12px;--fade-pad-x:16px}.hud-settings{--fade-pad:18px;--fade-pad-x:18px}.dropdown__list{--scroll-fade:#0d3558;--fade-pad:6px;--fade-pad-x:6px}.plus{align-self:start;width:min(440px,100%);padding:8px 4px 24px}.account__title,.plus__options h2{font-family:var(--font-display);font-weight:400;font-size:calc(26px * var(--display-scale));letter-spacing:var(--display-tracking);color:var(--ivory);outline:none;margin:8px 0 14px}.plus__options{border-top:1px solid var(--panel-border);margin-top:28px;padding-top:18px}.plus__options h2{font-size:calc(20px * var(--display-scale))}.account__muted{color:var(--text-dim);margin:0 0 14px;font-size:14px;line-height:1.45}.account__muted svg{vertical-align:-4px}.account__notice{border-radius:12px;margin:0 0 14px;padding:10px 14px;font-size:14px;font-weight:700}.account__notice--ok{color:var(--lagoon);background:#6fe3d329}.account__notice--error{color:#ffb3a1;background:#ff765629}.account__card,.account__danger{border:1px solid var(--panel-border);background:#ffffff0f;border-radius:18px;padding:16px}.account__welcome{margin:0 0 12px;font-size:17px;font-weight:800}.account__facts{margin:4px 0 14px}.account__facts dt{color:var(--text-dim);font-size:12.5px}.account__facts dd{overflow-wrap:anywhere;margin:2px 0 0;font-weight:700}.badge{vertical-align:1px;border-radius:999px;margin-left:4px;padding:2px 8px;font-size:11.5px;font-weight:800;display:inline-block}.badge--ok{color:var(--lagoon);background:#6fe3d32e}.badge--warn{color:var(--amber);background:#ffc65c2e}.account__danger{background:#ff76560f;border-color:#ff76564d;margin-top:16px}.account__danger summary{cursor:pointer;color:#ffb3a1;font-weight:800}.account__danger .account__form{margin-top:12px}.account-tabs{background:#ffffff14;border-radius:14px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:16px;padding:4px;display:grid;position:relative}.account-tabs__indicator{background:var(--accent);pointer-events:none;border-radius:10px;position:absolute;top:4px;left:0;box-shadow:0 2px 8px #e5513a59}.account-tabs [role=tab]{z-index:1;min-height:42px;color:var(--text-dim);touch-action:manipulation;border-radius:10px;font-weight:800;position:relative}.account-tabs [role=tab][aria-selected=true]{color:#fff}.account__form{gap:4px;display:grid}.account__form h2{margin:0 0 6px;font-size:17px}.account__inline{grid-template-columns:1fr auto;align-items:end;gap:8px;margin-bottom:8px;display:grid}.account__inline .btn{min-height:48px;margin-bottom:29px}.account__muted .btn--link{vertical-align:baseline;min-height:0;padding:0 2px}.field{gap:5px;margin-bottom:6px;display:grid}.field label{font-size:13.5px;font-weight:800}.field__control{position:relative}.field input{border:1px solid var(--panel-border);width:100%;min-height:48px;color:var(--text);font:600 16px var(--font);transition:border-color .2s var(--ease), background-color .2s var(--ease);background:#ffffff17;border-radius:12px;padding:0 14px}.field input:-webkit-autofill{-webkit-text-fill-color:var(--text);caret-color:var(--text);transition:background-color 600000s;box-shadow:inset 0 0 0 100px #1d3d5c}.field input:-webkit-autofill:hover{-webkit-text-fill-color:var(--text);caret-color:var(--text);transition:background-color 600000s;box-shadow:inset 0 0 0 100px #1d3d5c}.field input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);caret-color:var(--text);transition:background-color 600000s;box-shadow:inset 0 0 0 100px #1d3d5c}.field input:focus{border-color:var(--amber);background:#ffffff21;outline:none}.field input[type=password],.field input[name=password]{padding-right:48px}.field__eye{width:40px;height:40px;color:var(--text-dim);border-radius:10px;place-items:center;margin-top:-20px;display:grid;position:absolute;top:50%;right:4px}.field__eye[aria-pressed=true]{color:var(--amber)}.field__msg{min-height:1.2em;color:var(--text-dim);margin:0;font-size:12.5px}.field__msg:empty{display:none}.account__inline .field__msg:empty{display:block}.field.has-error input{border-color:#ff8a70}.field.has-error .field__msg{color:#ffb3a1;font-weight:700}.account__error{color:#ffb3a1;min-height:1.2em;margin:0 0 6px;font-size:13.5px;font-weight:700}.account__error:empty{display:none}.btn{touch-action:manipulation;min-height:46px;transition:background-color .2s var(--ease), transform .15s var(--ease);background:#ffffff1f;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:0 18px;font-weight:800;text-decoration:none;display:inline-flex}.btn:hover{background:#ffffff2e}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.6;cursor:progress}.btn:focus-visible{outline:3px solid var(--amber);outline-offset:2px}.btn--primary,.btn--danger,.hud-cta{--cta-top:#ffa070;--cta-mid:#ff7b53;--cta-bottom:#f1603c;--cta-edge:#a02c148c;--cta-line:#6a2213;border:1.5px solid var(--cta-line);background:linear-gradient(180deg, var(--cta-top) 0%, var(--cta-mid) 52%, var(--cta-bottom) 100%);color:#fff;text-shadow:0 1.5px #781e0a8c;min-height:48px;box-shadow:inset 0 2px 1px #ffffff80, inset 0 9px 10px -7px #fff0dc73, inset 0 -3px 2px var(--cta-edge), inset 0 0 0 1px #ffd2b438, 0 2px 0 var(--cta-line), 0 6px 12px #030e1c4d;transition:transform .12s var(--ease), box-shadow .12s var(--ease), filter .2s var(--ease);border-radius:14px;margin-bottom:2px;font-weight:900;position:relative}.btn--danger{--cta-top:#f0735a;--cta-mid:#d9472f;--cta-bottom:#c23a24;--cta-edge:#6e180a99;--cta-line:#551509}.btn--primary:hover,.btn--danger:hover,.hud-cta:hover{background:linear-gradient(180deg, var(--cta-top) 0%, var(--cta-mid) 52%, var(--cta-bottom) 100%);filter:brightness(1.06)}.btn--primary:active,.btn--danger:active,.hud-cta:active{filter:brightness(.96);box-shadow:inset 0 2px 3px #781e0a59, inset 0 -1px 1px #ffffff40, inset 0 0 0 1px #ffd2b42e, 0 0 0 var(--cta-line), 0 2px 5px #030e1c40;transform:translateY(2px)}.btn--primary:disabled,.btn--danger:disabled{filter:saturate(.6)}.account-tabs__indicator,.gfx-seg__indicator,.tabbar__indicator,.shipyard__opt input:checked+span,.chip input:checked+span{color:#fff;text-shadow:0 1px #781e0a73;background:linear-gradient(#ffa070 0%,#ff7b53 52%,#f1603c 100%);border-color:#0000;box-shadow:inset 0 0 0 1.5px #6a2213,inset 0 3px 1px -1px #ffffff80,inset 0 8px 9px -7px #fff0dc73,inset 0 -3px 2px -1px #a02c148c,0 2px 6px #030e1c4d}.btn--link{min-height:40px;color:var(--lagoon);background:0 0;font-weight:700}.btn--link:hover{background:0 0;text-decoration:underline}.btn--google{color:#1f1f1f;background:#fff;width:100%}.btn--google:hover{background:#f1f1f1}.account__or{color:var(--text-dim);align-items:center;gap:12px;margin:14px 0;font-size:13px;display:flex}.account__or:before,.account__or:after{content:"";background:var(--panel-border);flex:1;height:1px}.tabbar{transition:translate .6s cubic-bezier(.34, 1.56, .64, 1), opacity .3s var(--ease)}.app[data-gate] .tabbar{opacity:0;pointer-events:none;translate:0 160%}.app[data-gate] .app-screen,.app[data-gate] .ship-screen{visibility:hidden}.title-screen{z-index:30;animation:title-veil .6s var(--ease);background:linear-gradient(#0514260d 0%,#0514264d 52%,#051426d1 100%);position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}@keyframes title-veil{0%{opacity:0}}.title-crew,.title-logo{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.title-crew img,.title-logo img{-webkit-user-drag:none}.title-crew{pointer-events:none;left:50%;top:calc(var(--safe-top) + 19dvh);aspect-ratio:1.12;pointer-events:none;height:min(52dvh,112vw);animation:.8s cubic-bezier(.25,.8,.35,1) .1s backwards title-crew-in;position:absolute;translate:-50%}@keyframes title-crew-in{0%{opacity:0;translate:-50% 25%}}.title-hero{height:100%;margin:0;position:absolute;bottom:0;left:50%;translate:-50%}.title-hero--center{z-index:2}.title-hero--left,.title-hero--right{z-index:1;height:84%}.title-hero--left{left:26%}.title-hero--right{left:74%}.title-shadow{z-index:0;filter:blur(1.5px);width:46%;height:7%;transition:opacity .3s var(--ease), scale .3s var(--ease);background:#030e1c6b;border-radius:50%;display:none;position:absolute;bottom:-2.5%;left:50%;translate:-50%}.title-shadow--left,.title-shadow--right{width:39%;height:6%;bottom:-2.1%}.title-shadow--left{left:26%}.title-shadow--right{left:74%}.title-shadow.is-out{opacity:0;scale:.55 .7}.title-hero__img{filter:drop-shadow(0 10px 18px #030e1c8c);transform-origin:50% 100%;width:auto;height:100%;display:block}.title-hero--left .title-hero__img,.title-hero--right .title-hero__img{filter:brightness(.86)drop-shadow(0 10px 18px #030e1c8c)}.title-side{z-index:3;box-sizing:border-box;flex-direction:column;width:min(480px,100%);margin:0 auto;padding:0 12px;animation:.7s cubic-bezier(.34,1.4,.64,1) .15s backwards title-card-in;display:flex;position:absolute;bottom:0;left:0;right:0}.title-card{overscroll-behavior:contain;background:var(--panel-strong);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(12px)saturate(1.2);backdrop-filter:blur(12px)saturate(1.2);scrollbar-width:thin;scrollbar-color:#fff8ea4d transparent;border-radius:28px;max-height:calc(62dvh - 156px);padding:26px 20px 14px;position:relative;overflow-y:auto;box-shadow:0 8px 30px #030e1c66}.title-langs{padding:10px 20px calc(12px + env(safe-area-inset-bottom));justify-content:center;gap:2px;display:flex}.title-lang{opacity:.7;width:40px;height:36px;transition:opacity .2s var(--ease), transform .2s var(--ease), box-shadow .2s var(--ease);touch-action:manipulation;border-radius:10px;place-items:center;display:grid}.title-lang .flag{width:30px;height:20px}.title-lang:hover{opacity:1}.title-lang[aria-pressed=true]{opacity:1;transform:scale(1.06)}.title-lang[aria-pressed=true] .flag{outline-offset:2px;outline:2px solid #fff}.title-lang:focus-visible{outline:3px solid var(--amber);outline-offset:2px}@keyframes title-card-in{0%{translate:0 100%}}.title-logo{z-index:2;font-size:inherit;text-align:center;pointer-events:none;justify-content:center;margin:0 0 -14px;display:flex;position:relative}.title-logo__img{filter:drop-shadow(0 6px 10px #030e1c73);width:min(220px,60vw);height:auto;animation:.7s cubic-bezier(.34,1.6,.64,1) .35s backwards title-logo-pop;display:block}@media (min-width:900px){.title-logo__img{width:260px}}@keyframes title-logo-pop{0%{opacity:0;scale:.4}}.title-card__skip{color:var(--text-dim);margin:6px auto 0;font-size:13px;display:block}.title-screen.is-leaving{animation:title-veil-out .5s var(--ease) forwards}.title-screen.is-leaving .title-side{animation:.45s cubic-bezier(.5,0,.75,0) forwards title-card-out}.title-screen.is-leaving .title-crew{animation:.45s cubic-bezier(.5,0,.75,0) forwards title-crew-out}@keyframes title-veil-out{to{opacity:0}}@keyframes title-card-out{to{translate:0 110%}}@keyframes title-crew-out{to{opacity:0;translate:-50% -20%}}@media (min-width:900px){.title-screen{background:linear-gradient(90deg,#0514268c 0%,#0514261a 45%,#051426a6 100%)}.title-crew{height:min(118dvh,64vw);top:auto;bottom:calc(min(118dvh,64vw)/-3.84615);left:-3vw;translate:0}@keyframes title-crew-in{0%{opacity:0;translate:-15%}}@keyframes title-crew-out{to{opacity:0;translate:-25%}}.title-side{width:420px;padding:0;top:50%;bottom:auto;left:auto;right:7vw;translate:0 -50%}.title-card{max-height:calc(88dvh - 180px);padding-bottom:22px}.title-langs{padding:14px 0 0}@keyframes title-card-in{0%{opacity:0;translate:0 -40%}}@keyframes title-card-out{to{opacity:0;translate:20% -50%}}}@media (min-width:1400px) and (min-height:950px){.title-crew{height:min(74dvh,40vw,860px);bottom:5dvh;left:6vw}.title-shadow{display:block}.title-crew:before{content:"";z-index:0;filter:blur(2px);background:#030e1c38;border-radius:50%;width:96%;height:11%;position:absolute;bottom:-6%;left:50%;translate:-50%}}@media (prefers-reduced-motion:reduce){.title-screen,.title-crew,.title-side,.title-logo__img{animation:none!important}.tabbar{transition:none}}.flag{border-radius:3px;display:block;box-shadow:0 0 0 1px #030e1c59}button.hud-zone{pointer-events:auto;text-align:left;cursor:pointer;touch-action:manipulation;transition:transform .15s var(--ease)}button.hud-zone:active{transform:scale(.97)}button.hud-zone:focus-visible{outline:3px solid var(--amber);outline-offset:2px}.hud-minimap{left:var(--safe-left);bottom:calc(var(--safe-bottom) + 70px);pointer-events:auto;animation:pop-in .25s var(--ease);border-radius:16px;padding:5px;position:absolute}.hud-minimap[hidden]{display:none}.sea-hud:has(.hud-card:not([hidden])) .hud-minimap{display:none}.hud-minimap__canvas{cursor:pointer;touch-action:manipulation;border:2px solid #08213a;border-radius:11px;width:118px;height:118px;display:block}@media (min-width:720px){.hud-minimap{bottom:var(--safe-bottom)}.sea-hud:has(.hud-card:not([hidden])) .hud-minimap{display:block}.hud-minimap[hidden]{display:none}.hud-minimap__canvas{width:160px;height:160px}}.ship-pin{-webkit-backdrop-filter:blur(8px)saturate(1.2);backdrop-filter:blur(8px)saturate(1.2);color:#ffc430;white-space:nowrap;will-change:transform;touch-action:manipulation;background:#071e349e;border:0;border-radius:999px;align-items:center;gap:8px;padding:3px 14px 3px 3px;font-size:13.5px;font-weight:800;animation:3s ease-in-out infinite label-float;display:inline-flex;position:absolute;top:0;left:0;box-shadow:0 4px 12px #031c3840}.ship-pin[hidden]{display:none}.ship-pin:focus-visible{outline:3px solid var(--amber);outline-offset:2px}.ship-pin__arrow{background:#ffc43029;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.ship-pin__arrow svg{color:#ffc430;width:14px;height:14px}@keyframes label-float{0%,to{translate:0}50%{translate:0 -4px}}@media (prefers-reduced-motion:reduce){.ship-pin{animation:none}}.ui-tooltip{z-index:1000;color:#fff;max-width:240px;font:700 12.5px/1.3 var(--font);pointer-events:none;opacity:0;background:#08213af0;border:1px solid #ffffff24;border-radius:10px;padding:6px 10px;position:fixed;top:0;left:0;box-shadow:0 6px 18px #030e1c59}.ui-tooltip[hidden]{display:none}.ui-tooltip.is-shown{animation:tip-in .18s var(--ease) forwards}.ui-tooltip:after{content:"";left:var(--tip-arrow,50%);background:inherit;border:inherit;border-width:0 1px 1px 0;width:8px;height:8px;margin-left:-4px;position:absolute;transform:rotate(45deg)}.ui-tooltip[data-side=top]:after{bottom:-5px}.ui-tooltip[data-side=bottom]:after{top:-5px;transform:rotate(225deg)}@keyframes tip-in{0%{opacity:0;translate:0 3px}to{opacity:1;translate:0}}@media (prefers-reduced-motion:reduce){.ui-tooltip.is-shown{opacity:1;animation:none}}.island-panel{z-index:6;left:var(--safe-left);right:var(--safe-right);bottom:var(--safe-bottom);overscroll-behavior:contain;max-height:min(66dvh,560px);color:var(--ink);pointer-events:auto;animation:card-in .35s var(--ease);scrollbar-width:thin;background:#fff9ecf7;border-color:#ffffffb3;border-radius:20px;padding:14px 16px 16px;position:absolute;overflow-y:auto}@media (min-width:720px){.island-panel{left:auto;right:calc(var(--safe-right) + 62px);top:calc(var(--safe-top) + 64px);width:380px;max-height:calc(100% - var(--safe-top) - var(--safe-bottom) - 84px);bottom:auto}}.island-panel__head{padding-right:36px;position:relative}.island-panel__title{font-family:var(--font-display);letter-spacing:var(--display-tracking);font-weight:400;font-size:calc(23px * var(--display-scale));color:var(--ink);margin:6px 0 2px;line-height:1.15}.island-panel__close{top:-2px;right:-4px}.island-panel__desc{color:#0c2740b8;margin:0 0 10px;font-size:14px;line-height:1.45}.island-panel__notice{color:var(--accent-strong);background:#e5513a1a;border-radius:12px;margin:0 0 10px;padding:8px 12px;font-size:13.5px;font-weight:700}.island-panel__sub{letter-spacing:.12em;text-transform:uppercase;color:#0c27408c;margin:4px 0 8px;font-size:11px;font-weight:800}.island-panel__spots{gap:8px;margin:0;padding:0;list-style:none;display:grid}.island-spot{background:#0c27400d;border-radius:14px;grid-template-columns:44px 1fr;grid-template-areas:"icon text""icon action";align-items:center;gap:8px 12px;padding:10px 12px;display:grid}.island-spot__icon{background:#fff;border-radius:12px;grid-area:icon;place-items:center;width:44px;height:44px;display:grid;box-shadow:inset 0 0 0 1.5px #08213a26}.island-spot__icon svg{width:30px;height:30px}.island-spot__text{color:#0c2740b3;flex-direction:column;grid-area:text;gap:2px;font-size:13px;line-height:1.35;display:flex}.island-spot__text strong{color:var(--ink);font-size:15px}.island-spot__action{grid-area:action}.island-spot__search{min-height:38px;padding:0 16px;font-size:14.5px}.island-spot__search small{opacity:.8;font-weight:700}.island-spot__search:disabled{filter:grayscale(.7)brightness(1.1);opacity:.55;cursor:not-allowed}.island-spot__progress{gap:5px;display:grid}.island-spot__label{color:var(--accent-strong);font-size:13px;font-weight:800}.island-spot__bar{background:#0c27401f;border-radius:999px;height:10px;overflow:hidden}.island-spot__bar span{border-radius:inherit;background:linear-gradient(#ffd66b,#ffbe2e);width:0;height:100%;transition:width .25s linear;display:block}.island-spot__done{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.island-spot__found{color:#1f7a4a;font-size:15px;font-weight:900}.island-spot__found.is-empty{color:#0c27408c;font-weight:700}.island-spot__found.is-fresh{animation:.55s cubic-bezier(.34,1.6,.64,1) found-pop}@keyframes found-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.island-spot__wait{color:#0c27408c;font-size:12.5px;font-weight:700}@media (prefers-reduced-motion:reduce){.island-spot__found.is-fresh{animation:none}}.sea-hud.is-ashore .hud-status,.sea-hud.is-ashore .hud-card,.sea-hud.is-ashore .island-label{display:none}.explore-layer{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.explore-marker{pointer-events:auto;touch-action:manipulation;will-change:transform;justify-items:center;gap:2px;animation:3s ease-in-out infinite label-float;display:grid;position:absolute;top:0;left:0}.explore-marker:before{content:"";position:absolute;top:-8px;bottom:-8px;left:-8px;right:-8px}.explore-marker__icon{background:#fff8ea;border-radius:50%;place-items:center;width:58px;height:58px;display:grid;position:relative;box-shadow:inset 0 0 0 2.5px #08213a,0 4px 10px #031c384d}.explore-marker__icon svg{width:38px;height:38px}.explore-marker__name{color:#fff;white-space:nowrap;background:#071e34c7;border-radius:999px;padding:2px 9px;font-size:12.5px;font-weight:800;line-height:1.4}.explore-marker[data-status=searching] .explore-marker__icon{background:radial-gradient(closest-side, #fff8ea 70%, transparent 72%), conic-gradient(#ffbe2e var(--progress,0deg), #08213a52 0)}.explore-marker[data-status=ready] .explore-marker__icon:after{content:"!";color:#fff;background:linear-gradient(#ffa070,#f1603c);border-radius:50%;place-items:center;width:22px;height:22px;font-size:13px;font-weight:900;line-height:1;display:grid;position:absolute;top:-4px;right:-4px;box-shadow:inset 0 0 0 1.5px #6a2213}.explore-marker__state{z-index:1;color:#fff;text-shadow:0 1px 2px #030e1ce6,0 0 6px #030e1cb3;pointer-events:none;place-items:center;font-size:13px;font-weight:900;line-height:1;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.explore-marker__state:empty,.explore-marker[data-status=ready] .explore-marker__state,.explore-marker__refill{display:none}.explore-marker[data-status=cooldown] .explore-marker__refill{-webkit-mask:conic-gradient(transparent var(--refill,0deg), #000 0);-webkit-mask:conic-gradient(transparent var(--refill,0deg), #000 0);mask:conic-gradient(transparent var(--refill,0deg), #000 0);background:#071e349e;border-radius:50%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}.explore-marker__refill svg{display:none}.explore-marker:focus-visible .explore-marker__icon{outline:3px solid var(--amber);outline-offset:2px}.explore-pop{color:#1f7a4a;white-space:nowrap;pointer-events:none;background:#fff8ea;border-radius:999px;padding:4px 12px;font-size:15px;font-weight:900;animation:2.6s cubic-bezier(.22,1,.36,1) forwards explore-pop;position:absolute;transform:translate(-50%,-100%);box-shadow:inset 0 0 0 2px #08213a,0 4px 12px #031c384d}.explore-pop.is-empty{color:#0c274099}@keyframes explore-pop{0%{opacity:0;translate:0 10px;scale:.6}12%{opacity:1;translate:0;scale:1.08}20%{scale:1}80%{opacity:1;translate:0 -22px}to{opacity:0;translate:0 -30px}}.explore-bar{left:50%;bottom:var(--safe-bottom);pointer-events:auto;animation:card-in .35s var(--ease);white-space:nowrap;border-radius:22px;align-items:center;gap:14px;padding:8px 8px 8px 18px;display:flex;position:absolute;translate:-50%}.explore-bar__place{flex-direction:column;line-height:1.15;display:flex}.explore-bar__kind{letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);font-size:10.5px}.explore-bar__place strong{font-family:var(--font-display);letter-spacing:var(--display-tracking);font-weight:400;font-size:calc(17px * var(--display-scale))}.explore-bar__back{min-height:42px;margin-bottom:2px}@media (prefers-reduced-motion:reduce){.explore-marker,.explore-pop{animation:none}}.explore-marker.is-hover .explore-marker__icon{transform:scale(1.12);box-shadow:inset 0 0 0 2.5px #e8a020,0 0 0 3px #ffd1668c,0 4px 12px #031c384d}.explore-marker__icon{transition:transform .15s var(--ease), box-shadow .15s var(--ease)}.explore-marker.is-hover{cursor:pointer;animation-play-state:paused}.sea-hud.is-ashore .hud-labels{z-index:2}.ship-pin__avatar,.ship-pin__orbit{display:none}.ship-pin.is-captain{-webkit-backdrop-filter:none;backdrop-filter:none;width:62px;height:62px;box-shadow:none;background:0 0;border-radius:50%;gap:0;padding:0;overflow:visible}.ship-pin.is-captain .ship-pin__name,.ship-pin.is-captain .ship-pin__arrow{display:none}.ship-pin.is-captain .ship-pin__avatar{background:#fff;border-radius:50%;place-items:center;width:62px;height:62px;display:grid;box-shadow:inset 0 0 0 4px #08213a,0 4px 12px #031c384d}.ship-pin__avatar svg{width:44px;height:44px}.ship-pin.is-captain .ship-pin__orbit{pointer-events:none;display:block;position:absolute;top:0;bottom:0;left:0;right:0}.ship-pin__orbit-arrow{border-top:11px solid #0000;border-bottom:11px solid #0000;border-left:13px solid #08213a;width:0;height:0;margin:-11px 0 0 -4px;position:absolute;top:50%;left:100%}.ship-pin__orbit-arrow svg{display:none}.tap-ripple{z-index:2000;pointer-events:none;background:#ffffff38;border:3px solid #fffffff2;border-radius:50%;width:34px;height:34px;margin:-17px 0 0 -17px;animation:.45s cubic-bezier(.2,.7,.3,1) forwards tap-ripple;position:fixed;box-shadow:0 0 0 1px #08213a59}@keyframes tap-ripple{0%{opacity:1;transform:scale(.35)}to{opacity:0;transform:scale(1.35)}}@media (prefers-reduced-motion:reduce){.tap-ripple{animation:.3s linear forwards tap-ripple-fade}@keyframes tap-ripple-fade{0%{opacity:.9}to{opacity:0}}}.explore-marker__icon.is-nudge{animation:.42s cubic-bezier(.36,.07,.19,.97) marker-nudge}@keyframes marker-nudge{10%,90%{translate:-1px;rotate:-2deg}20%,80%{translate:3px;rotate:4deg}30%,50%,70%{translate:-5px;rotate:-6deg}40%,60%{translate:5px;rotate:6deg}}@media (prefers-reduced-motion:reduce){.explore-marker__icon.is-nudge{animation:.42s marker-nudge-calm}@keyframes marker-nudge-calm{40%{box-shadow:inset 0 0 0 2.5px #ff4a3d,0 0 0 4px #ff4a3d59,0 4px 10px #031c384d}}}
