@font-face{font-family:Silkscreen;font-style:normal;font-display:swap;font-weight:400;src:url(./silkscreen-latin-ext-400-normal-2T9bWrxp.woff2)format("woff2"),url(./silkscreen-latin-ext-400-normal-Drdn_BEM.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:Silkscreen;font-style:normal;font-display:swap;font-weight:400;src:url(./silkscreen-latin-400-normal-CtPo2yA5.woff2)format("woff2"),url(./silkscreen-latin-400-normal-D0DfPJut.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:Silkscreen;font-style:normal;font-display:swap;font-weight:700;src:url(./silkscreen-latin-ext-700-normal-D7YUjVT_.woff2)format("woff2"),url(./silkscreen-latin-ext-700-normal-CjQdSuci.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:Silkscreen;font-style:normal;font-display:swap;font-weight:700;src:url(./silkscreen-latin-700-normal-CSE2nhgM.woff2)format("woff2"),url(./silkscreen-latin-700-normal-BjMPLkh0.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:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./pixelify-sans-cyrillic-400-normal-Ckz2YJkH.woff2)format("woff2"),url(./pixelify-sans-cyrillic-400-normal-DfOZNMlW.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./pixelify-sans-latin-ext-400-normal-DdH6zlBQ.woff2)format("woff2"),url(./pixelify-sans-latin-ext-400-normal-BkfTUL4s.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:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./pixelify-sans-latin-400-normal-DLrIX9QE.woff2)format("woff2"),url(./pixelify-sans-latin-400-normal-JapMNN6Z.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:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./pixelify-sans-cyrillic-600-normal-BhqNJYOZ.woff2)format("woff2"),url(./pixelify-sans-cyrillic-600-normal-B3EuUOZG.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./pixelify-sans-latin-ext-600-normal-Dha6RiOG.woff2)format("woff2"),url(./pixelify-sans-latin-ext-600-normal-CDaIumwU.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:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./pixelify-sans-latin-600-normal-Dd_Dy7u5.woff2)format("woff2"),url(./pixelify-sans-latin-600-normal-BNlgYbDL.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{--ink:#2e222f;--panel:#3e3546;--line:#625565;--text:#c7dcd0;--muted:#9babb2;--white:#fff;--west:#1ebc73;--west-dark:#239063;--west-light:#91db69;--east:#e83b3b;--east-dark:#ae2334;--east-light:#f68181;--water:#4d9be6;--water-light:#8fd3ff;--gold:#f9c22b;--fire:#fb6b1d;--warn:#f9c22b;--u:2;--slice:calc(8px * var(--u))}:root[data-zoom="1"],:root[data-zoom="2"]{--u:1}:root[data-zoom="1"] body{font-size:12px}:root[data-zoom="1"] .btn{gap:3px;padding:0 2px;font-size:11px}:root[data-zoom="1"] .btn .label{display:none}:root[data-zoom="1"] .tools,:root[data-zoom="1"] .controls{gap:3px}:root[data-zoom="1"] .bottombar .panel{padding:1px 2px}:root[data-zoom="1"] .ap{gap:3px;margin:0 2px}:root[data-zoom="1"] .topbar{gap:4px;top:4px;left:4px;right:4px}:root[data-zoom="1"] .topbar .panel{padding:0 3px}:root[data-zoom="1"] .topbar .turn,:root[data-zoom="1"] .score{gap:4px}:root[data-zoom="1"] .topbar .turn .big,:root[data-zoom="1"] .score .name{font-size:9px}:root[data-zoom="1"] .topbar .phase{font-size:8px}:root[data-zoom="1"] .topbar .season-name,:root[data-zoom="1"] .score .you{display:none}:root[data-zoom="1"] .score .stat{gap:2px;font-size:10px}:root[data-zoom="1"] .entry{font-size:11px}:root[data-zoom="1"] .log{max-width:36%;top:40px}:root[data-zoom="1"] .log .entry:nth-last-child(n+4),:root[data-zoom="1"] .entry .turn-tag{display:none}:root[data-zoom="1"] .tutorial{width:210px;padding:0 2px;top:auto;bottom:64px;right:6px}:root[data-zoom="1"] .tutorial p{font-size:11px}:root[data-zoom="1"] .title .buttons{grid-template-columns:repeat(3,minmax(120px,1fr))}:root[data-zoom="1"] .title .logo{width:336px}:root[data-zoom="1"] .title .foot{display:none}*{box-sizing:border-box}html,body{height:100%;color:var(--text);background:#000;margin:0;overflow:hidden}body{-webkit-font-smoothing:none;font-smooth:never;font:16px/1.35 Pixelify Sans,system-ui,sans-serif}#app{place-items:center;display:grid;position:fixed;inset:0}#frame{position:relative}#stage canvas{image-rendering:pixelated;display:block}#hud{pointer-events:none;position:absolute;inset:0}#hud>*{pointer-events:auto}img.px,.px{image-rendering:pixelated}.pixel-title{text-transform:uppercase;letter-spacing:.04em;font-family:Silkscreen,monospace}.panel{border:var(--slice) solid transparent;border-image:url(../assets/ui-panel.png) 8 fill / var(--slice) stretch;image-rendering:pixelated;color:var(--text);padding:2px 6px}.btn{color:var(--white);border:var(--slice) solid transparent;border-image:url(../assets/ui-button.png) 8 fill / var(--slice) stretch;min-height:calc(24px * var(--u));cursor:pointer;image-rendering:pixelated;text-shadow:0 2px 0 var(--ink);-webkit-user-select:none;user-select:none;background:0 0;justify-content:center;align-items:center;gap:8px;padding:0 6px;font:600 16px/1 Pixelify Sans,sans-serif;display:inline-flex}.btn:hover:not(:disabled){border-image-source:url(../assets/ui-button-hover.png)}.btn.on,.btn.primary{border-image-source:url(../assets/ui-button-on.png)}.btn:active:not(:disabled){transform:translateY(var(--u))}.btn:disabled{opacity:.45;cursor:default}.btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.btn .icon{flex:none}.btn small{color:var(--gold);font-family:Silkscreen,monospace;font-size:10px}select,input[type=number],input[type=text]{color:var(--text);background:var(--ink);border:2px solid var(--line);border-radius:0;min-width:0;padding:4px 8px;font:16px Pixelify Sans,sans-serif}select:focus,input:focus{outline:2px solid var(--water)}label.field{color:var(--muted);gap:4px;font-size:13px;display:grid}.title{place-items:center;display:grid;position:absolute;inset:0}.title .menu{justify-items:center;gap:14px;padding:18px 26px;display:grid}.title .logo{width:calc(112px * var(--u) * 3);height:auto;image-rendering:pixelated;filter:none}.title .tag{color:var(--text);text-shadow:0 2px 0 var(--ink);margin-top:-6px;font-family:Silkscreen,monospace}.title .buttons{grid-template-columns:repeat(3,minmax(170px,1fr));gap:8px;display:grid}.title .settings{flex-wrap:wrap;justify-content:center;align-items:end;gap:12px;display:flex}.title .foot{color:var(--muted);font-size:12px}.topbar{justify-content:space-between;align-items:center;gap:8px;display:flex;position:absolute;top:6px;left:6px;right:6px}.topbar .panel{border-width:8px;white-space:nowrap;border-image-width:8px;padding:0 6px}.topbar .turn{align-items:center;gap:8px;display:flex}.topbar .turn .big{color:var(--white);font-family:Silkscreen,monospace;font-size:13px}.topbar .season-name{color:var(--text);font-family:Silkscreen,monospace;font-size:13px}.topbar .phase{color:var(--gold);font-family:Silkscreen,monospace;font-size:11px}.topbar .phase.thinking:after{content:"";text-align:left;width:3ch;animation:1.2s step-end infinite thinking-dots;display:inline-block}@keyframes thinking-dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}@media (prefers-reduced-motion:reduce){.topbar .phase.thinking:after{content:"...";animation:none}}.score{font-variant-numeric:tabular-nums;align-items:center;gap:8px;display:flex}.score .name{font-family:Silkscreen,monospace;font-size:12px}.score .you{color:var(--ink);background:var(--gold);padding:0 3px;font-family:Silkscreen,monospace;font-size:9px}.score.west .name{color:var(--west-light)}.score.east .name{color:var(--east-light)}.score .stat{align-items:center;gap:3px;font-size:14px;display:inline-flex}.score .total{color:var(--white);font-family:Silkscreen,monospace}.bottombar{justify-content:space-between;align-items:center;gap:8px;display:flex;position:absolute;bottom:6px;left:6px;right:6px}.tools,.controls{align-items:center;gap:6px;display:flex}.controls .sep{background:var(--line);align-self:stretch;width:2px;margin:2px}.ap{align-items:center;gap:4px;margin:0 6px;display:inline-flex}.ap i{width:calc(5px * var(--u));height:calc(5px * var(--u));background:var(--line);box-shadow:0 0 0 2px var(--ink);display:inline-block}.ap i.full{background:var(--gold)}.ap i.west{background:var(--west)}.ap i.east{background:var(--east)}.log{pointer-events:none;gap:3px;max-width:42%;display:grid;position:absolute;top:46px;left:6px}.entry{background:var(--ink);border-left:4px solid var(--line);color:var(--text);align-items:center;gap:6px;min-width:0;padding:2px 8px 2px 4px;font-size:14px;display:flex}.entry .text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.entry .icon{flex:none}.entry .dot{background:var(--line);flex:none;width:6px;height:6px;margin:0 5px}.entry .turn-tag{color:var(--muted);flex:none;font-family:Silkscreen,monospace;font-size:10px}.entry.west{border-left-color:var(--west)}.entry.east{border-left-color:var(--east)}.entry.lost,.entry.house,.entry.field,.entry.flood,.entry.flee{color:var(--white)}.entry.harvest,.entry.resow,.entry.shored{color:var(--west-light)}.entry.east.harvest,.entry.east.resow,.entry.east.shored{color:var(--east-light)}.entry.info{color:var(--gold);border-left-color:var(--gold)}.entry.new{animation:.3s step-end 4 entry-new}@keyframes entry-new{0%{border-left-color:var(--white)}50%{border-left-color:inherit}}.score.hit{animation:.24s step-end 5 hit}.score.west.hit{--hit:var(--west)}.score.east.hit{--hit:var(--east)}@keyframes hit{0%{background:var(--hit)}50%{background:0 0}}.tooltip{pointer-events:none;background:var(--ink);color:var(--text);border:2px solid var(--line);white-space:nowrap;padding:2px 6px;font-size:13px;position:absolute}.banner{text-align:center;pointer-events:none;animation:2.4s forwards banner;position:absolute;top:22%;left:50%;transform:translate(-50%)}.banner .pixel-title{color:var(--white);text-shadow:0 4px 0 var(--ink), 4px 0 0 var(--ink), -4px 0 0 var(--ink), 0 -4px 0 var(--ink);font-size:40px}.banner .sub{color:var(--gold);text-shadow:0 2px 0 var(--ink);font-family:Silkscreen,monospace}@keyframes banner{0%{opacity:0;transform:translate(-50%,-12px)}12%,75%{opacity:1;transform:translate(-50%)}to{opacity:0}}.modal-back{background:repeating-conic-gradient(#2e222f 0 25%, transparent 0 50%) 0 0 / 4px 4px;place-items:center;display:grid;position:absolute;inset:0}.modal{gap:12px;max-width:760px;padding:14px 18px;display:grid}.modal h2{color:var(--white);margin:0;font-family:Silkscreen,monospace;font-size:22px}.modal p{margin:0}.modal .row{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.modal table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.modal th,.modal td{text-align:right;padding:4px 10px}.modal th:first-child,.modal td:first-child{text-align:left;color:var(--muted)}.modal th.west{color:var(--west-light)}.modal th.east{color:var(--east-light)}.modal .win{color:var(--gold)}.modal code{color:var(--gold);font-family:Silkscreen,monospace}.tutorial{right:12px;top:calc(56px * var(--u));gap:8px;width:340px;display:grid;position:absolute}.tutorial h3{color:var(--gold);margin:0;font-family:Silkscreen,monospace;font-size:14px}.tutorial p{margin:0;font-size:15px}.tutorial .steps{gap:4px;display:flex}.tutorial .steps i{background:var(--line);flex:1;height:4px}.tutorial .steps i.done{background:var(--west)}.perf{left:50%;top:calc(48px * var(--u) + 16px);color:var(--water-light);position:absolute;transform:translate(-50%)}.badge{background:var(--ink);border:2px solid var(--line);padding:2px 6px;font-family:Silkscreen,monospace;font-size:11px}.badge.ok{color:var(--west-light);border-color:var(--west-dark)}.badge.bad{color:var(--east-light);border-color:var(--east-dark)}.thinking{color:var(--muted);font-family:Silkscreen,monospace;font-size:12px}.thinking:after{content:"...";vertical-align:bottom;width:1.5em;animation:1s steps(4,end) infinite dots;display:inline-block;overflow:hidden}@keyframes dots{0%{width:0}to{width:1.5em}}:root.cb{--west:#4d9be6;--west-dark:#4d65b4;--west-light:#8fd3ff;--east:#f79617;--east-dark:#cd683d;--east-light:#f9c22b}@media (prefers-reduced-motion:reduce){.banner,.ticker div{animation-duration:10ms}}
