@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:400;src:url(./cinzel-latin-ext-400-normal-XQK_CSAr.woff2)format("woff2"),url(./cinzel-latin-ext-400-normal-DJ0Lq8y-.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:Cinzel;font-style:normal;font-display:swap;font-weight:400;src:url(./cinzel-latin-400-normal-DnUIPmzd.woff2)format("woff2"),url(./cinzel-latin-400-normal-C8jUSQqm.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:Cinzel;font-style:normal;font-display:swap;font-weight:700;src:url(./cinzel-latin-ext-700-normal-C24KFjuG.woff2)format("woff2"),url(./cinzel-latin-ext-700-normal-CORa-yIv.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:Cinzel;font-style:normal;font-display:swap;font-weight:700;src:url(./cinzel-latin-700-normal-Dkw14w9r.woff2)format("woff2"),url(./cinzel-latin-700-normal-C-gK7hA8.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:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(./eb-garamond-cyrillic-ext-400-normal-o8fRvAFQ.woff2)format("woff2"),url(./eb-garamond-cyrillic-ext-400-normal-DG8lny6_.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:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(./eb-garamond-cyrillic-400-normal-DDLP67lu.woff2)format("woff2"),url(./eb-garamond-cyrillic-400-normal-C0kVTdou.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(./eb-garamond-greek-ext-400-normal-K8pwR3tn.woff2)format("woff2"),url(./eb-garamond-greek-ext-400-normal-BaZl8BIK.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(./eb-garamond-greek-400-normal-CVAbzS9p.woff2)format("woff2"),url(./eb-garamond-greek-400-normal-d4JlP2QH.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(./eb-garamond-vietnamese-400-normal-CLvJdMEL.woff2)format("woff2"),url(./eb-garamond-vietnamese-400-normal-ifvNSiWx.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:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(./eb-garamond-latin-ext-400-normal-o4A__6QZ.woff2)format("woff2"),url(./eb-garamond-latin-ext-400-normal-B4EmgUmt.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:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(./eb-garamond-latin-400-normal-BCNrxLz_.woff2)format("woff2"),url(./eb-garamond-latin-400-normal-maQnHeKB.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:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(./eb-garamond-cyrillic-ext-400-italic-Bz1w3xqM.woff2)format("woff2"),url(./eb-garamond-cyrillic-ext-400-italic-CYS3phfl.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:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(./eb-garamond-cyrillic-400-italic-BGIwiowF.woff2)format("woff2"),url(./eb-garamond-cyrillic-400-italic-BZInx2ys.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(./eb-garamond-greek-ext-400-italic-CHZOQEtG.woff2)format("woff2"),url(./eb-garamond-greek-ext-400-italic-BL1XYHtS.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(./eb-garamond-greek-400-italic-Dqr5KC66.woff2)format("woff2"),url(./eb-garamond-greek-400-italic-BamGE6QP.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(./eb-garamond-vietnamese-400-italic-DQ8HKnks.woff2)format("woff2"),url(./eb-garamond-vietnamese-400-italic-ORtyMVfw.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:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(./eb-garamond-latin-ext-400-italic-V7s3nWfX.woff2)format("woff2"),url(./eb-garamond-latin-ext-400-italic-DUSsnRSD.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:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(./eb-garamond-latin-400-italic-DSEbMgZu.woff2)format("woff2"),url(./eb-garamond-latin-400-italic-CDFyLPXJ.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:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(./eb-garamond-cyrillic-ext-600-normal-cjIjEMm6.woff2)format("woff2"),url(./eb-garamond-cyrillic-ext-600-normal-b6vuEf1e.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:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(./eb-garamond-cyrillic-600-normal-CHfC3jm-.woff2)format("woff2"),url(./eb-garamond-cyrillic-600-normal-koFutDBv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(./eb-garamond-greek-ext-600-normal-B6KG6Acg.woff2)format("woff2"),url(./eb-garamond-greek-ext-600-normal-DzPSPp8W.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(./eb-garamond-greek-600-normal--vWuDlyL.woff2)format("woff2"),url(./eb-garamond-greek-600-normal-JScKXZBq.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(./eb-garamond-vietnamese-600-normal-Dmi8L14S.woff2)format("woff2"),url(./eb-garamond-vietnamese-600-normal-DgZMCD0h.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:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(./eb-garamond-latin-ext-600-normal-CrweTMKz.woff2)format("woff2"),url(./eb-garamond-latin-ext-600-normal-CoWPx8v4.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:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(./eb-garamond-latin-600-normal-DHwxsLHv.woff2)format("woff2"),url(./eb-garamond-latin-600-normal-xCe6GkOx.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{--wood-dark:#2b1a0e;--wood:#4a2f18;--wood-light:#6b4524;--gold:#d8b25c;--gold-dark:#9c7a32;--gold-light:#f3d88f;--parchment:#efe2c0;--parchment-dark:#dcc79a;--parchment-edge:#b99a62;--ink:#2b1d0e;--ink-soft:#5a4630;--red:#9b2d20;--green:#2f6b2a;--blue:#2e5a88;--font-title:"Cinzel", "Times New Roman", serif;--font-body:"EB Garamond", "Georgia", serif}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);font-family:var(--font-body);-webkit-user-select:none;user-select:none;-webkit-font-smoothing:antialiased;background:#0f1d2e;margin:0;font-size:16px;overflow:hidden}button,input,select{font-family:inherit;font-size:inherit}#game{position:absolute;inset:0}#game canvas{display:block}#overlay{pointer-events:none;z-index:5;position:absolute;inset:0}#overlay>*{pointer-events:auto}#fullscreen-ui{pointer-events:none;z-index:20;position:fixed;inset:0}#fullscreen-ui>*{pointer-events:auto}.wood{color:var(--parchment);background:repeating-linear-gradient(92deg,#0000001f 0 2px,#0000 2px 9px),repeating-linear-gradient(88deg,#ffdca00d 0 1px,#0000 1px 23px),linear-gradient(#5a3a1e,#3e2712 60%,#33200f)}.parchment{color:var(--ink);background:radial-gradient(at 20% 10%,#ffffff59,#0000 60%),radial-gradient(at 80% 90%,#a06e282e,#0000 60%),linear-gradient(#f3e7c8,#e7d5a8)}.frame{border:3px solid var(--gold-dark);border-radius:4px;box-shadow:0 0 0 1px #1a0f06,inset 0 0 0 1px #ffe6aa59,0 10px 30px #0000008c}h1,h2,h3,h4{font-family:var(--font-title);letter-spacing:.04em;margin:0}.btn{color:var(--gold-light);font-family:var(--font-title);letter-spacing:.03em;cursor:pointer;white-space:nowrap;background:linear-gradient(#7a5230,#55361c 55%,#43290f);border:1px solid #1c1006;border-radius:3px;justify-content:center;align-items:center;gap:6px;padding:5px 12px;font-size:14px;transition:filter .1s;display:inline-flex;box-shadow:inset 0 1px #ffdca059,0 1px 2px #00000080}.btn:hover:not(:disabled){filter:brightness(1.2);color:#fff4cf}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:default}.btn.primary{color:#fff8e0;background:linear-gradient(#b88a3a,#8a6224 55%,#6a4a18)}.btn.danger{background:linear-gradient(#a0402a,#7a2a1a 55%,#5a1e12)}.btn.small{padding:2px 8px;font-size:12px}.btn.icon{width:36px;height:36px;padding:4px}.btn.icon img{width:26px;height:26px}.btn.active{color:#2b1a0e;background:linear-gradient(#d8b25c,#a8842e)}.link{color:var(--blue);cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.speed{gap:3px;display:flex}.speed .btn{min-width:28px;padding:2px 6px;font-size:12px}.minimap{border:2px solid var(--gold-dark);cursor:crosshair;margin:6px 8px 4px;line-height:0;position:relative;box-shadow:0 0 0 1px #1a0f06}.minimap canvas{width:100%}.kv{justify-content:space-between;gap:6px;font-size:14px;line-height:1.35;display:flex}.kv .k{color:var(--ink-soft)}.bar{background:#3c281440;border:1px solid #3c281466;border-radius:4px;height:8px;margin:2px 0 5px;overflow:hidden}.bar>div{background:linear-gradient(#7fb55a,#4a8a32);height:100%}.bar.warn>div{background:linear-gradient(#e0b04a,#b8862a)}.bar.bad>div{background:linear-gradient(#d8654a,#a83a28)}.cargo{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.cargo .item{background:#ffffff59;border:1px solid #785a3266;border-radius:3px;align-items:center;gap:2px;padding:1px 4px 1px 1px;font-size:13px;display:flex}.cargo img{width:20px;height:20px}.actions{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.shiplist-item{cursor:pointer;border-bottom:1px solid #785a3240;align-items:center;gap:6px;padding:3px 4px;font-size:14px;display:flex}.shiplist-item:hover{background:#fff0c880}.shiplist-item.sel{background:#d8b25c73}.window-layer{pointer-events:none;justify-content:center;align-items:flex-start;padding:24px 16px;display:flex;position:absolute;inset:0}.window{pointer-events:auto;width:var(--window-w,auto);flex-direction:column;min-width:360px;max-width:min(980px,100%);max-height:100%;display:flex}.window-title{border-bottom:2px solid var(--gold-dark);align-items:center;gap:10px;padding:7px 10px 7px 14px;display:flex}.window-title h2{color:var(--gold-light);text-shadow:0 1px 2px #000;flex:1;font-size:19px}.window-title .close{width:28px;height:28px;padding:0;font-size:18px;line-height:1}.window-body{min-height:0;padding:12px 14px;overflow:auto}.window-body p{margin:0 0 8px;line-height:1.4}.tabs{border-bottom:2px solid var(--parchment-edge);flex-wrap:wrap;gap:2px;padding:6px 10px 0;display:flex}.tab{border:1px solid var(--parchment-edge);cursor:pointer;font-family:var(--font-title);color:inherit;font-size:13px;line-height:inherit;background:#785a3226;border-bottom:none;border-radius:4px 4px 0 0;padding:4px 12px}.tab.active{background:#fffaebb3;font-weight:700}table.grid{border-collapse:collapse;width:100%;font-size:15px}table.grid th{font-family:var(--font-title);text-align:right;color:var(--ink-soft);border-bottom:2px solid var(--parchment-edge);z-index:1;background:#eadbb4;padding:3px 6px;font-size:12px;font-weight:700;position:sticky;top:0}table.grid th:first-child,table.grid td:first-child{text-align:left}table.grid td{text-align:right;white-space:nowrap;border-bottom:1px solid #8c693c33;padding:2px 6px}table.grid tr:hover td{background:#fff5d78c}.goodcell{align-items:center;gap:6px;display:flex}.goodcell img{width:24px;height:24px}.price-btn{min-width:64px;font-family:var(--font-body);cursor:pointer;color:var(--ink);background:linear-gradient(#fff4d6,#e8d3a0);border:1px solid #5a3e1a;border-radius:3px;padding:2px 6px;font-size:15px;font-weight:600}.price-btn:hover:not(:disabled){background:linear-gradient(#fffae8,#f3dfae);border-color:#2b1a0e}.price-btn:disabled{opacity:.4;cursor:default}.price-btn.buy{color:#7a1e12}.price-btn.sell{color:#1e5a1e}.muted{color:var(--ink-soft)}.good{color:var(--green)}.bad{color:var(--red)}.small{font-size:13px}.row{align-items:center;gap:8px;display:flex}.col{flex-direction:column;gap:6px;display:flex}.spread{justify-content:space-between}.wrap{flex-wrap:wrap}.grow{flex:1}.box{border:1px solid var(--parchment-edge);background:#fffaeb59;border-radius:4px;padding:8px 10px}.cards{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.card{border:1px solid var(--parchment-edge);background:#fffaeb73;border-radius:4px;flex-direction:column;gap:4px;padding:8px 10px;display:flex}.card h4{font-size:14px}.card.selected{outline:2px solid var(--gold-dark);background:#fff0c8b3}.amount-select{align-items:center;gap:3px;display:flex}input[type=text],input[type=number],select{border:1px solid var(--parchment-edge);color:var(--ink);background:#fffaf0;border-radius:3px;padding:3px 6px}input[type=range]{accent-color:var(--gold-dark)}.hint{color:var(--ink-soft);font-size:14px;font-style:italic}.badge{background:var(--blue);color:#fff;border-radius:8px;padding:0 6px;font-size:12px;display:inline-block}.badge.red{background:var(--red)}.badge.gold{background:var(--gold-dark)}.toasts{pointer-events:none;z-index:30;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%)}.toast{color:#fff8e6;border:1px solid var(--gold-dark);text-align:center;background:#281a0ce6;border-radius:4px;max-width:560px;padding:6px 14px;font-size:15px;animation:.25s ease-out toast-in;box-shadow:0 4px 12px #0006}.toast.warn{background:#50180eeb;border-color:#d8654a}.toast.good{background:#183812eb;border-color:#7fb55a}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}}.menu-screen{background:radial-gradient(#0a142326,#050a14b3);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.menu-panel{text-align:center;width:420px;padding:28px 34px 30px}.title-logo{font-family:var(--font-title);letter-spacing:.12em;color:var(--gold-light);text-shadow:0 2px #5a3a12,0 4px 12px #000c;font-size:54px;font-weight:700;line-height:1}.title-sub{font-family:var(--font-title);letter-spacing:.3em;color:var(--parchment);margin:10px 0 24px;font-size:15px}.menu-buttons{flex-direction:column;gap:10px;display:flex}.menu-buttons .btn{padding:10px;font-size:18px}.form{text-align:left;grid-template-columns:170px 1fr;align-items:center;gap:8px 12px;display:grid}.settings .tabs{margin-bottom:6px;padding:0}.settings-form{grid-template-columns:200px 1fr;align-content:start;min-height:270px}.settings-form .seg{justify-self:start}.form label{font-family:var(--font-title);color:var(--ink-soft);font-size:13px}.seg{border:1px solid var(--parchment-edge);border-radius:4px;display:inline-flex;overflow:hidden}.seg button{cursor:pointer;background:#fffaeb80;border:none;padding:4px 10px;font-size:14px}.seg button+button{border-left:1px solid var(--parchment-edge)}.seg button.on{background:var(--gold-dark);color:#fff8e0}.loading{background:#0f1d2e;flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex;position:absolute;inset:0}.loading .bar{width:320px;height:12px}.dialog-backdrop{background:#00000073;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.news-item{cursor:pointer;border-bottom:1px solid #8c693c4d;padding:6px 8px}.news-item.unread{font-weight:600}.news-item:hover{background:#fff5d78c}.scroll{overflow:auto}.ticker{color:#e8d8b4;border-top:2px solid var(--gold-dark);max-height:96px;padding:4px 10px 6px;font-size:13px;overflow:hidden}.ticker div{white-space:nowrap;text-overflow:ellipsis;cursor:pointer;overflow:hidden}.ticker div:hover{color:var(--gold-light)}.battle-hud{pointer-events:auto;width:360px;padding:8px 10px;position:absolute;bottom:10px;left:10px}.placing-banner{z-index:10;padding:8px 16px;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#a8885a padding-box padding-box;border:2px solid #0000;border-radius:5px}::-webkit-scrollbar-track{background:#785a3226}@media (pointer:coarse){.btn{min-height:34px}.tab{padding-top:8px;padding-bottom:8px}}:focus-visible{outline:2px solid var(--gold-light);outline-offset:2px}.parchment :focus-visible{outline-color:var(--blue)}.portrait{background-repeat:no-repeat;border-radius:3px;flex:none;display:inline-block;box-shadow:0 1px 3px #0006}.tutorial{z-index:8;pointer-events:auto;width:min(420px,100% - 32px);padding:10px 12px;position:absolute;bottom:60px;left:16px}.world-goods{flex-wrap:wrap;gap:2px;display:flex}.good-toggle{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;padding:1px;line-height:0}.good-toggle.level0 img{opacity:.2;filter:grayscale()}.good-toggle.level2{background:#d4af3759;border-color:#b8860b}.good-toggle:focus-visible{outline:2px solid var(--gold-dark)}.edition-link{margin:12px 0 0}.edition-link.highlight a{color:var(--gold-light);font-weight:600}:root{--top-h:48px;--nav-h:58px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px)}html,body{overscroll-behavior:none;-webkit-tap-highlight-color:transparent;touch-action:none}.m-sheet-body,.m-panel,.window-body,.menu-screen,.dialog-backdrop,.scroll,.tabs{touch-action:pan-x pan-y}#app{position:fixed;inset:0}#stage{position:absolute;inset:0}body.in-game #stage{top:calc(var(--top-h) + var(--safe-top));bottom:calc(var(--nav-h) + var(--safe-bottom))}body.in-game:has(.m-game.battle) #stage{bottom:0}#fullscreen-ui>.m-game{pointer-events:none;flex-direction:column;display:flex;position:absolute;inset:0}.m-game>*{pointer-events:auto}.m-top{height:calc(var(--top-h) + var(--safe-top));padding:var(--safe-top) calc(8px + var(--safe-right)) 0 calc(8px + var(--safe-left));border-bottom:2px solid var(--gold-dark);flex:none;align-items:center;gap:8px;display:flex}.m-gold{font-family:var(--font-title);color:var(--gold-light);white-space:nowrap;background:0 0;border:none;align-items:center;gap:4px;padding:4px 2px;font-size:17px;display:flex}.m-gold.negative{color:#ff9a8a}.m-when{flex-direction:column;flex:1;min-width:0;line-height:1.15;display:flex}.m-date{font-family:var(--font-title);white-space:nowrap;font-size:12px}.m-sub{color:#d9c6a0;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.m-speed{gap:3px;display:flex}.m-speed .btn{min-width:38px;min-height:34px;padding:2px 6px;font-size:13px}.m-map{pointer-events:none;flex:1;min-height:0;position:relative}.m-map>*{pointer-events:auto}.m-map>.toasts{pointer-events:none}.m-nav{height:calc(var(--nav-h) + var(--safe-bottom));padding:0 var(--safe-right) var(--safe-bottom) var(--safe-left);border-top:2px solid var(--gold-dark);flex:none;display:flex}.m-nav-btn{color:var(--parchment);font-family:var(--font-title);letter-spacing:.02em;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1px;padding:4px 0 2px;font-size:10px;display:flex;position:relative}.m-nav-btn:disabled{opacity:.4}.m-nav-btn.active{color:var(--gold-light);background:#ffdc9624}.m-nav-btn .badge{position:absolute;top:3px;left:calc(50% + 6px)}.m-sheet{border:2px solid var(--gold-dark);border-radius:8px;flex-direction:column;max-height:60%;display:flex;position:absolute;bottom:6px;left:6px;right:6px;box-shadow:0 -4px 18px #00000073}.m-sheet-handle{min-height:42px;font-family:var(--font-title);color:var(--ink);text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:6px 12px;font-size:14px;display:flex}.m-sheet-handle .grow{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.m-sheet.open .m-sheet-handle{border-bottom:1px solid var(--parchment-edge)}.m-sheet-body{padding:6px 12px 10px;overflow:auto}.m-sheet-body h3{font-size:16px}.m-multi{margin-top:8px}.m-panel{border-top:2px solid var(--gold-dark);max-height:100%;padding:6px 6px 4px;position:absolute;bottom:0;left:0;right:0;overflow:auto}.m-panel .minimap{margin:0}.m-panel .ticker{max-height:none}.m-more{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:4px;display:grid}.m-more .btn{text-align:left;white-space:normal;justify-content:flex-start;min-height:46px;font-size:14px}.m-banner{z-index:12;align-items:center;gap:10px;padding:8px 12px;font-size:15px;display:flex;position:absolute;bottom:56px;left:8px;right:8px}.m-paused{font:inherit;white-space:nowrap;border:none;position:absolute;bottom:60px;left:50%;transform:translate(-50%)}.toasts{width:calc(100% - 24px);top:8px}.toast{text-align:center;max-width:100%}.tutorial{width:auto;font-size:15px;inset:8px 8px auto}.m-windows{z-index:40;position:fixed;inset:0}.m-windows .window-layer{padding:0}.window{width:100%;min-width:0;max-width:100%;height:100%;max-height:100%;box-shadow:none;border:none;border-radius:0}.window-title{padding:calc(6px + var(--safe-top)) calc(8px + var(--safe-right)) 6px calc(12px + var(--safe-left))}.window-title h2{white-space:nowrap;text-overflow:ellipsis;font-size:17px;overflow:hidden}.window-title .close{width:40px;height:40px;font-size:22px}.window-body{padding:10px calc(10px + var(--safe-right)) calc(16px + var(--safe-bottom)) calc(10px + var(--safe-left));-webkit-overflow-scrolling:touch;flex:1}.tabs{scrollbar-width:none;flex-wrap:nowrap;flex:none;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{white-space:nowrap;flex:none;padding:9px 12px}table.grid{max-width:100%;font-size:14px;display:block;overflow-x:auto}table.grid th,table.grid td{padding-left:4px;padding-right:4px}.price-btn{min-width:54px}.window-body .scroll{max-height:none!important}.cards{grid-template-columns:1fr}.form{grid-template-columns:1fr;gap:4px 0}.form label{margin-top:6px}.dialog-backdrop{z-index:45;padding:calc(8px + var(--safe-top)) 8px calc(8px + var(--safe-bottom));position:fixed}.dialog-backdrop>.frame{max-width:560px;max-height:100%;overflow:auto;width:100%!important}.scene-dialog{width:100%;max-width:560px}.battle-hud{width:auto;max-height:46%;padding-bottom:calc(8px + var(--safe-bottom));border-radius:0;bottom:0;left:0;right:0;overflow:auto}.menu-screen{padding:calc(16px + var(--safe-top)) 10px calc(16px + var(--safe-bottom));align-items:flex-start;overflow:auto}.menu-panel{width:100%;max-width:440px;margin:auto;padding:22px 18px 24px}.title-logo{font-size:44px}.edition-link a{color:var(--gold-light)}.btn{min-height:40px;padding:6px 12px}.btn.small{min-height:36px;padding:4px 10px}.price-btn{min-height:38px}.shiplist-item{min-height:42px}.seg button{min-height:36px}input,select,textarea{min-height:36px;font-size:16px}.actions{gap:6px}
