@font-face{font-family:Bungee;font-style:normal;font-display:swap;font-weight:400;src:url(/navios-en-guerra/assets/bungee-vietnamese-400-normal-B6gKbkHm.woff2)format("woff2"),url(/navios-en-guerra/assets/bungee-vietnamese-400-normal-CmjDSWyd.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:Bungee;font-style:normal;font-display:swap;font-weight:400;src:url(/navios-en-guerra/assets/bungee-latin-ext-400-normal-DWzJMwsA.woff2)format("woff2"),url(/navios-en-guerra/assets/bungee-latin-ext-400-normal-DXe9_7Rr.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:Bungee;font-style:normal;font-display:swap;font-weight:400;src:url(/navios-en-guerra/assets/bungee-latin-400-normal-Dfnurram.woff2)format("woff2"),url(/navios-en-guerra/assets/bungee-latin-400-normal-DA8IEVW_.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:Nunito;src:url(/navios-en-guerra/fonts/nunito.ttf)format("truetype");font-weight:200 1000;font-display:swap}:root{--ink:#0b2c4a;--sea-top:#12a4c4;--sea-mid:#0b78a3;--sea-deep:#07496e;--foam:#e8fbff;--sand:#fbeec1;--wood:#b5772f;--wood-dark:#7d4b1c;--amber:#ffb703;--coral:#ff5468;--teal:#2ec4b6;--pink:#ff4f8b;--text:#fffdf4;--display:"Bungee", "Arial Black", system-ui, sans-serif;--body:"Nunito", system-ui, sans-serif;--w1:#19b3d1;--w2:#0a6a98;--w3:#07496e;--cell-line:#fff3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{min-height:100%;margin:0}body{background:linear-gradient(180deg, var(--sea-top) 0%, var(--sea-mid) 38%, var(--sea-deep) 100%) fixed;color:var(--text);font:600 16px/1.4 var(--body);touch-action:manipulation;transition:background-color .4s;overflow-x:hidden}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--amber);outline-offset:2px;border-radius:6px}#app{max-width:520px;min-height:100dvh;padding:0 max(14px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));flex-direction:column;margin:0 auto;display:flex;position:relative}.sea{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.sea:before,.sea:after{content:"";opacity:.22;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='28' viewBox='0 0 160 28'><path d='M0 14 q20 -16 40 0 t40 0 t40 0 t40 0' fill='none' stroke='white' stroke-width='3' stroke-linecap='round'/></svg>") repeat-x;height:140px;animation:14s linear infinite drift;position:absolute;left:-10%;right:-10%}.sea:before{top:28%}.sea:after{opacity:.15;animation-duration:20s;animation-direction:reverse;top:66%}@keyframes drift{to{background-position-x:160px}}.bunting{filter:drop-shadow(0 2px #00000040);width:100%;height:auto;max-height:34px;margin:0 auto;display:block}.bunting-wrap{margin:0 calc(-1 * max(14px, env(safe-area-inset-left)));padding-top:env(safe-area-inset-top);overflow:hidden}.topbar{justify-content:space-between;align-items:center;gap:10px;padding:8px 0 4px;display:flex}.topbar h1{font:400 15px/1 var(--display);letter-spacing:.06em;text-align:center;text-shadow:0 2px 0 var(--ink);text-transform:uppercase;margin:0}.icon-btn{border:3px solid var(--ink);background:var(--sand);min-width:48px;min-height:48px;color:var(--ink);font:400 13px/1 var(--display);box-shadow:0 4px 0 var(--ink);cursor:pointer;border-radius:14px;padding:0 12px}.icon-btn:active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.btn{border:3px solid var(--ink);min-height:52px;font:400 16px/1.1 var(--display);letter-spacing:.04em;text-transform:uppercase;color:var(--ink);background:var(--amber);box-shadow:0 6px 0 var(--ink);cursor:pointer;border-radius:16px;padding:12px 20px;transition:transform 80ms,box-shadow 80ms,filter .15s}.btn:active:not(:disabled){box-shadow:0 2px 0 var(--ink);transform:translateY(4px)}.btn:disabled{filter:grayscale(.8)brightness(.7);cursor:not-allowed}.btn.fire{background:var(--coral);color:#fff;text-shadow:0 2px #00000059}.btn.sonar{background:var(--teal)}.btn.ghost{background:var(--sand)}.btn.wide{width:100%}.menu{flex-direction:column;flex:1;gap:16px;padding:14px 0 6px;display:flex}.title-card{text-align:center;padding:6px 0 0}.title-card .kicker{font:400 12px/1 var(--display);letter-spacing:.18em;color:var(--foam);text-shadow:0 2px 0 var(--ink);margin:0 0 8px}.title-card h1{font:400 clamp(40px, 13vw, 62px)/.94 var(--display);text-transform:uppercase;color:var(--amber);-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;text-shadow:0 6px 0 var(--ink), 0 12px 18px #0000004d;margin:0}.title-card h1 span{color:var(--text);display:block}.hero-row{align-items:flex-end;gap:12px;display:flex}.hero-row .captain{filter:drop-shadow(0 6px #00000040);flex:none;width:112px}.bubble{background:var(--sand);color:var(--ink);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);border-radius:18px;flex:1;padding:10px 14px;font-weight:800;position:relative}.bubble:before{content:"";background:var(--sand);border-left:3px solid var(--ink);border-bottom:3px solid var(--ink);border-radius:0 0 0 4px;width:18px;height:18px;position:absolute;bottom:18px;left:-12px;transform:rotate(45deg)}.picker{border:0;gap:8px;margin:0;padding:0;display:grid}.picker legend{font:400 13px/1 var(--display);letter-spacing:.1em;text-shadow:0 2px 0 var(--ink);margin-bottom:8px;padding:0}.picker label{display:block}.picker input{opacity:0;pointer-events:none;position:absolute}.picker .opt{border:3px solid var(--ink);cursor:pointer;background:#fffdf424;border-radius:16px;grid-template-columns:1fr auto;align-items:center;gap:2px 10px;min-height:56px;padding:8px 14px;display:grid}.picker .opt strong{font:400 15px/1.1 var(--display);text-transform:uppercase}.picker .opt small{opacity:.9;grid-column:1;font-weight:700}.picker .opt .stars{font:400 18px var(--display);color:var(--amber);letter-spacing:2px;text-shadow:0 2px 0 var(--ink);grid-area:1/2/span 2}.picker input:checked+.opt{background:var(--sand);color:var(--ink);box-shadow:0 4px 0 var(--ink)}.picker input:checked+.opt .stars{color:var(--coral);text-shadow:none}.picker input:focus-visible+.opt{outline:3px solid var(--amber);outline-offset:2px}.menu-actions{gap:12px;display:grid}.menu-actions .row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.record{text-align:center;text-shadow:0 2px 0 var(--ink);margin:0;font-weight:800}.menu-foot{text-align:center;letter-spacing:.1em;text-shadow:0 1px 0 var(--ink);opacity:.9;margin:auto 0 0;font-size:12px;font-weight:800}.board{grid-template-rows:20px auto;grid-template-columns:20px 1fr;width:100%;display:grid}.board .cols{text-align:center;font:400 11px/20px var(--display);color:var(--foam);text-shadow:0 1px 0 var(--ink);grid-column:2;grid-template-columns:repeat(10,1fr);display:grid}.board .rows{text-align:center;font:400 11px var(--display);color:var(--foam);text-shadow:0 1px 0 var(--ink);grid-row:2;grid-template-rows:repeat(10,1fr);align-items:center;display:grid}.water{aspect-ratio:1;border:4px solid var(--ink);background:radial-gradient(120% 70% at 20% 0%, #ffffff4d, transparent 55%), url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='70' height='20' viewBox='0 0 70 20'><path d='M0 10 q8.75 -9 17.5 0 t17.5 0 t17.5 0 t17.5 0' fill='none' stroke='white' stroke-opacity='.16' stroke-width='2'/></svg>") 0 0 / 70px 20px, linear-gradient(180deg, var(--w1), var(--w2) 70%, var(--w3));box-shadow:0 6px 0 var(--ink), inset 0 0 40px #00193c59;border-radius:14px;grid-area:2/2;animation:9s linear infinite swell;position:relative;overflow:visible}@keyframes swell{to{background-position:0 0,70px 0,0 0}}.cells{z-index:2;grid-template-rows:repeat(10,1fr);grid-template-columns:repeat(10,1fr);display:grid;position:absolute;inset:0}.cell{border:0;border-right:1px solid var(--cell-line);border-bottom:1px solid var(--cell-line);background:0 0;margin:0;padding:0;display:block;position:relative}.cell:nth-child(10n){border-right:0}.cell:nth-child(n+91){border-bottom:0}button.cell{cursor:crosshair}button.cell:active:not(.hit):not(.miss){background:#ffffff38}.cell.hit,.cell.miss{cursor:default}.cell.preview-ok{background:#80ed9973}.cell.preview-bad{background:#ff546873}.cell.sonar{background:#ffd23f33;box-shadow:inset 0 0 0 1px #ffd23fcc}.cell.aimed{background:#ffd23f3d}.cell svg{pointer-events:none;width:86%;height:86%;position:absolute;inset:7%}.mark-splash .r1,.mark-splash .r2{transform-origin:20px 20px}.cell.miss:not(.settled) .r1{animation:.6s ease-out ring}.cell.miss:not(.settled) .r2{animation:.8s ease-out 80ms ring}@keyframes ring{0%{opacity:1;transform:scale(.2)}to{opacity:.6;transform:scale(1)}}.cell.miss .mark-splash{opacity:.85}.cell.hit .mark-flame{transform-origin:50% 90%;animation:1s ease-in-out infinite flicker}.cell.hit:not(.settled) .mark-flame{animation:.45s cubic-bezier(.2,1.6,.4,1) pop,1s ease-in-out .45s infinite flicker}@keyframes pop{0%{transform:scale(.1)}to{transform:scale(1)}}@keyframes flicker{0%,to{transform:scale(1)rotate(-2deg)}50%{transform:scale(1.1,1.18)rotate(2deg)}}.ships{z-index:1;pointer-events:none;position:absolute;inset:0}.ship{transition:transform .8s,filter .8s,opacity .8s;position:absolute}.ship .ship-art{filter:drop-shadow(0 3px #00143259);position:absolute;overflow:visible}.ship.dir-h .ship-art{width:100%;height:150%;top:-38.5%;left:0}.ship.dir-v .ship-art{width:150%;height:100%;top:0;left:-11%}.ship.sunk{filter:grayscale(.9)brightness(.62);opacity:.92;transform:translateY(10%)rotate(3deg)}.board-enemy .ship:not(.sunk){display:none}.fx{z-index:5;pointer-events:none;position:absolute;inset:0}.aim{filter:drop-shadow(0 0 4px #0009);width:10%;height:10%;animation:1s ease-in-out infinite aim;position:absolute}.aim svg{width:100%;height:100%}@keyframes aim{50%{transform:scale(1.18)}}.sonar-tag{width:10%;height:10%;font:400 15px/1 var(--display);color:#1b1200;background:var(--amber);border:2px solid var(--ink);box-shadow:0 2px 0 var(--ink);border-radius:50%;place-items:center;display:grid;position:absolute;transform:scale(.82)}.water.flash-hit{animation:.28s linear shake}.water.flash-sunk{animation:.5s linear shake}.water.flash-hit:after,.water.flash-sunk:after{content:"";pointer-events:none;z-index:6;background:radial-gradient(circle,#ffbe3c8c,#0000 70%);border-radius:14px;animation:.5s ease-out forwards glow;position:absolute;inset:-4px}@keyframes glow{0%{opacity:1}to{opacity:0}}@keyframes shake{20%{transform:translate(-3px,1px)}40%{transform:translate(3px,-1px)}60%{transform:translate(-2px)}80%{transform:translate(2px,1px)}}.cannonball{z-index:9000;pointer-events:none;will-change:transform;background:radial-gradient(circle at 35% 30%,#9fb0c0,#1b2430 62%);border:1px solid #0b1118;border-radius:50%;width:14px;height:14px;position:fixed;top:0;left:0}.place{flex-direction:column;gap:12px;padding:8px 0;display:flex}.place h2{font:400 22px/1 var(--display);text-transform:uppercase;text-shadow:0 3px 0 var(--ink);text-align:center;margin:0}.hint{text-align:center;text-shadow:0 2px 0 var(--ink);min-height:2.8em;margin:0;font-weight:800}.tray{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.tray button{border:3px solid var(--ink);cursor:pointer;background:#fffdf429;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;min-height:64px;padding:6px 2px 4px;display:flex;position:relative}.tray button .len{font:400 12px/1 var(--display)}.tray button[aria-pressed=true]{background:var(--sand);color:var(--ink);box-shadow:0 4px 0 var(--ink)}.tray button.done:not([aria-pressed=true]){opacity:.75}.tray button.done:after{content:"✓";width:20px;height:20px;color:var(--ink);border:2px solid var(--ink);font:900 12px/1 var(--body);background:#80ed99;border-radius:50%;place-items:center;display:grid;position:absolute;top:-9px;right:-5px}.tray .ship-icon{width:100%;height:28px;overflow:visible}.place-actions{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.place-actions .btn{padding:10px 6px;font-size:14px}.battle{flex-direction:column;flex:1;gap:6px;padding:4px 0 0;display:flex}.rival{align-items:center;gap:10px;display:flex}.rival .captain{filter:drop-shadow(0 4px #00000040);flex:none;width:56px}.rival .bubble{flex:1;align-items:center;min-height:48px;padding:6px 12px;font-size:14px;display:flex}.rival-tools{flex-direction:column;gap:4px;display:flex}.icon-btn.sm{place-items:center;min-width:44px;min-height:44px;padding:0;display:grid}.icon-btn.sm svg{width:20px;height:20px}.fleet-line{flex-wrap:wrap;gap:4px;display:flex}.chip{border:2px solid var(--ink);background:var(--sand);height:22px;color:var(--ink);font:400 9px/1 var(--display);letter-spacing:0;border-radius:999px;align-items:center;gap:2px;padding:0 6px;display:inline-flex}.chip i{background:var(--ink);border-radius:2px;width:5px;height:5px;display:inline-block}.chip.down{color:#4b5a68;background:#9aa7b3;text-decoration:line-through}.chip.down i{background:var(--coral)}.status{text-align:center;font:400 13px/1.2 var(--display);text-transform:uppercase;text-shadow:0 2px 0 var(--ink);min-height:1.4em;margin:0}.coach{text-align:center;background:var(--amber);color:var(--ink);border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);border-radius:14px;margin:0;padding:6px 10px;font-size:14px;font-weight:900;line-height:1.25}.own-wrap{align-items:center;gap:16px;padding-bottom:4px;display:flex}.own-wrap>div:first-child{flex:none;width:min(150px,40vw)}.own-wrap .board{flex:none;grid-template-rows:14px auto;grid-template-columns:14px 1fr;width:100%}.own-wrap .board .cols,.own-wrap .board .rows{font-size:8px;line-height:14px}.own-wrap .water{border-width:3px;border-radius:10px}.own-info{flex:1;gap:8px;display:grid}.own-info h3{font:400 12px/1 var(--display);letter-spacing:.1em;text-transform:uppercase;text-shadow:0 2px 0 var(--ink);margin:0}.actions{z-index:20;padding:8px 0 max(6px, env(safe-area-inset-bottom));background:linear-gradient(180deg, transparent, var(--sea-deep) 38%);grid-template-columns:1fr 1.5fr;gap:12px;margin-top:auto;display:grid;position:sticky;bottom:0}.toast{z-index:9500;text-align:center;background:var(--sand);max-width:92vw;color:var(--ink);border:4px solid var(--ink);font:400 18px/1.15 var(--display);text-transform:uppercase;box-shadow:0 6px 0 var(--ink);pointer-events:none;border-radius:18px;padding:12px 22px;animation:1.5s forwards toast;position:fixed;top:40%;left:50%;transform:translate(-50%,-50%)}.toast.bad{background:var(--coral);color:#fff}@keyframes toast{0%{opacity:0;transform:translate(-50%,-30%)scale(.6)}15%{opacity:1;transform:translate(-50%,-50%)scale(1.06)}25%{transform:translate(-50%,-50%)scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-64%)scale(1)}}dialog{background:var(--sand);width:min(92vw,440px);max-height:88dvh;color:var(--ink);border:4px solid var(--ink);box-shadow:0 8px 0 var(--ink);border-radius:22px;padding:20px;overflow:auto}dialog::backdrop{background:#021c34b8}dialog h2{font:400 22px/1.05 var(--display);text-transform:uppercase;margin:0 0 10px}dialog p{margin:0 0 10px}dialog .btn{width:100%;margin-top:10px}dialog .captain{width:96px;margin:0 auto 6px;display:block}.result-stats{text-align:center;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0;display:grid}.result-stats div{border:3px solid var(--ink);background:#fff7d6;border-radius:12px;padding:8px 4px}.result-stats strong{font:400 22px/1 var(--display);display:block}.result-stats span{font-size:12px;font-weight:800}.setting{border-top:2px dashed #0b2c4a4d;justify-content:space-between;align-items:center;gap:12px;min-height:48px;display:flex}.setting:first-of-type{border-top:0}.setting input[type=range]{width:120px;accent-color:var(--coral);height:32px}.switch{border:3px solid var(--ink);min-width:76px;min-height:44px;font:400 12px/1 var(--display);cursor:pointer;color:var(--ink);background:#c9d3dc;border-radius:999px}.switch[aria-pressed=true]{background:var(--teal)}dialog ol{margin:0 0 10px;padding-left:22px}dialog li{margin-bottom:6px}.fine{opacity:.8;font-size:12px}@media (width>=700px) and (orientation:landscape){#app{max-width:920px}.battle{grid-template-columns:minmax(0,1fr) 280px;grid-auto-flow:row;align-items:start;gap:12px 20px;display:grid}.battle .rival,.battle .actions,.battle .status,.battle .coach{grid-column:2}.battle .enemy-slot{grid-area:1/1/span 5}.own-wrap{flex-direction:column;align-items:stretch}.own-wrap .board{width:100%}}@media (prefers-reduced-motion:reduce){.sea:before,.sea:after,.water,.aim,.cell.hit .mark-flame,.water.flash-hit,.water.flash-sunk{animation:none!important}.toast{animation-duration:2.2s}.ship{transition:none}}:root[data-theme=dawn]{--sea-top:#f29c8f;--sea-mid:#4aa3b8;--sea-deep:#1d5f80;--w1:#7fd0d6;--w2:#2b8fb0;--w3:#124c6e}:root[data-theme=sunset]{--sea-top:#f4944f;--sea-mid:#7c4d8f;--sea-deep:#1c2f5c;--w1:#6fb0c9;--w2:#34709c;--w3:#1a3a66}:root[data-theme=night]{--sea-top:#14305a;--sea-mid:#0c2145;--sea-deep:#050f22;--w1:#2b7db3;--w2:#165590;--w3:#0b3160}:root[data-theme=night] .water,:root[data-theme=storm] .water{box-shadow:0 6px 0 var(--ink), 0 0 0 2px #ffffff26, inset 0 0 40px #00193c59;border-color:#9bd4ff}:root[data-theme=storm]{--sea-top:#6b7f8a;--sea-mid:#3d5563;--sea-deep:#1a2a34;--w1:#4f7d90;--w2:#2c5568;--w3:#15303c}#horizon{opacity:.55;height:96px;position:absolute;top:40px;left:0;right:0}#horizon .horizon{width:100%;height:100%;display:block}:root[data-theme=night] #horizon:after{content:"";background:#fffbe0;border-radius:50%;width:30px;height:30px;position:absolute;top:4px;right:16%;box-shadow:0 0 28px #fffbe0aa}:root[data-theme=storm] #horizon:before{content:"";background:radial-gradient(60% 80% at 30% 20%,#0006,#0000),radial-gradient(50% 70% at 75% 10%,#0005,#0000);position:absolute;inset:-30px 0 40px}.cell.island{cursor:default;background:#f3d9a029}.cell.hint{background:#ff4f8b29}.cell.island svg{width:96%;height:96%;inset:2%}.btn.big{text-align:left;gap:3px;min-height:64px;padding:10px 16px;display:grid}.btn.big small{font:800 13px/1.2 var(--body);text-transform:none;letter-spacing:0;opacity:.85}.btn.small{min-height:44px;padding:8px 14px;font-size:13px}.btn.resume{background:var(--teal)}.menu-actions .row.two{grid-template-columns:1fr 1fr}.sheet{flex-direction:column;flex:1;gap:12px;padding:10px 0 18px;display:flex}.sheet-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.sheet-head h2{text-align:center;font:400 20px/1.1 var(--display);text-transform:uppercase;text-shadow:0 3px 0 var(--ink);flex:1;margin:0}.coins{text-align:center;background:var(--sand);min-width:76px;color:var(--ink);border:3px solid var(--ink);font:400 14px/1 var(--display);box-shadow:0 3px 0 var(--ink);border-radius:999px;padding:8px 12px}.sheet .sub{text-align:center;text-shadow:0 2px 0 var(--ink);margin:0;font-weight:800}.route{gap:10px;margin:0;padding:0;list-style:none;display:grid}.port{border:3px solid var(--ink);text-align:left;width:100%;min-height:78px;color:var(--text);cursor:pointer;box-shadow:0 4px 0 var(--ink);border-radius:18px;grid-template-columns:44px 1fr auto;align-items:center;gap:10px;padding:10px 12px;display:grid;position:relative;overflow:hidden}.port.t-day{background:linear-gradient(135deg,#19b3d1,#0a6a98)}.port.t-dawn{background:linear-gradient(135deg,#f29c8f,#2b8fb0)}.port.t-sunset{background:linear-gradient(135deg,#f4944f,#5a3c8f)}.port.t-night{background:linear-gradient(135deg,#1d3f78,#08142e)}.port.t-storm{background:linear-gradient(135deg,#6f8793,#1f323d)}.port-art{opacity:.35;pointer-events:none;width:55%;height:100%;position:absolute;bottom:0;right:0}.port-art .horizon{width:100%;height:100%}.port-body,.node,.port-stars{z-index:1;position:relative}.node{background:var(--amber);width:40px;height:40px;color:var(--ink);border:3px solid var(--ink);font:400 18px/1 var(--display);border-radius:50%;place-items:center;display:grid}.port-body{gap:2px;min-width:0;display:grid}.port-body strong{font:400 17px/1.1 var(--display);text-transform:uppercase;text-shadow:0 2px 0 var(--ink);overflow-wrap:anywhere}.port-body small{text-shadow:0 1px 0 var(--ink);font-weight:800}.port-stars{font:400 16px/1 var(--display);color:var(--amber);letter-spacing:1px;text-shadow:0 2px 0 var(--ink)}.port.current{outline:3px solid var(--amber);outline-offset:2px;animation:1.6s ease-in-out infinite pulse}@keyframes pulse{50%{outline-offset:5px}}.port.locked{filter:grayscale(.9)brightness(.62);cursor:not-allowed}.port.locked .node{background:#9aa7b3}.lock{background:var(--ink);border-radius:3px;width:14px;height:12px;margin-top:4px;display:block;position:relative}.lock:before{content:"";border:3px solid var(--ink);border-bottom:0;border-radius:8px 8px 0 0;width:6px;height:9px;position:absolute;top:-9px;left:2px}.rules{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.rule{border:2px solid var(--ink);background:var(--amber);color:var(--ink);font:400 10px/1.4 var(--display);text-transform:uppercase;border-radius:999px;padding:2px 8px;display:inline-block}.yard{gap:12px;margin:0;padding:0;list-style:none;display:grid}.upgrade{background:var(--sand);color:var(--ink);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);border-radius:18px;padding:14px}.upgrade>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.upgrade strong{font:400 17px/1.1 var(--display);text-transform:uppercase}.upgrade p{margin:6px 0 0}.upgrade .btn{width:100%;margin-top:10px}.pips{gap:6px;display:inline-flex}.pips i{border:3px solid var(--ink);background:#d7cba0;border-radius:50%;width:16px;height:16px}.pips i.on{background:var(--coral)}.reward{text-align:center;font:400 14px/1.3 var(--display);text-transform:uppercase;min-height:1.3em;margin:4px 0 0}dialog .reward{color:var(--ink)}dialog .rules{margin:6px 0 10px}dialog .bubble{box-shadow:none;background:#fff7d6;margin:8px 0 10px}dialog .bubble:before{display:none}dialog .btn.ghost{background:#fff7d6}.picker input[type=checkbox]+.opt .stars{border:3px solid var(--ink);width:30px;height:30px;text-shadow:none;background:#ffffff40;border-radius:9px;display:block;position:relative}.picker input[type=checkbox]:checked+.opt .stars{background:var(--coral)}.picker input[type=checkbox]:checked+.opt .stars:after{content:"";border:4px solid #fff;border-width:0 4px 4px 0;width:8px;height:15px;position:absolute;top:1px;left:7px;transform:rotate(40deg)}
