:root{--gold: #f2cf78;--ink: #f4eedd;--quiet: #cfc8b4;--panel: rgba(14, 12, 20, .78);--edge: rgba(242, 207, 120, .35)}html,body{margin:0;height:100%;overflow:hidden;background:#050507;color:var(--ink);font-family:Jost,system-ui,sans-serif;-webkit-user-select:none;user-select:none}#game canvas{display:block;touch-action:none}#hud{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}.hud-bar{position:absolute;top:12px;left:50%;transform:translate(-50%);display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:calc(100vw - 24px)}.chip{display:flex;align-items:center;gap:8px;height:44px;padding:0 14px 0 5px;border-radius:999px;background:var(--panel);border:1px solid var(--edge)}.chip.me{border-color:var(--c)}.chip.active{border-color:var(--c);box-shadow:0 0 0 2px var(--c),0 0 18px -2px var(--c)}.chip .points{min-width:18px;padding:0 6px;border-radius:999px;background:#f2cf7824;font-family:Michroma,sans-serif;font-size:11px;line-height:20px;text-align:center;color:var(--gold)}.chip.out{opacity:.35}.chip .name{font-weight:500;font-size:15px}.chip .hearts{font-size:13px;letter-spacing:2px;color:var(--gold)}.chip .hearts .empty{color:#6e6757}.chip .weapon{display:grid;place-items:center;width:22px;height:22px;margin-right:-4px}.chip .weapon[hidden]{display:none}.chip .weapon svg{width:20px;height:20px}.hud-feed{position:absolute;top:70px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:6px}.hud-feed-item{font-family:Michroma,sans-serif;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);padding:6px 14px;border-radius:999px;background:var(--panel);border:1px solid var(--edge);animation:feed 3.2s ease forwards}@keyframes feed{0%{opacity:0;transform:translateY(-4px)}10%{opacity:1;transform:none}80%{opacity:1}to{opacity:0}}.hud-toast{position:absolute;left:50%;bottom:64px;transform:translate(-50%);font-family:Michroma,sans-serif;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);opacity:0;transition:opacity .2s}.hud-toast.show{opacity:1}.hud-hint{position:absolute;left:16px;right:16px;bottom:12px;margin:0;font-family:Michroma,sans-serif;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);opacity:0;transition:opacity .3s}.hud-hint.show{opacity:.9}.hud-turn{position:absolute;left:50%;top:38%;transform:translate(-50%,-50%) scale(.96);max-width:calc(100% - 32px);font-family:Michroma,sans-serif;font-size:clamp(16px,3.4vw,26px);letter-spacing:.14em;text-transform:uppercase;text-align:center;color:var(--ink);text-shadow:0 2px 16px rgba(0,0,0,.8);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}.hud-turn.mine{color:var(--gold)}.hud-turn.show{opacity:1;transform:translate(-50%,-50%) scale(1)}.hud-over{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-start;justify-content:center;padding:16px;box-sizing:border-box;overflow-y:auto;background:#0505078c;pointer-events:auto}.hud-over>*{margin:auto}.hud-over[hidden]{display:none}.hud-over-card{min-width:min(460px,calc(100vw - 32px));padding:28px 32px;border-radius:24px;background:var(--panel);border:1px solid var(--edge)}.hud-over-card h2{margin:0 0 18px;font-family:Michroma,sans-serif;font-weight:400;font-size:26px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}.hud-over-card ol{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-direction:column;gap:10px}.hud-over-card li{display:flex;align-items:center;gap:12px}.hud-over-card .dot{width:12px;height:12px;border-radius:50%}.hud-over-card .name{flex:1;font-weight:500}.hud-over-card .stat{color:var(--quiet);font-size:14px}.hud-over-card .score{min-width:72px;text-align:right;font-family:Michroma,sans-serif;font-size:13px;color:var(--gold)}.hud-over-card .score .gain{color:var(--quiet);font-size:11px}@media(max-width:420px){.hud-over-card .stat{display:none}}.btn-primary{height:48px;padding:0 28px;border:0;border-radius:999px;background:var(--gold);color:#1a1408;font-family:Jost,sans-serif;font-weight:600;font-size:14px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}#hud:not(.playing) .hud-bar,#hud:not(.playing) .hud-weapons,#hud:not(.playing) .hud-turn,#hud:not(.playing) .hud-hint{display:none}.chip .wait{display:none;font-family:Michroma,sans-serif;font-size:12px;color:var(--gold)}.chip.waiting{opacity:.6}.chip.waiting .wait{display:inline}.hud-over-card h1{margin:0 0 24px;font-family:Michroma,sans-serif;font-weight:400;font-size:clamp(22px,4vw,34px);line-height:1.2;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}.hud-over-card .loading{margin:0;color:var(--quiet)}.seg{display:flex;gap:8px;margin:0 0 24px;padding:0;border:0}.seg legend{margin-bottom:8px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--quiet)}.seg button{width:56px;height:44px;border-radius:999px;border:1px solid var(--edge);background:transparent;color:var(--ink);font-family:Jost,sans-serif;font-size:16px;cursor:pointer}.seg.wide{flex-wrap:wrap}.seg.wide button{width:auto;padding:0 16px;font-size:14px}.seg button[aria-pressed=true]{background:var(--gold);border-color:var(--gold);color:#1a1408;font-weight:600}.actions{display:flex;flex-wrap:wrap;gap:12px}.btn-ghost{height:48px;padding:0 24px;border-radius:999px;border:1px solid var(--edge);background:transparent;color:var(--ink);font-family:Jost,sans-serif;font-size:14px;letter-spacing:.06em;cursor:pointer}.hud-debug{position:absolute;right:12px;bottom:12px;margin:0;padding:8px 12px;border-radius:10px;background:var(--panel);border:1px solid var(--edge);font:11px/1.5 ui-monospace,monospace;color:var(--quiet)}@media(max-height:500px){.hud-bar{top:6px}.chip{height:36px;padding-right:10px}.chip .name{display:none}.hud-feed{top:48px}.hud-over-card{padding:18px 22px}}.hud-over-card .field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.hud-over-card .field.grow{flex:1;margin-bottom:0}.hud-over-card label,.hud-over-card .label{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--quiet)}.hud-over-card input{height:44px;padding:0 14px;border-radius:12px;border:1px solid var(--edge);background:#0e0c14;color:var(--ink);font:16px Jost,sans-serif}.hud-over-card input:focus-visible,.hud-over-card button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.hud-over-card .row{display:flex;align-items:flex-end;gap:10px;margin-bottom:14px}.hud-over-card hr{border:0;border-top:1px solid var(--edge);margin:18px 0}.hud-over-card .note{margin:0 0 16px;font-size:14px;color:var(--quiet)}.hud-over-card .note.warn{color:#e8a07a}.hud-over-card button:disabled{opacity:.5;cursor:default}.lobby .code-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.lobby .code-row>div{display:flex;flex-direction:column;gap:4px}.lobby .code{font-family:Michroma,sans-serif;font-size:26px;letter-spacing:.12em;color:var(--gold)}.lobby .members{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:6px}.lobby .members li{display:flex;justify-content:space-between;align-items:center;height:44px;padding:0 16px;border-radius:12px;border:1px solid var(--edge)}.lobby .members li.offline{opacity:.45}.lobby .members .name{flex:1}.lobby .members .cr{margin-right:12px;font-family:Michroma,sans-serif;font-size:11px;color:var(--gold);opacity:.8}.lobby .members .pts{min-width:44px;margin-right:12px;text-align:right;font-family:Michroma,sans-serif;font-size:12px;color:var(--quiet)}.lobby .members .tag{font-size:13px;color:var(--gold)}.lobby .ready[aria-pressed=false]{background:transparent;color:var(--gold);border:1px solid var(--gold)}.hud-countdown{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-family:Michroma,sans-serif;font-size:clamp(64px,14vw,140px);color:var(--gold);text-shadow:0 0 24px rgba(242,207,120,.4);pointer-events:none}.hud-countdown[hidden]{display:none}.hud-alert{position:absolute;top:72px;left:50%;transform:translate(-50%);max-width:min(520px,calc(100% - 32px));padding:10px 16px;border-radius:12px;border:1px solid #e8a07a;background:#0e0c14eb;color:#e8a07a;font-size:14px;text-align:center}.hud-alert[hidden]{display:none}.char-row{display:flex;align-items:center;gap:12px;margin:0 0 18px}.char-fig{width:46px;height:52px;flex:none}.char-text{flex:1;display:flex;flex-direction:column;min-width:0}.char-name{font-weight:500;font-size:16px}.lobby .members .member-fig{width:26px;height:30px;flex:none;margin-right:10px}.hud-over-card.picker{width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 32px);display:flex;flex-direction:column}.picker-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px}.picker-head h2{margin:0}.pick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px;overflow-y:auto;padding:2px}.pick{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px 12px;border-radius:10px;border:1px solid var(--edge);background:radial-gradient(120% 90% at 50% 10%,rgba(255,255,255,.05),transparent);color:var(--ink);font-family:Jost,sans-serif;cursor:pointer}.pick:hover:not(:disabled){border-color:var(--gold)}.pick.current{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}.pick:disabled{opacity:.35;cursor:not-allowed}.pick-fig{width:68px;height:76px}.pick-name{font-weight:500;font-size:14px;text-align:center}.pick-title{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--quiet);text-align:center}.pick-fig .blink,.char-fig .blink{animation:fig-blink 1.4s ease-in-out infinite}.pick-fig .drift,.char-fig .drift{animation:fig-drift 2.8s ease-in-out infinite}.pick-fig .spin,.char-fig .spin{animation:fig-spin 6s linear infinite;transform-box:fill-box;transform-origin:center}@keyframes fig-blink{0%,to{opacity:1}50%{opacity:.25}}@keyframes fig-drift{0%{transform:translateY(0);opacity:.9}to{transform:translateY(-5px);opacity:0}}@keyframes fig-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.pick-fig *,.char-fig *{animation:none!important}}.hud-weapons{position:absolute;left:50%;bottom:30px;transform:translate(-50%);display:flex;gap:6px;max-width:calc(100vw - 32px);overflow-x:auto;scrollbar-width:none;pointer-events:auto}.hud-weapons[hidden]{display:none}.wpn{flex:none;display:flex;align-items:center;gap:6px;height:36px;padding:0 10px 0 6px;border-radius:999px;border:1px solid var(--edge);background:var(--panel);color:var(--ink);font:500 13px Jost,system-ui,sans-serif;cursor:pointer}.wpn .wicon{position:relative;display:block;width:26px;height:26px}.wpn .wicon svg{display:block;width:26px;height:26px}.wpn .wkey{position:absolute;right:-5px;bottom:-4px;min-width:13px;height:13px;padding:0 2px;border-radius:7px;background:var(--w);color:#14111b;font:8px/13px Michroma,sans-serif;text-align:center}.wpn .wcount{font-family:Michroma,sans-serif;font-size:11px;color:var(--quiet)}.wpn[aria-pressed=true]{border-color:var(--w);box-shadow:0 0 0 2px var(--w),0 0 16px -2px var(--w)}.wpn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}@media(max-width:520px){.wpn .wname{display:none}}.shop{margin:4px 0 18px;padding-top:14px;border-top:1px solid var(--edge)}.shop-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.shop-head h3{margin:0;font:400 13px Michroma,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.shop-credits b{font:400 15px Michroma,sans-serif;color:var(--ink)}.shop-credits .gain{font-size:12px;color:var(--gold)}.shop-earn{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:0 0 12px;font-size:12px;color:var(--quiet)}.shop-earn .label{flex-basis:100%;font:400 10px Michroma,sans-serif;letter-spacing:.14em;text-transform:uppercase}.shop-earn b{font:400 12px Michroma,sans-serif;color:var(--gold)}.shop-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.shop-list li{display:flex;align-items:center;gap:10px;padding:8px 8px 8px 12px;border-radius:12px;border:1px solid var(--edge)}.shop-list .shop-icon{flex:none;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,var(--w) 12%,transparent)}.shop-list .shop-icon svg{width:26px;height:26px;filter:drop-shadow(0 0 4px color-mix(in srgb,var(--w) 45%,transparent))}.shop-text{flex:1;min-width:0;display:flex;flex-direction:column}.shop-name{font-weight:500}.shop-blurb{font-size:12px;line-height:1.35;color:var(--quiet)}.shop-own{font-family:Michroma,sans-serif;font-size:11px;color:var(--quiet)}.hud-over-card .shop-list .buy{flex:none;height:38px;min-width:86px;padding:0 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1}.shop-list .buy .per{font-size:10px;color:var(--quiet)}@media(max-width:420px){.shop-blurb{display:none}}.hud-pad{display:none}.hud-pad.coarse:not([hidden]){position:absolute;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:max(14px,calc(env(safe-area-inset-bottom) + 8px));max-width:440px;display:flex;flex-direction:column;gap:6px;pointer-events:none}.pad-bar,.pad-pop{display:flex;align-items:stretch;gap:4px;padding:4px;border-radius:14px;border:1px solid var(--edge);background:var(--panel);pointer-events:auto}.pad-pop[hidden]{display:none}.pad-pop{align-items:center}.pad-pop.off,.pad-chip.off{opacity:.45}.pad-chip{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:5px 2px;border-radius:10px;border:1px solid var(--edge);background:#ffffff08;color:var(--ink);cursor:pointer;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.pad-chip[aria-pressed=true]{border-color:var(--gold);background:#f2cf7829}.pad-cap{font:7.5px/1 Michroma,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--quiet)}.pad-value{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:500 12px/1 Jost,system-ui,sans-serif;color:var(--gold);font-variant-numeric:tabular-nums}.pad-track{position:relative;flex:1;height:34px;touch-action:none;cursor:pointer}.pad-track:before{content:"";position:absolute;left:0;right:0;top:50%;height:4px;margin-top:-2px;border-radius:2px;background:#ffffff24}.pad-reach{position:absolute;top:50%;height:12px;margin-top:-6px;border-radius:6px;background:#f2cf7829}.pad-reach[hidden]{display:none}.pad-fill{position:absolute;top:50%;height:4px;margin-top:-2px;border-radius:2px;background:var(--gold);opacity:.7}.pad-thumb{position:absolute;top:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px #f2cf7838,0 2px 8px #0009}.pad-pop button,.pad-fire{flex:none;display:grid;place-items:center;padding:0;border-radius:10px;border:1px solid var(--edge);background:#ffffff0a;color:var(--ink);font:20px/1 Jost,system-ui,sans-serif;pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent}.pad-pop button{width:34px;height:34px}.pad-pop button:active,.pad-fire:active{border-color:var(--gold);background:#f2cf782e}.pad-fire{width:58px;border-color:var(--gold);color:var(--gold)}.hud-pad.disabled .pad-fire{opacity:.45}#hud:has(.hud-pad.coarse:not([hidden])) .hud-weapons{bottom:calc(max(14px,calc(env(safe-area-inset-bottom) + 8px)) + 62px)}#hud:has(.hud-pad.coarse:not([hidden])) .hud-hint{bottom:calc(max(14px,calc(env(safe-area-inset-bottom) + 8px)) + 58px);text-align:center}#hud:has(.hud-pad.coarse.open:not([hidden])) .hud-weapons{bottom:calc(max(14px,calc(env(safe-area-inset-bottom) + 8px)) + 112px)}#hud:has(.hud-pad.coarse.open:not([hidden])) .hud-hint{display:none}#hud:not(.playing) .hud-pad{display:none}@media(max-height:500px){.hud-pad.coarse:not([hidden]){right:auto;width:min(400px,58vw)}#hud:has(.hud-pad.coarse:not([hidden])) .hud-weapons,#hud:has(.hud-pad.coarse.open:not([hidden])) .hud-weapons{bottom:12px;left:auto;right:max(12px,env(safe-area-inset-right));transform:none;max-width:calc(42vw - 40px)}#hud:has(.hud-pad.coarse:not([hidden])) .hud-hint{display:none}}.hud-zoom-reset{position:absolute;top:12px;right:max(12px,env(safe-area-inset-right));width:40px;height:40px;padding:0;border-radius:50%;border:1px solid var(--gold);background:var(--panel);color:var(--gold);font:22px/1 Jost,system-ui,sans-serif;pointer-events:auto;cursor:pointer;-webkit-tap-highlight-color:transparent}.hud-zoom-reset[hidden],#hud:not(.playing) .hud-zoom-reset{display:none}
