:root{--bg:#e9e6df;--bg-2:#f0ede5;--surface:#fdfcf5;--surface-2:#f5f2ea;--divider:#dedbd2;--ink:#3d4150;--ink-soft:#6c7589;--ink-faint:#9aa0ad;--accent:#5b8fd6;--accent-ink:#2f5b97;--go:#8fb573;--go-ink:#4f7a3b;--danger:#d98a72;--agent-0:#e27d6a;--agent-1:#8fb573;--agent-2:#6e9bd1;--agent-3:#e8b85c;--agent-4:#a98ac4;--agent-5:#5fb3a8;--r:16px;--r-sm:11px;--shadow:0 10px 30px #3d415024;--shadow-sm:0 3px 12px #3d41501a;--ring:0 0 0 3px #5b8fd64d;--font:"Segoe UI", system-ui, -apple-system, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);width:100%;height:100%;color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;-webkit-user-select:none;user-select:none;touch-action:manipulation;overflow:hidden}#canvas{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.screen{display:none}body[data-screen=boot] #boot,body[data-screen=menu] #screen-menu,body[data-screen=maps] #screen-maps,body[data-screen=gen] #screen-gen,body[data-screen=game] #hud{display:block}#boot,#screen-menu,#screen-maps,#screen-gen{background:radial-gradient(120% 90% at 50% -10%, var(--surface) 0%, var(--bg-2) 55%, var(--bg) 100%);display:none;position:absolute;inset:0}body[data-screen=boot] #boot,body[data-screen=menu] #screen-menu,body[data-screen=maps] #screen-maps,body[data-screen=gen] #screen-gen{display:flex}.btn{appearance:none;border:1px solid var(--divider);background:var(--surface);color:var(--ink);border-radius:var(--r-sm);cursor:pointer;box-shadow:var(--shadow-sm);white-space:nowrap;padding:11px 20px;font-family:inherit;font-size:15px;font-weight:600;transition:transform .12s,box-shadow .12s,background .12s,border-color .12s}.btn:hover{box-shadow:var(--shadow);border-color:var(--ink-faint);transform:translateY(-1px)}.btn:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.btn:focus-visible{box-shadow:var(--ring);outline:none}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-ink);border-color:var(--accent-ink)}.btn-ghost{box-shadow:none;color:var(--ink-soft);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--surface-2);border-color:var(--divider);box-shadow:none}.btn-small{padding:8px 14px;font-size:13px}#boot{flex-direction:column;justify-content:center;align-items:center;gap:14px}.boot-mark{letter-spacing:.22em;color:var(--ink);opacity:.85;font-size:clamp(22px,5vw,40px);font-weight:800}#boot-status{color:var(--ink-soft);font-size:14px}#screen-menu{flex-direction:column;justify-content:center;align-items:center;gap:22px}.menu-card{text-align:center;padding:8px}.wordmark{flex-direction:column;align-items:center;line-height:1;display:inline-flex}.wordmark-the{letter-spacing:.55em;color:var(--ink-soft);margin-bottom:.35em;margin-right:-.55em;font-size:clamp(14px,2.4vw,20px);font-weight:700}.wordmark-main{letter-spacing:.04em;color:var(--ink);margin-right:-.04em;font-size:clamp(40px,9vw,86px);font-weight:800}.wordmark-rule{background:linear-gradient(90deg, var(--agent-0), var(--agent-3), var(--agent-1), var(--agent-2), var(--agent-4));opacity:.8;border-radius:2px;width:64%;height:3px;margin-top:.5em}.tagline{color:var(--ink-soft);margin-top:4px;font-size:clamp(14px,2vw,17px)}.menu-buttons{flex-direction:column;gap:12px;width:min(280px,80vw);margin:8px auto 0;display:flex}.menu-buttons .btn{padding:14px 20px;font-size:17px}.hint-panel{bottom:calc(28px + env(safe-area-inset-bottom));background:var(--surface);border:1px solid var(--divider);border-radius:var(--r);width:min(440px,90vw);box-shadow:var(--shadow);text-align:left;padding:18px 22px;position:absolute;left:50%;transform:translate(-50%)}.hint-panel b{margin-bottom:8px;font-size:15px;display:block}.hint-panel ul{color:var(--ink-soft);margin:0 0 14px 18px;font-size:13.5px;line-height:1.7}.seed-input{box-sizing:border-box;width:100%;font:inherit;letter-spacing:.3px;color:var(--ink);background:var(--bg);border:1px solid var(--divider);border-radius:10px;margin-bottom:10px;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.seed-input:focus{border-color:var(--accent);outline:none}.seed-error{min-height:16px;color:var(--danger);margin-bottom:8px;font-size:12.5px}.seed-actions{gap:8px;display:flex}#screen-maps{padding:max(5vh, env(safe-area-inset-top)) max(4vw, env(safe-area-inset-right)) max(5vh, env(safe-area-inset-bottom)) max(4vw, env(safe-area-inset-left));flex-direction:column;justify-content:flex-start;align-items:center;overflow-y:auto}.picker{width:min(840px,96vw)}.picker-head{align-items:center;gap:16px;margin-bottom:24px;display:flex}.picker-head h2{letter-spacing:.01em;font-size:clamp(20px,4vw,28px);font-weight:800}.picker-spacer{flex:1}.map-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;display:grid}.map-card{text-align:left;background:var(--surface);border:1px solid var(--divider);border-radius:var(--r);box-shadow:var(--shadow-sm);cursor:pointer;flex-direction:column;padding:8px;transition:transform .14s,box-shadow .14s,border-color .14s;display:flex}.map-card:hover{box-shadow:var(--shadow);border-color:var(--accent);transform:translateY(-3px)}.map-card:focus-visible{box-shadow:var(--ring);outline:none}.map-card .map-emoji{margin-bottom:4px;font-size:30px}.map-card .map-name{font-size:18px;font-weight:700}.map-card .map-desc{color:var(--ink-soft);font-size:13px;line-height:1.5}.map-preview{aspect-ratio:4/3;background:radial-gradient(120% 120% at 50% 0%, var(--surface-2) 0%, var(--bg) 100%);border:1px solid var(--divider);border-radius:10px;width:100%;display:block}.map-preview.is-loading{opacity:.5}.map-meta{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:12px}#screen-gen{padding:max(4vh, env(safe-area-inset-top)) max(4vw, env(safe-area-inset-right)) max(5vh, env(safe-area-inset-bottom)) max(4vw, env(safe-area-inset-left));flex-direction:column;justify-content:flex-start;align-items:center;overflow-y:auto}.gen{width:min(960px,96vw)}.gen-panel{background:var(--surface);border:1px solid var(--divider);border-radius:var(--r);box-shadow:var(--shadow-sm);margin-bottom:18px;padding:20px}.gen-hint{color:var(--ink-soft);margin:0 0 16px;font-size:13px;line-height:1.55}.gen-form{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px 18px;display:grid}.gen-param{align-items:center;gap:8px;display:flex}.gen-param>label{color:var(--ink-soft);flex:1;font-size:13px;font-weight:600}.gen-param input{width:72px;color:var(--ink);background:var(--surface-2);border:1px solid var(--divider);border-radius:var(--r-sm);text-align:right;padding:7px 9px;font-family:inherit;font-size:14px}.gen-param .gen-dash{color:var(--ink-faint)}.gen-param input:focus-visible{border-color:var(--accent);box-shadow:var(--ring);outline:none}.gen-run{border-top:1px solid var(--divider);flex-wrap:wrap;align-items:flex-end;gap:14px;margin-top:20px;padding-top:18px;display:flex}.gen-field{color:var(--ink-soft);flex-direction:column;gap:5px;font-size:12px;font-weight:600;display:flex}.gen-field input{width:92px;color:var(--ink);background:var(--surface-2);border:1px solid var(--divider);border-radius:var(--r-sm);padding:9px 10px;font-family:inherit;font-size:14px}.gen-field input:focus-visible{border-color:var(--accent);box-shadow:var(--ring);outline:none}.gen-run #gen-run-btn{margin-left:auto}.gen-progress{margin-top:18px}.gen-bar{background:var(--surface-2);border:1px solid var(--divider);border-radius:999px;height:8px;overflow:hidden}.gen-bar-fill{background:var(--accent);width:0%;height:100%;transition:width .1s linear}.gen-progress-text{color:var(--ink-soft);margin-top:8px;font-size:12px}.gen-playseed{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.gen-playseed #gen-seed-input{min-width:220px;color:var(--ink);background:var(--surface);border:1px solid var(--divider);border-radius:var(--r-sm);flex:1;padding:10px 12px;font-family:Consolas,ui-monospace,monospace;font-size:13px}.gen-playseed #gen-seed-input:focus-visible{border-color:var(--accent);box-shadow:var(--ring);outline:none}.gen-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;display:grid}.gen-card{background:var(--surface);border:1px solid var(--divider);border-radius:var(--r);box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;padding:16px;display:flex;position:relative}.gen-card.is-balanced{border-color:var(--go)}.gen-card-top{align-items:baseline;gap:8px;display:flex}.gen-score{color:var(--ink);font-size:24px;font-weight:800}.gen-badge{background:var(--surface-2);color:var(--ink-soft);border-radius:999px;padding:3px 8px;font-size:11px;font-weight:700}.gen-badge.ok{background:color-mix(in srgb, var(--go) 22%, transparent);color:var(--go-ink)}.gen-meta{color:var(--ink-soft);font-size:12px;line-height:1.5}.gen-seed{color:var(--ink-faint);word-break:break-all;font-family:Consolas,ui-monospace,monospace;font-size:11px;line-height:1.4}.gen-card-actions{gap:8px;margin-top:auto;display:flex}.gen-card-actions .btn{flex:1}.gen-fav{width:40px;padding:0;font-size:16px;line-height:1;flex:none!important}.gen-fav.on{background:var(--accent);border-color:var(--accent);color:#fff}.pause-seed{text-align:left;align-items:center;gap:10px;margin-bottom:16px;display:flex}.pause-seed[hidden]{display:none}.pause-seed-label{color:var(--ink-soft);flex:none;font-size:12px;font-weight:600}.pause-seed-box{background:var(--surface-2);border:1px solid var(--divider);border-radius:var(--r-sm);cursor:pointer;flex:1;min-width:0;padding:8px 10px;overflow:hidden}.pause-seed-text{letter-spacing:0;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-family:Consolas,ui-monospace,monospace;font-size:10px;line-height:1.4;display:block;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 36px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 36px),#0000)}#hud{pointer-events:none;position:absolute;inset:0}#hud>*{pointer-events:auto}#top-bar{padding:max(12px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) 12px max(14px, env(safe-area-inset-left));pointer-events:none;align-items:center;gap:12px;display:flex;position:absolute;top:0;left:0;right:0}#top-bar>*{pointer-events:auto}.chip{background:var(--surface);border:1px solid var(--divider);box-shadow:var(--shadow-sm);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:600;display:inline-flex}.chip-sep{background:var(--divider);width:1px;height:16px}.chip-round{color:var(--ink-soft);font-weight:600}.chip-round b{color:var(--ink)}.agent-dot{background:var(--ink-faint);border-radius:50%;flex-shrink:0;width:13px;height:13px;display:inline-block;box-shadow:inset 0 0 0 1px #00000014}#scoreboard{flex-wrap:wrap;flex:1;justify-content:center;align-items:center;gap:8px;min-width:0;display:flex}.player-pill{background:var(--surface);border:1px solid var(--divider);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:7px;padding:6px 12px 6px 9px;font-size:13px;font-weight:600;transition:opacity .2s,border-color .2s,box-shadow .2s;display:inline-flex}.player-pill .agent-dot{width:11px;height:11px}.player-pill .pp-stat{color:var(--ink-soft);align-items:center;gap:3px;display:inline-flex}.player-pill .pp-gold{color:var(--ink);font-weight:700}.pp-line{display:contents}.player-pill.is-current{border-color:var(--accent);box-shadow:var(--ring)}.player-pill.is-eliminated{opacity:.42;filter:grayscale(.6)}.icon-btn{border:1px solid var(--divider);background:var(--surface);width:40px;height:40px;color:var(--ink);cursor:pointer;box-shadow:var(--shadow-sm);border-radius:50%;flex-shrink:0;font-size:18px;transition:transform .12s,box-shadow .12s}.icon-btn:hover{box-shadow:var(--shadow);transform:translateY(-1px)}#purchase-indicator,#toast{z-index:60;white-space:nowrap;box-shadow:var(--shadow-sm);border-radius:999px;padding:9px 18px;font-size:14px;font-weight:600;display:none;position:absolute;top:66px;left:50%;transform:translate(-50%)}#purchase-indicator{border:1px solid var(--accent);color:var(--accent-ink);background:#5b8fd624}#toast{border:1px solid var(--danger);color:#a8513a;background:#f7e6df}#hex-info{bottom:calc(104px + env(safe-area-inset-bottom));left:max(18px, env(safe-area-inset-left));background:var(--surface);border:1px solid var(--divider);border-radius:var(--r);box-shadow:var(--shadow);min-width:180px;padding:14px 18px;font-size:14px;line-height:1.65;display:none;position:absolute}#hex-info b{font-size:15px}#hex-info .hi-row{color:var(--ink-soft)}#hex-info .hi-row .hi-val{color:var(--ink);font-weight:600}#dock{bottom:calc(16px + env(safe-area-inset-bottom));background:var(--surface);border:1px solid var(--divider);box-shadow:var(--shadow);max-width:calc(100vw - 24px - env(safe-area-inset-left) - env(safe-area-inset-right));border-radius:20px;align-items:center;gap:12px;padding:10px;display:flex;position:absolute;left:50%;transform:translate(-50%)}#buy-row{scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;gap:8px;padding:4px 0;display:flex;overflow-x:auto}#buy-row::-webkit-scrollbar{display:none}.buy-btn{scroll-snap-align:start;border:1px solid var(--divider);background:var(--surface-2);border-radius:var(--r-sm);cursor:pointer;flex-direction:column;flex-shrink:0;align-items:stretch;width:64px;height:72px;transition:transform .12s,box-shadow .12s,border-color .12s,background .12s;display:flex;position:relative;overflow:hidden}.buy-icon{flex:1;justify-content:center;align-items:center;min-height:0;display:flex;overflow:hidden}.buy-icon img{object-fit:contain;pointer-events:none;filter:drop-shadow(0 2px 3px #3d41502e);width:100%;height:100%;transform:scale(1.5)}.buy-btn .buy-cost{color:var(--ink);flex:none;justify-content:center;align-items:center;gap:2px;padding-bottom:4px;font-size:12px;font-weight:700;display:flex}.buy-btn .buy-cost:before{content:"◆";color:var(--accent);font-size:9px}.buy-btn:hover{box-shadow:var(--shadow-sm);border-color:var(--ink-faint);transform:translateY(-2px)}.buy-btn.active{border-color:var(--accent);box-shadow:var(--ring);background:#5b8fd629}.buy-btn.unaffordable{opacity:.4;cursor:not-allowed;filter:grayscale(.7)}.buy-btn.unaffordable:hover{box-shadow:none;transform:none}#buy-row.locked{opacity:.4;filter:grayscale(.7);pointer-events:none}.btn-end-turn{background:var(--go);border:1px solid var(--go);color:#fff;border-radius:var(--r-sm);box-shadow:var(--shadow-sm);cursor:pointer;flex-shrink:0;align-self:stretch;padding:14px 22px;font-size:15px;font-weight:700;transition:transform .12s,box-shadow .12s,background .12s}.btn-end-turn:hover{background:var(--go-ink);border-color:var(--go-ink);box-shadow:var(--shadow);transform:translateY(-1px)}#game-over{background:var(--surface);border:1px solid var(--divider);text-align:center;box-shadow:var(--shadow);z-index:20;border-radius:22px;min-width:280px;padding:36px 48px;display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#game-over .go-title{justify-content:center;align-items:center;gap:12px;margin-bottom:6px;font-size:30px;font-weight:800;display:flex}#game-over .go-sub{color:var(--ink-soft);margin-bottom:22px}#game-over .go-buttons{justify-content:center;gap:10px;display:flex}#game-over .agent-dot{width:24px;height:24px}#fps{bottom:calc(8px + env(safe-area-inset-bottom));right:calc(10px + env(safe-area-inset-right));background:var(--surface);border:1px solid var(--divider);color:var(--ink-soft);pointer-events:none;z-index:30;white-space:pre;opacity:.8;border-radius:7px;padding:4px 9px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:11px;font-weight:600;display:none;position:absolute}#turn-controls{bottom:calc(16px + env(safe-area-inset-bottom));left:max(16px, env(safe-area-inset-left));background:var(--surface);border:1px solid var(--divider);box-shadow:var(--shadow);z-index:6;border-radius:18px;gap:6px;padding:6px;display:flex;position:absolute}.turn-ctrl{width:44px;height:44px;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:13px;justify-content:center;align-items:center;transition:background .12s,color .12s,transform .12s;display:inline-flex}.turn-ctrl:hover{background:var(--surface-2);color:var(--ink);transform:translateY(-1px)}.turn-ctrl:active{transform:translateY(0)}.turn-ctrl svg{width:24px;height:24px;display:block}.overlay{z-index:40;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#3d415047;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.overlay[hidden]{display:none}.pause-card{background:var(--surface);border:1px solid var(--divider);width:min(340px,88vw);box-shadow:var(--shadow);text-align:center;border-radius:22px;padding:26px 26px 22px}.pause-card h2{margin-bottom:18px;font-size:24px;font-weight:800}.pause-buttons{flex-direction:column;gap:10px;margin-bottom:18px;display:flex}.setting{color:var(--ink-soft);border-top:1px solid var(--divider);border-bottom:1px solid var(--divider);align-items:center;gap:10px;margin-bottom:16px;padding:12px 4px;font-size:14px;font-weight:600;display:flex}.setting input[type=range]{accent-color:var(--accent);flex:1}.setting-val{text-align:right;min-width:54px;color:var(--ink)}#mute-btn{width:36px;height:36px;font-size:16px}#mute-btn.muted{opacity:.55;color:var(--ink-soft)}.btn-quit{color:var(--danger)}.color-hint{color:var(--ink-soft);margin:-8px 0 18px;font-size:13px}.color-choices{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.color-swatch{background:var(--bg);border:1px solid var(--divider);cursor:pointer;font:inherit;color:var(--ink-soft);border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;font-size:12.5px;font-weight:700;transition:border-color .12s,transform .12s;display:flex}.color-swatch:hover{border-color:var(--accent);transform:translateY(-2px)}.color-swatch .swatch-dot{border-radius:50%;width:34px;height:34px;box-shadow:inset 0 0 0 2px #ffffff8c}.overlay.soundboard{position:fixed}.overlay.soundboard .pause-card{width:min(520px,92vw)}.soundboard-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;max-height:60vh;margin:16px 0;display:grid;overflow-y:auto}.soundboard-grid .btn{justify-content:center;width:100%}@media (width<=680px) and (orientation:portrait){#top-bar{flex-wrap:nowrap;gap:8px}#menu-btn{margin-left:auto}#scoreboard{top:50%;right:max(8px, env(safe-area-inset-right));scrollbar-width:none;z-index:5;flex-flow:column;flex:none;justify-content:center;align-items:stretch;gap:6px;width:auto;max-height:calc(100dvh - 180px);position:fixed;left:auto;overflow-y:auto;transform:translateY(-50%)}#scoreboard::-webkit-scrollbar{display:none}.player-pill{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);box-shadow:var(--shadow-sm);background:#fdfcf5eb;border-radius:9px;flex-direction:column;flex-shrink:0;align-items:center;gap:1px;padding:4px 7px;font-size:11px;display:flex}.player-pill .pp-line{align-items:center;gap:5px;display:flex}.player-pill .agent-dot{width:10px;height:10px}.player-pill .pp-stat{gap:2px}#dock{left:max(10px, env(safe-area-inset-left));right:auto;bottom:calc(10px + env(safe-area-inset-bottom));padding:8px;transform:none}#buy-row{grid-template-columns:repeat(3,auto);grid-auto-rows:1fr;gap:6px;display:grid;overflow:visible}.buy-btn{scroll-snap-align:none;width:50px;height:54px}.buy-btn .buy-cost{padding-bottom:3px;font-size:11px}.btn-end-turn{right:max(10px, env(safe-area-inset-right));bottom:calc(10px + env(safe-area-inset-bottom));z-index:6;padding:14px 20px;font-size:14px;position:fixed}#hex-info{bottom:calc(168px + env(safe-area-inset-bottom));left:max(10px, env(safe-area-inset-left));min-width:0;max-width:min(72vw,300px);right:auto}#fps{bottom:calc(66px + env(safe-area-inset-bottom));right:calc(10px + env(safe-area-inset-right))}#turn-controls{top:50%;bottom:auto;left:max(8px, env(safe-area-inset-left));flex-direction:column;transform:translateY(-50%)}}@media (hover:none){.btn:hover,.btn-primary:hover,.btn-ghost:hover,.map-card:hover,.icon-btn:hover,.turn-ctrl:hover,.buy-btn:hover,.btn-end-turn:hover{transform:none}.btn:hover,.icon-btn:hover,.buy-btn:hover{box-shadow:var(--shadow-sm)}.map-card:hover{box-shadow:var(--shadow-sm);border-color:var(--divider)}.btn-end-turn:hover{background:var(--go);border-color:var(--go);box-shadow:var(--shadow-sm)}}@media (width<=400px){.chip{padding:7px 12px;font-size:13px}.menu-buttons{width:min(280px,86vw)}#hex-info{padding:11px 14px;font-size:13px}}@media (height<=500px) and (orientation:landscape){#screen-menu{gap:12px}.wordmark-main{font-size:clamp(32px,11vh,56px)}.wordmark-the{font-size:clamp(12px,4vh,16px)}.tagline{margin-top:2px}.menu-buttons{gap:8px;margin-top:4px}.menu-buttons .btn{padding:10px 20px}.hint-panel,.pause-card{max-height:calc(100vh - 24px);overflow-y:auto}#top-bar{padding:max(6px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) 6px max(10px, env(safe-area-inset-left));gap:8px}.chip{padding:6px 12px;font-size:13px}#scoreboard{flex-wrap:nowrap;gap:5px}.player-pill{gap:5px;padding:3px 8px;font-size:11px}.player-pill .agent-dot{width:9px;height:9px}.player-pill .pp-stat{gap:2px}.icon-btn{width:34px;height:34px;font-size:16px}#dock{bottom:calc(8px + env(safe-area-inset-bottom));gap:8px;padding:5px 8px}#buy-row{gap:6px}.buy-btn{flex-direction:row;justify-content:center;align-items:center;gap:4px;width:auto;height:34px;padding:0 11px 0 6px}.buy-icon{flex:none;width:34px;height:34px}.buy-icon img{transform:scale(2)}.buy-btn .buy-cost{padding-bottom:0;font-size:12px}.btn-end-turn{padding:8px 16px;font-size:13px}#hex-info{bottom:calc(86px + env(safe-area-inset-bottom));padding:10px 14px;font-size:13px}}#consent-banner{left:50%;bottom:calc(16px + env(safe-area-inset-bottom));z-index:1000;background:var(--surface);border:1px solid var(--divider);border-radius:var(--r-sm);max-width:min(640px,100vw - 24px);box-shadow:var(--shadow);align-items:center;gap:16px;padding:12px 16px;display:flex;position:fixed;transform:translate(-50%)}#consent-banner .consent-text{color:var(--ink-soft);flex:auto;font-size:13px}#consent-banner .consent-actions{flex:none;gap:8px;display:flex}@media (width<=560px){#consent-banner{text-align:center;flex-direction:column;align-items:stretch;gap:10px}#consent-banner .consent-actions{justify-content:center}}
