.item-icon{background-image:url(/assets/items-CVa1bcKs.webp);background-size:800% 800%}.ii-crop_barley{background-position:0 0}.ii-crop_beet{background-position:14.2857% 0}.ii-crop_blueberry{background-position:28.5714% 0}.ii-crop_cabbage{background-position:42.8571% 0}.ii-crop_carrot{background-position:57.1429% 0}.ii-crop_clashberry{background-position:71.4286% 0}.ii-crop_corn{background-position:85.7143% 0}.ii-crop_melon{background-position:100% 0}.ii-crop_oats{background-position:0 14.2857%}.ii-crop_onion{background-position:14.2857% 14.2857%}.ii-crop_pepper{background-position:28.5714% 14.2857%}.ii-crop_potato{background-position:42.8571% 14.2857%}.ii-crop_pumpkin{background-position:57.1429% 14.2857%}.ii-crop_raspberry{background-position:71.4286% 14.2857%}.ii-crop_strawberry{background-position:85.7143% 14.2857%}.ii-crop_tomato{background-position:100% 14.2857%}.ii-crop_watermelon{background-position:0 28.5714%}.ii-crop_wheat{background-position:14.2857% 28.5714%}.ii-crystal{background-position:28.5714% 28.5714%}.ii-decor_barrel{background-position:42.8571% 28.5714%}.ii-decor_bench{background-position:57.1429% 28.5714%}.ii-decor_fence{background-position:71.4286% 28.5714%}.ii-decor_lantern{background-position:85.7143% 28.5714%}.ii-decor_well{background-position:100% 28.5714%}.ii-decor_windmill{background-position:0 42.8571%}.ii-dish_berry_pie{background-position:14.2857% 42.8571%}.ii-dish_bread{background-position:28.5714% 42.8571%}.ii-dish_pumpkin_soup{background-position:42.8571% 42.8571%}.ii-dish_salad{background-position:57.1429% 42.8571%}.ii-fert_basic{background-position:71.4286% 42.8571%}.ii-fert_premium{background-position:85.7143% 42.8571%}.ii-herb{background-position:100% 42.8571%}.ii-mushroom{background-position:0 57.1429%}.ii-mushroom_rare{background-position:14.2857% 57.1429%}.ii-ore_copper{background-position:28.5714% 57.1429%}.ii-ore_iron{background-position:42.8571% 57.1429%}.ii-permit_scroll,.ii-island_expand_1,.ii-island_expand_2,.ii-island_expand_3,.ii-island_expand_4{background-position:57.1429% 57.1429%}.ii-plot{background-position:71.4286% 57.1429%}.ii-reed{background-position:85.7143% 57.1429%}.ii-seed_barley{background-position:100% 57.1429%}.ii-seed_beet{background-position:0 71.4286%}.ii-seed_blueberry{background-position:14.2857% 71.4286%}.ii-seed_cabbage{background-position:28.5714% 71.4286%}.ii-seed_carrot{background-position:42.8571% 71.4286%}.ii-seed_clashberry{background-position:57.1429% 71.4286%}.ii-seed_corn{background-position:71.4286% 71.4286%}.ii-seed_melon{background-position:85.7143% 71.4286%}.ii-seed_oats{background-position:100% 71.4286%}.ii-seed_onion{background-position:0 85.7143%}.ii-seed_pepper{background-position:14.2857% 85.7143%}.ii-seed_potato{background-position:28.5714% 85.7143%}.ii-seed_pumpkin{background-position:42.8571% 85.7143%}.ii-seed_raspberry{background-position:57.1429% 85.7143%}.ii-seed_strawberry{background-position:71.4286% 85.7143%}.ii-seed_tomato{background-position:85.7143% 85.7143%}.ii-seed_watermelon{background-position:100% 85.7143%}.ii-seed_wheat{background-position:0 100%}.ii-stone{background-position:14.2857% 100%}.ii-tool_axe{background-position:28.5714% 100%}.ii-tool_pickaxe{background-position:42.8571% 100%}.ii-wood{background-position:57.1429% 100%}.ii-wood_oak{background-position:71.4286% 100%}.ii-wood_pine{background-position:85.7143% 100%}.sheet.city{width:min(600px,100vw - 32px)}.city .body{scrollbar-width:thin;scrollbar-color:#f2f6ee47 transparent;gap:12px;padding-right:6px}.city-nav{border-radius:var(--r-pill);background:#00000040;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:3px;display:grid}.city-nav button{border-radius:var(--r-pill);min-height:36px;color:var(--ink-2);justify-content:center;align-items:center;gap:6px;padding:6px 10px;font-size:13px;font-weight:800;transition:background-color .15s,color .15s;display:flex}.city-nav button:hover{color:var(--milk);background:#ffffff0f}.city-nav button[aria-current=true]{color:var(--milk);background:#ffffff24}.city-head{grid-template-columns:52px 1fr;align-items:start;gap:12px;display:grid}.city-ic{border-radius:var(--r-tile);width:52px;height:52px;color:var(--sun);background:linear-gradient(160deg,#f5b94238,#f5b9420f);border:1px solid #f5b94247;place-items:center;display:grid}.city .purpose{color:var(--milk);font-size:14px}.city .chips{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.city .tag{border-radius:var(--r-pill);letter-spacing:.02em;color:var(--ink-2);border:1px solid var(--glass-edge);white-space:nowrap;background:#ffffff12;align-items:center;gap:5px;padding:3px 9px;font-size:11px;font-weight:800;display:inline-flex}.city .tag.demo{color:var(--sun-ink);background:var(--sun);border-color:#0000}.city .tag.own_pool{color:var(--sun);border-color:#f5b94259}.city .tag.partner_api{color:var(--grow);border-color:#8ec9ff59}.city .stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid}.city .stat,.city .card{border-radius:var(--r-tile);background:#ffffff0d;border:1px solid #ffffff0d;flex-direction:column;gap:2px;min-width:0;padding:10px 12px;display:flex}.city .k{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);font-size:11px;font-weight:800}.city .v{overflow-wrap:anywhere;font-size:15px;font-weight:700;line-height:1.25}.city .s{color:var(--ink-2);font-size:12px}.city .v.a-ready{color:var(--ready)}.city .v.a-sun{color:var(--sun)}.city .v.a-clash{color:var(--clash)}.city .card.mine{background:#7be4950f;border-color:#7be49538;flex-flow:wrap;align-items:baseline;gap:4px 12px}.city .card.mine .k{flex-basis:100%}.city .card.mine .s{font-family:var(--body)}.spark{border-radius:var(--r-tile);background:#0000002e;border:1px solid #ffffff0d;margin:0;padding:10px 12px 8px}.spark figcaption{color:var(--ink-2);justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:6px;font-size:12px;display:flex}.spark figcaption .num{color:var(--milk);font-size:13px}.spark figcaption small{font-family:var(--body);color:var(--ink-3);margin-left:4px;font-size:11px}.spark-plot{touch-action:pan-y;cursor:crosshair;height:64px;position:relative}.spark-plot svg{width:100%;height:100%;overflow:visible}.spark .line{fill:none;stroke:var(--grow);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.spark .area{fill:var(--grow);opacity:.1}.spark .cross{pointer-events:none;background:#f2f6ee59;width:1px;position:absolute;top:0;bottom:0}.spark .dot{background:var(--grow);pointer-events:none;border-radius:50%;width:10px;height:10px;margin:-5px 0 0 -5px;position:absolute;box-shadow:0 0 0 2px #14271c}.spark .axis{color:var(--ink-3);pointer-events:none;background:#0f241899;border-radius:4px;padding:0 3px;font-size:10px;position:absolute;right:0}.spark .axis.hi{top:-2px}.spark .axis.lo{bottom:-2px}.amt{border-radius:var(--r-tile);border:1px solid var(--glass-edge);background:#00000038;gap:4px;padding:10px 12px;transition:border-color .15s;display:grid}.amt:focus-within{border-color:#f5b94299}.amt.ro{background:#ffffff0a}.amt-top{color:var(--ink-2);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.amt-top label{font-weight:800}.amt .bal{align-items:center;gap:6px;display:inline-flex}.amt .bal .num{color:var(--milk);font-size:12px}.amt .max{border-radius:var(--r-pill);color:var(--sun);background:#f5b94224;padding:2px 8px;font-size:11px;font-weight:800;transition:background-color .15s}.amt .max:hover{background:#f5b94242}.amt-main{align-items:center;gap:10px;display:flex}.amt-main input{width:100%;min-width:0;color:var(--milk);background:0 0;border:0;outline:0;flex:1;padding:2px 0;font-size:22px;font-weight:700}.amt-main input::placeholder{color:var(--ink-3)}.hud .amt-main input:focus-visible{outline:none}.amt-usd{color:var(--ink-3);font-size:12px}.tk{font-family:var(--display);color:#10201a;border-radius:50%;flex:none;place-items:center;font-weight:700;display:inline-grid;box-shadow:inset 0 0 0 2px #ffffff47,inset 0 -6px 10px #00000029}.tk-pick{border-radius:var(--r-pill);background:#ffffff1a;flex:none;align-items:center;gap:6px;padding:5px 10px 5px 5px;font-size:14px;font-weight:800;transition:background-color .15s;display:inline-flex;position:relative}.tk-pick:not(.fixed):hover{background:#ffffff29}.tk-pick select{appearance:none;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;margin-right:-20px;padding:0 20px 0 0}.tk-pick select option{color:#10201a}.tk-pick svg{pointer-events:none;color:var(--ink-2)}.swap{gap:6px;display:grid;position:relative}.flip{z-index:1;width:38px;height:38px;color:var(--sun-ink);background:var(--sun);transition:transform .2s var(--ease), filter .15s;border-radius:50%;justify-self:center;place-items:center;margin:-17px 0;display:grid;box-shadow:0 0 0 4px #183022}.flip svg{transform:rotate(90deg)}.flip:hover{filter:brightness(1.06);transform:rotate(180deg)}.slip{color:var(--ink-2);justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.slip .tabs button{font-family:var(--display);padding:5px 12px;font-size:12px;font-weight:500}.kv{border-radius:var(--r-tile);background:#ffffff0a;gap:0;margin:0;padding:4px 12px;display:grid}.kv>div{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:baseline;gap:12px;padding:7px 0;font-size:13px;display:flex}.kv>div:last-child{border-bottom:0}.kv dt{color:var(--ink-2)}.kv dd{text-align:right;margin:0;font-size:12px}.city .buy.wide{width:100%;min-height:48px;font-size:15px}.outcome{color:var(--milk);animation:rise .2s var(--ease);background:#7be4951f;border:1px solid #7be49547;border-radius:12px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.outcome svg{color:var(--ready)}.outcome.err{background:#ff6b6b1f;border-color:#ff6b6b52}.outcome.err svg{color:var(--danger)}.vaults{gap:8px;display:grid}.vault{border-radius:var(--r-tile);text-align:left;width:100%;transition:transform .15s var(--ease), background-color .15s, box-shadow .15s, border-color .15s;background:#ffffff0d;border:1px solid #ffffff0d;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;padding:10px 14px 10px 10px;display:grid}.hud .vault:hover{box-shadow:var(--lift);background:#ffffff17;transform:translateY(-1px)}.vault:active{box-shadow:none;transform:none}.vault.own_pool{background:linear-gradient(100deg,#f5b9421f,#ffffff0a 60%);border-color:#f5b9424d}.vault .vt{gap:1px;min-width:0;display:grid}.vault .t{font-weight:800}.vault .d,.vault-head .d{color:var(--ink-2);font-size:12px}.vault .d.mine{color:var(--ready);font-size:11px}.vault .apy{justify-items:end;line-height:1.1;display:grid}.vault .apy .num{color:var(--ready);font-size:18px;font-weight:700}.vault.own_pool .apy .num{color:var(--sun)}.vault .apy small{letter-spacing:.08em;color:var(--ink-3);font-size:10px;font-weight:800}.vault-head{align-items:center;gap:12px;display:flex}.hud .vault-title{text-transform:none;letter-spacing:0;color:var(--milk);margin-bottom:3px;font-size:15px;font-weight:700}.backlink{border-radius:var(--r-pill);color:var(--ink-2);align-self:start;align-items:center;gap:4px;padding:4px 10px 4px 4px;font-size:13px;font-weight:800;transition:color .15s,background-color .15s;display:inline-flex}.backlink:hover{color:var(--milk);background:#ffffff12}.meter{gap:4px;display:grid}.meter-bar{background:#ffffff1a;border-radius:8px;height:8px;overflow:hidden}.meter-bar i{background:var(--sun);border-radius:0 4px 4px 0;height:100%;display:block}.meter-cap{color:var(--ink-2);justify-content:space-between;font-size:12px;display:flex}.meter-cap .num{color:var(--milk);font-size:11px}.city-foot{border-top:1px solid #ffffff14;gap:6px;padding-top:10px;display:grid}.city .hint{font-family:var(--body);color:var(--ink-3);padding:0;font-size:12px;animation:none;display:block}.city-foot .hint svg{vertical-align:-2px;color:var(--sun);display:inline-block}.city-foot .reset{border-radius:var(--r-pill);color:var(--ink-2);border:1px solid var(--glass-edge);justify-self:start;padding:5px 12px;font-size:12px;font-weight:800;transition:color .15s,background-color .15s}.city-foot .reset:hover{color:var(--milk);background:#ffffff12}@media (pointer:coarse),(max-width:720px){.panel.sheet.city{width:auto;max-height:88vh}.city .stats{grid-template-columns:repeat(2,1fr)}.city-nav button{min-height:44px}.amt-main input{font-size:20px}}@media (pointer:coarse) and (orientation:landscape),(max-height:520px) and (pointer:coarse){.panel.sheet.city{width:min(480px,66vw);max-height:none}}@font-face{font-family:Nunito;font-style:normal;font-weight:500 800;font-display:swap;src:url(/fonts/Nunito-cyrillic-ext.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-weight:500 800;font-display:swap;src:url(/fonts/Nunito-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:500 800;font-display:swap;src:url(/fonts/Nunito-latin-ext.woff2)format("woff2");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;font-style:normal;font-weight:500 800;font-display:swap;src:url(/fonts/Nunito-latin.woff2)format("woff2");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:Unbounded;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/Unbounded-cyrillic-ext.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Unbounded;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/Unbounded-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Unbounded;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/Unbounded-latin-ext.woff2)format("woff2");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:Unbounded;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/Unbounded-latin.woff2)format("woff2");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{--moss:#0f2418;--milk:#f2f6ee;--ink-2:#f2f6eeb8;--ink-3:#f2f6ee9e;--lift:0 6px 18px #00000047;--sun:#f5b942;--sun-ink:#2a1b00;--ready:#7be495;--grow:#8ec9ff;--clash:#e85d9e;--danger:#ff6b6b;--glass:#0f2418b8;--glass-edge:#ffffff24;--glass-hi:#ffffff0f;--shadow:0 10px 30px #00000059;--r-pill:999px;--r-panel:22px;--r-tile:14px;--display:"Unbounded", "Arial Black", "Segoe UI", sans-serif;--body:"Nunito", "Segoe UI", system-ui, sans-serif;--ease:cubic-bezier(.2, .8, .2, 1);--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){:root{--glass:#1b3324;--glass-edge:#ffffff0f}}@media (prefers-reduced-motion:reduce){.hud *{transition:none!important;animation:none!important}}.hud{pointer-events:none;color:var(--milk);font-family:var(--body);padding:calc(16px + var(--safe-t)) 16px calc(16px + var(--safe-b));grid-template:"tl tr""mid mid"1fr"bl br"/1fr 1fr;gap:12px;font-size:15px;line-height:1.4;display:grid;position:fixed;inset:0}:where(.hud) button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.hud button:focus-visible,.hud [tabindex]:focus-visible,.hud select:focus-visible,.hud input:focus-visible{outline:2px solid var(--sun);outline-offset:2px}.hud svg{flex:none;display:block}.hud input,.hud select{accent-color:var(--sun)}.hud h2{font-family:var(--display);margin:0;font-size:16px;font-weight:700}.hud h3{font-family:var(--display);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);margin:0;font-size:12px;font-weight:500}.hud p{margin:0}.glass{background:var(--glass);-webkit-backdrop-filter:blur(18px)saturate(140%);backdrop-filter:blur(18px)saturate(140%);border:1px solid var(--glass-edge);box-shadow:var(--shadow), inset 0 1px 0 var(--glass-hi)}.num{font-family:var(--display);font-variant-numeric:tabular-nums}.identity{pointer-events:auto;border-radius:var(--r-pill);grid-area:tl;place-self:start;align-items:center;gap:10px;padding:6px 14px 6px 6px;display:flex}.ring{width:44px;height:44px;position:relative}.ring svg{width:44px;height:44px;transform:rotate(-90deg)}.ring .lvl{font-family:var(--display);place-items:center;font-size:14px;font-weight:700;display:grid;position:absolute;inset:0}.identity .name{font-size:14px;font-weight:800;line-height:1.1}.identity .sub{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:12px}.resources{pointer-events:auto;grid-area:tr;place-self:start end;align-items:center;gap:8px;display:flex}.chip{border-radius:var(--r-pill);font-family:var(--display);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:8px;padding:8px 14px 8px 10px;font-size:14px;font-weight:500;display:inline-flex}.chip .ic{border-radius:50%;flex:none;width:18px;height:18px;display:inline-block}.chip.credits .ic{background:radial-gradient(circle at 35% 35%, #ffe9a8, var(--sun) 60%, #b97f14)}.chip.clash .ic{background:radial-gradient(circle at 35% 35%, #ffb7da, var(--clash) 60%, #8e2a5b)}.chip.wallet{font-family:var(--body);color:var(--ink-2);font-weight:700}.chip.wallet .ic{background:var(--ready);width:8px;height:8px;box-shadow:0 0 0 3px #7be49540}.mid{grid-area:mid;align-content:end;justify-items:center;gap:10px;display:grid}.toast{border-radius:var(--r-pill);font-family:var(--display);color:var(--ready);animation:toast 1.8s var(--ease) forwards;padding:6px 14px;font-size:13px}.toast.err{color:var(--danger)}@keyframes toast{0%{opacity:0;transform:translateY(6px)}12%,80%{opacity:1;transform:none}to{opacity:0}}.context{pointer-events:auto;border-radius:var(--r-pill);background:var(--sun);min-height:52px;color:var(--sun-ink);text-align:left;animation:rise .2s var(--ease);align-items:center;gap:12px;padding:10px 18px 10px 10px;font-size:16px;font-weight:800;display:inline-flex;position:relative;box-shadow:0 12px 34px #f5b94259,0 2px #b97f14}.context:disabled{cursor:default;color:#3a2a06;background:#d9c27a;box-shadow:0 8px 24px #00000040,0 2px #a88f3f}.context:disabled .alt{opacity:.9}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.context .ico{background:#0000001f;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.context .alt{opacity:.75;font-size:12px;font-weight:700;display:block}.context .key{font-family:var(--display);background:#00000026;border-radius:6px;padding:3px 7px;font-size:11px}.hint{pointer-events:auto;border-radius:var(--r-pill);font-family:var(--display);color:var(--milk);animation:rise .2s var(--ease);align-items:center;gap:12px;padding:8px 10px 8px 16px;font-size:13px;display:inline-flex}.btn.ghost{pointer-events:auto;opacity:.85;font-size:12px}.goods-list{gap:6px;display:grid}.goods{background:#ffffff0d;border-radius:12px;align-items:center;gap:8px;padding:6px 8px;font-size:13px;display:flex}.goods .t{flex:1;font-weight:700}.goods .em{font-size:20px}.goods .price{padding:5px 9px;font-size:12px}.need{margin-right:8px;display:inline-block}.need.short{color:var(--danger)}.picker{pointer-events:auto;animation:rise .2s var(--ease);border-radius:18px;gap:8px;padding:8px;display:flex}.picker button{background:#ffffff0f;border-radius:12px;justify-items:center;gap:2px;width:64px;padding:6px 4px;font-size:11px;font-weight:700;display:grid}.picker button[aria-pressed=true]{outline:2px solid var(--sun)}.picker .em{font-size:22px}.move{pointer-events:auto;grid-area:bl;place-self:end start}.jump{pointer-events:auto;width:64px;height:64px;color:var(--milk);touch-action:manipulation;border-radius:50%;grid-area:bl;place-self:end start;place-items:center;margin:0 0 24px 136px;display:grid}.jump:active{transform:scale(.94)}.stick{touch-action:none;-webkit-user-select:none;user-select:none;border-radius:50%;width:120px;height:120px;position:relative}.stick i{pointer-events:none;background:#ffffff38;border:1px solid #ffffff4d;border-radius:50%;width:52px;height:52px;margin:-26px;position:absolute;top:50%;left:50%}.tools{pointer-events:auto;grid-area:br;place-self:end;gap:8px;margin-bottom:14px;display:flex}.tool{width:52px;height:52px;color:var(--milk);transition:transform .15s var(--ease), background-color .15s;border-radius:16px;place-items:center;font-size:20px;display:grid;position:relative}.tool:hover{background-color:#1e3c2acc;transform:translateY(-2px)}.tool:active{transform:translateY(0)}.tool small{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);white-space:nowrap;font-size:10px;font-weight:800;position:absolute;bottom:-14px}.tool kbd{font-family:var(--display);border:1px solid var(--glass-edge);color:var(--ink-2);background:#0000008c;border-radius:6px;padding:2px 6px;font-size:10px;position:absolute;top:-7px;left:-7px}.tool .badge{background:var(--danger);color:#fff;min-width:20px;height:20px;font-family:var(--display);border-radius:999px;place-items:center;padding:0 5px;font-size:11px;display:grid;position:absolute;top:-6px;right:-6px}.tool[aria-pressed=true]{outline:2px solid var(--sun)}.panel{z-index:3;pointer-events:auto;border-radius:var(--r-panel);animation:rise .28s var(--ease);flex-direction:column;gap:14px;max-height:calc(100vh - 100px);padding:18px;display:flex;position:fixed}.panel header{justify-content:space-between;align-items:center;gap:12px;display:flex}.panel .body{flex-direction:column;gap:14px;min-height:0;display:flex;overflow:auto}.drawer{width:300px;top:76px;right:16px}.sheet{width:min(560px,100vw - 32px);animation:none;top:50%;left:50%;transform:translate(-50%,-50%)}.sheet.pay{z-index:4;width:min(400px,100vw - 32px)}.scrim{z-index:2;pointer-events:auto;background:#050c0859;position:fixed;inset:0}.close{width:34px;height:34px;transition:background-color .15s, transform .15s var(--ease);background:#ffffff14;border-radius:50%;flex:none;place-items:center;display:grid}.close:hover{background:#ffffff29}.close:active{transform:scale(.94)}.grip{background:#ffffff40;border-radius:5px;width:44px;height:5px;margin:-6px auto 0;display:none}.tiles{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:10px;display:grid}.tile{aspect-ratio:1;border-radius:var(--r-tile);text-align:center;background:#ffffff0f;border:1px solid #ffffff14;grid-template-rows:1fr auto;gap:2px;padding:8px;font-size:12px;font-weight:700;display:grid;position:relative}.tile .em{align-self:center;font-size:26px}.tile .n{z-index:1;font-family:var(--display);background:#00000059;border-radius:6px;padding:1px 6px;font-size:11px;position:absolute;top:6px;right:6px}.tile[aria-pressed=true]{outline:2px solid var(--sun);background:#f5b9421f}.tile.excl:before{content:"★";color:var(--clash);font-size:12px;position:absolute;top:4px;left:8px}.hint{color:var(--ink-3);font-size:12px}.tabs{border-radius:var(--r-pill);background:#00000040;align-self:start;gap:4px;padding:3px;display:inline-flex}.tabs button{border-radius:var(--r-pill);color:var(--ink-2);padding:6px 14px;font-size:13px;font-weight:800;transition:background-color .15s,color .15s}.tabs button:hover{color:var(--milk);background:#ffffff0f}.tabs button[aria-selected=true]{color:var(--milk);background:#ffffff1f}.tabs button[aria-selected=true].c{color:var(--clash)}.rows{gap:8px;display:grid}.row{border-radius:var(--r-tile);background:#ffffff0d;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:8px 10px;display:grid}.row .em{text-align:center;width:44px;height:44px;color:var(--sun);background:#ffffff0f;border-radius:12px;place-items:center;font-size:24px;display:grid}.item-icon{vertical-align:middle;background-repeat:no-repeat;flex:none;width:1.5em;height:1.5em;display:inline-block;position:relative}.need .item-icon{margin:-2px 1px 0 0}.context .ico .item-icon{width:30px;height:30px}.ii-badge{background:var(--sun);min-width:1.2em;color:var(--sun-ink);font-family:var(--display);text-align:center;border-radius:.4em;padding:0 .2em;font-size:max(9px,.42em);line-height:1.45;position:absolute;bottom:-.1em;right:-.15em}.row .t{font-weight:800}.row .d{color:var(--ink-2);font-size:12px}.hud .price{font-family:var(--display);border-radius:var(--r-pill);background:var(--sun);color:var(--sun-ink);white-space:nowrap;transition:transform .15s var(--ease), filter .15s, box-shadow .15s;padding:8px 12px;font-size:13px}.hud .price.c{background:var(--clash);color:#fff}.hud .price:hover{filter:brightness(1.06);box-shadow:var(--lift);transform:translateY(-1px)}.hud .price:active{filter:brightness(.96);box-shadow:none;transform:translateY(0)}.hud .price:disabled{opacity:.35;cursor:not-allowed;filter:none;box-shadow:none;transform:none}.hud select.price{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232a1b00' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:14px;border:0;padding-right:28px}.foot{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:10px;font-size:12px;display:flex}.stepper{align-items:center;gap:2px;display:inline-flex}.stepper button{background:#ffffff14;border-radius:8px;width:30px;height:30px;font-weight:800;transition:background-color .15s}.stepper button:hover{background:#ffffff29}.stepper output{text-align:center;width:36px;font-family:var(--display);font-size:13px}.amount{font-family:var(--display);color:var(--clash);font-variant-numeric:tabular-nums;font-size:28px;font-weight:700;line-height:1.1}.amount small{color:var(--ink-2);font-size:13px;font-family:var(--body);margin-left:6px;font-weight:700}.split{grid-template-columns:1fr 1fr;gap:8px;font-size:12px;display:grid}.split div{background:#ffffff0f;border-radius:10px;padding:8px 10px}.split b{font-family:var(--display);font-size:13px;font-weight:500;display:block}.split .bar{border-radius:6px;grid-column:1/-1;height:6px;display:flex;overflow:hidden}.split .bar i{height:100%;display:block}.warn{background:#ff6b6b1f;border:1px solid #ff6b6b4d;border-radius:12px;align-items:start;gap:10px;padding:10px 12px;font-size:13px;display:flex}.warn b{color:var(--danger)}.actions{gap:8px;display:flex}.btn{border-radius:var(--r-pill);text-align:center;transition:transform .15s var(--ease), filter .15s, background-color .15s, box-shadow .15s;background:#ffffff14;flex:1;padding:12px 16px;font-size:14px;font-weight:800}.btn:hover{background:#ffffff24;transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn.primary:hover,.btn.sun:hover{filter:brightness(1.06);box-shadow:var(--lift)}.btn.primary{background:var(--clash);color:#fff;box-shadow:0 8px 24px #e85d9e59}.btn.sun{background:var(--sun);color:var(--sun-ink)}.btn:disabled{opacity:.5;cursor:not-allowed}.ttl{color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:12px}.error{color:var(--danger);font-size:13px}.load{background:#ffffff14;border-radius:999px;align-items:center;height:26px;display:grid;position:relative;overflow:hidden}.load-bar{background:linear-gradient(90deg, var(--ready), #b8f0c8);transition:width .3s var(--ease);border-radius:999px;position:absolute;inset:0 auto 0 0}.load-bar.indeterminate{width:35%;animation:1.4s ease-in-out infinite sweep}@keyframes sweep{0%{transform:translate(-100%)}to{transform:translate(300%)}}.load-text{text-align:center;font-family:var(--display);color:var(--moss);mix-blend-mode:normal;text-shadow:0 0 6px #fff9;font-size:12px;position:relative}.load-bar.indeterminate+.load-text{color:var(--milk);text-shadow:none}.shop-card{grid-template-columns:44px 1fr auto}.shop-card .tag{font-family:var(--display);font-variant-numeric:tabular-nums;margin-top:4px;font-size:12px;display:inline-block}.tag.gold{color:var(--sun)}.tag.pink,.star,.pink-text{color:var(--clash)}.buy{border-radius:var(--r-pill);white-space:nowrap;min-width:108px;padding:10px 14px;font-size:14px;font-weight:800}.buy.gold{background:var(--sun);color:var(--sun-ink)}.buy.pink{background:var(--clash);color:#fff}.buy{transition:transform .15s var(--ease), filter .15s, box-shadow .15s}.buy:hover{filter:brightness(1.06);box-shadow:var(--lift);transform:translateY(-1px)}.buy:active{box-shadow:none;transform:translateY(0)}.buy:disabled{opacity:.4;cursor:not-allowed;filter:none;box-shadow:none;transform:none}.foot-right{text-align:right;margin-left:auto}.dev{border-radius:var(--r-tile);border:1px dashed var(--glass-edge);background:#ffffff0d;gap:8px;padding:12px;display:grid}.dev-row{align-items:center;gap:10px;font-size:13px;display:flex}.dev-row input[type=range]{flex:1}.dev-row input[type=number]{border:1px solid var(--glass-edge);width:70px;color:var(--milk);font:inherit;background:#0000004d;border-radius:8px;padding:4px 6px}.dev-row input[type=checkbox]{width:18px;height:18px}.dev-buttons{flex-wrap:wrap;gap:6px;display:flex}.dev-buttons .btn{flex:none;padding:8px 12px;font-size:13px}.welcome{pointer-events:auto;border-radius:var(--r-panel);grid-area:mid;place-self:center;gap:14px;width:min(420px,100vw - 32px);padding:24px;display:grid}.welcome h1{font-family:var(--display);margin:0;font-size:26px}.welcome p{color:var(--ink-2)}.wallets{gap:6px;display:grid}.wallets button{text-align:left;background:#ffffff0f;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;font-weight:700;display:flex}.wallets button:hover{background:#ffffff1a}.wallets img{border-radius:6px;width:22px;height:22px}.wallets .k{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;margin-left:auto;font-size:11px}.menu-list{gap:8px;display:grid}.menu-list>button{text-align:left;background:#ffffff0f;border-radius:12px;padding:12px 14px;font-weight:700}@media (pointer:coarse),(max-width:720px){.hud{padding:calc(10px + var(--safe-t)) 12px calc(12px + var(--safe-b));gap:8px}.identity{gap:0;padding:3px}.identity .name,.identity .sub{display:none}.ring,.ring svg{width:40px;height:40px}.chip{padding:6px 12px 6px 8px;font-size:13px}.chip.wallet{display:none}.context{min-height:56px}.context .key,.tool kbd,.tool small{display:none}.tools{flex-direction:column;gap:10px;margin-bottom:0}.tool{background-color:#0f2418d1;border-radius:14px;width:48px;height:48px}.tool svg{width:24px;height:24px}.shop-card{grid-template-columns:36px 1fr auto;gap:8px}.buy{min-width:0;padding:10px 12px}.foot-right{text-align:left;flex-basis:100%}.panel{width:auto;max-height:72vh;padding-bottom:calc(18px + var(--safe-b));animation:slide .28s var(--ease);border-radius:28px 28px 0 0;inset:auto 0 0;transform:none}.drawer{max-height:58vh}.sheet.pay{max-height:80vh}.grip{display:block}@keyframes slide{0%{transform:translateY(110%)}to{transform:none}}}@media (pointer:coarse) and (orientation:landscape),(max-height:520px) and (pointer:coarse){.hud{padding:calc(8px + var(--safe-t)) 14px calc(8px + var(--safe-b))}.ring,.ring svg{width:36px;height:36px}.ring .lvl{font-size:12px}.tools{flex-direction:row;gap:8px}.tool{border-radius:12px;width:44px;height:44px}.tool svg{width:22px;height:22px}.stick{width:96px;height:96px}.stick i{width:44px;height:44px;margin:-22px}.context{min-height:48px;padding:8px 14px 8px 8px}.panel{border-radius:var(--r-panel);width:min(440px,62vw);max-height:none;animation:rise .28s var(--ease);padding-bottom:18px;inset:10px 12px 10px auto}.drawer,.sheet,.sheet.pay{width:min(440px,62vw);max-height:none}.sheet.pay{width:min(360px,56vw)}.grip{display:none}}.sheet.map{width:min(520px,100vw - 32px)}.map-grid{aspect-ratio:1;border-radius:10px;gap:2px;width:100%;display:grid;overflow:hidden}.map-grid .cell{color:#fff;text-shadow:0 0 3px #000;background:#6a7b6a;justify-content:center;align-items:center;font-size:11px;display:flex}.map-grid .cell.fog{opacity:.9;background:#1f261f}.map-grid .cell.me{outline-offset:-2px;outline:2px solid #ffd166}.hint.legend{flex-wrap:wrap;gap:6px 12px;display:flex}.hint.legend i{vertical-align:middle;border-radius:2px;width:10px;height:10px;display:inline-block}.sheet.journal{width:min(520px,100vw - 32px)}.price.done{opacity:.7}.curtain{z-index:40;color:var(--milk);font-family:var(--display);letter-spacing:.04em;opacity:0;pointer-events:none;transition:opacity .35s var(--ease);background:#0b1410;place-items:center;font-size:15px;display:grid;position:fixed;inset:0}.curtain.is-shown{opacity:1;pointer-events:auto}.gpu-warn{pointer-events:auto;max-width:min(620px,100vw - 32px);color:var(--milk);border-color:#ff6b6b73;border-radius:16px;align-items:center;gap:10px;padding:10px 10px 10px 14px;font-size:13px;line-height:1.35;display:flex}.gpu-warn>svg{color:var(--danger)}.gpu-warn p{flex:1;margin:0}.gpu-warn .btn{white-space:nowrap;flex:none;padding:8px 14px;font-size:13px}.gpu-warn.compact{text-align:left;max-width:none;margin-top:10px}.shop-card .lack{color:var(--danger);margin-top:2px;font-size:12px;font-weight:700}.hud .price.quiet{color:var(--ink-2);font-family:var(--body);background:#ffffff14;font-weight:800}.hud .price.quiet:hover{color:var(--milk);background:#ff6b6b29}.goods .pending{border-radius:var(--r-pill);color:var(--ink-3);white-space:nowrap;border:1px dashed #ffffff29;padding:5px 10px;font-size:12px}.btn.ghost.confirm{color:var(--danger);background:#ff6b6b24}.no-wallet{gap:10px;display:grid}.no-wallet .install{flex-wrap:wrap;gap:8px;display:flex}.no-wallet .install a{border-radius:var(--r-pill);color:var(--milk);background:#ffffff14;padding:6px 12px;font-size:13px;font-weight:800;text-decoration:none}.no-wallet .install a:hover{background:#ffffff29}.toast.big{color:var(--milk);animation:toast 7s var(--ease) forwards;align-items:center;gap:10px;padding:10px 18px;font-size:15px;display:inline-flex}.toast.big svg{color:var(--sun)}.toast.levelup{border-color:var(--sun);box-shadow:0 12px 34px #f5b94240}.row.sound .d{flex-direction:column;gap:4px;display:flex}.row.sound label{grid-template-columns:56px 1fr 44px;align-items:center;gap:8px;display:grid}.row.sound input[type=range]{width:100%;min-width:90px}.row.sound label span{text-align:right;font-variant-numeric:tabular-nums}.tutorial{pointer-events:auto;top:calc(76px + var(--safe-t));border-radius:var(--r-tile);width:min(360px,100vw - 32px);animation:rise .25s var(--ease);flex-direction:column;gap:8px;padding:12px 14px;font-size:13px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.tutorial header{font-family:var(--display);align-items:center;gap:8px;display:flex}.tutorial header svg{color:var(--sun)}.tutorial header b{flex:1}.tutorial .skip{font:inherit;color:var(--ink-2);cursor:pointer;background:0 0;border:0;padding:2px 4px;font-size:12px}.tutorial ol{color:var(--ink-2);flex-wrap:wrap;gap:4px 10px;margin:0;padding:0;font-size:12px;list-style:none;display:flex}.tutorial ol li{align-items:center;gap:4px;display:inline-flex}.tutorial ol li.done{color:var(--ready)}.tutorial ol li.now{color:var(--milk);font-weight:800}.tutorial ol li svg{width:14px;height:14px}.tutorial ol .dot{opacity:.5;background:currentColor;border-radius:50%;width:8px;height:8px}.tutorial ol li.now .dot{opacity:1;background:var(--sun)}.tutorial p{margin:0}.tutorial p kbd{font-family:var(--display);background:#ffffff1f;border-radius:6px;margin-left:6px;padding:2px 6px;font-size:11px}.tutorial .timer{color:var(--sun);font-family:var(--display)}.curtain .tip{color:var(--ink-2);text-align:center;max-width:420px;margin-top:10px;font-size:13px;display:block}.hud .pulse{animation:pulse 1.4s var(--ease) infinite}@keyframes pulse{0%,to{box-shadow:0 0 #f5b942bf}60%{box-shadow:0 0 0 12px #f5b94200}}.curtain:before{content:"";border:3px solid #ffffff2e;border-top-color:var(--sun);border-radius:50%;width:28px;height:28px;margin:0 auto 14px;animation:.9s linear infinite spin;display:block}@keyframes spin{to{transform:rotate(360deg)}}html,body,#root{color:#f2f6ee;background:#0b1a12;height:100%;margin:0}#godot-canvas{outline:none;width:100%;height:100%;display:block;position:fixed;inset:0}
