:root{--hm-void:oklch(11% .012 250);--hm-steel-0:oklch(18% .014 250);--hm-steel-1:oklch(26% .016 250);--hm-steel-2:oklch(34% .018 250);--hm-steel-3:oklch(46% .018 250);--hm-steel-4:oklch(58% .016 250);--hm-ink:oklch(95% .008 250);--hm-ink-2:oklch(72% .012 250);--hm-muted:oklch(56% .014 250);--hm-accent:oklch(82% .14 205);--hm-accent-dim:oklch(62% .11 205);--hm-focus:oklch(86% .18 205);--hm-hull:oklch(78% .17 155);--hm-signal:oklch(80% .16 78);--hm-danger:oklch(64% .2 30);--hm-hot:oklch(70% .19 42);--hm-bevel-lit:oklch(88% .02 250/.34);--hm-bevel-dim:oklch(8% .01 250/.72);--hm-hairline:oklch(70% .03 250/.22);--hm-shadow:oklch(6% .01 250/.66);--hm-plate-fill:repeating-linear-gradient(90deg, oklch(100% 0 0/.028) 0 1px, transparent 1px 3px), linear-gradient(177deg, var(--hm-steel-2) 0%, var(--hm-steel-0) 46%, var(--hm-void) 100%);--hm-rail-fill:linear-gradient(180deg, var(--hm-void), var(--hm-steel-0));--hm-font-display:"Anton", "Impact", sans-serif;--hm-font-ui:"Chakra Petch", ui-monospace, Menlo, monospace;--hm-text-3xs:.5rem;--hm-text-2xs:.5625rem;--hm-text-xs:.625rem;--hm-text-sm:.75rem;--hm-text-md:.875rem;--hm-text-lg:1.125rem;--hm-text-xl:1.375rem;--hm-text-2xl:2rem;--hm-track-tight:.02em;--hm-track-wide:.18em;--hm-track-mega:.34em;--hm-space-3xs:2px;--hm-space-2xs:4px;--hm-space-xs:8px;--hm-space-sm:12px;--hm-space-md:16px;--hm-space-lg:24px;--hm-space-xl:32px;--hm-space-2xl:48px;--hm-space-3xl:64px;--hm-chamfer:12px;--hm-chamfer-sm:7px;--hm-rule:1px;--hm-rule-thick:2px;--hm-ease-out:cubic-bezier(.16, 1, .3, 1);--hm-ease-in:cubic-bezier(.7, 0, .84, 0);--hm-ease-in-out:cubic-bezier(.65, 0, .35, 1);--hm-dur-micro:.12s;--hm-dur-short:.22s;--hm-dur-long:.42s;--hm-z-hud:10;--hm-z-screen:40;--hm-z-versus:50;--hm-z-scorecard:52;--hm-z-grade:60}.plate{padding:var(--hm-rule-thick);background:linear-gradient(145deg, var(--hm-bevel-lit), var(--hm-bevel-dim));filter:drop-shadow(0 6px 14px var(--hm-shadow));position:relative}.plate-face{background:var(--hm-plate-fill);box-shadow:inset 0 var(--hm-rule) 0 oklch(100% 0 0/.1), inset 0 -18px 28px oklch(6% .01 250/.5);position:relative}.plate-lip{box-shadow:inset 0 0 0 var(--hm-rule) var(--hm-hairline);pointer-events:none;position:absolute;inset:0}.cut-br,.cut-br>.plate-face,.cut-br .plate-lip{clip-path:polygon(0 0, 100% 0, 100% calc(100% - var(--hm-chamfer)), calc(100% - var(--hm-chamfer)) 100%, 0 100%)}.cut-bl,.cut-bl>.plate-face,.cut-bl .plate-lip{clip-path:polygon(0 0, 100% 0, 100% 100%, var(--hm-chamfer) 100%, 0 calc(100% - var(--hm-chamfer)))}.cut-tr-bl,.cut-tr-bl>.plate-face,.cut-tr-bl .plate-lip{clip-path:polygon(0 0, calc(100% - var(--hm-chamfer)) 0, 100% var(--hm-chamfer), 100% 100%, var(--hm-chamfer) 100%, 0 calc(100% - var(--hm-chamfer)))}.cut-tl-br,.cut-tl-br>.plate-face,.cut-tl-br .plate-lip{clip-path:polygon(var(--hm-chamfer) 0, 100% 0, 100% calc(100% - var(--hm-chamfer)), calc(100% - var(--hm-chamfer)) 100%, 0 100%, 0 var(--hm-chamfer))}.cut-all,.cut-all>.plate-face,.cut-all .plate-lip{clip-path:polygon(var(--hm-chamfer) 0, calc(100% - var(--hm-chamfer)) 0, 100% var(--hm-chamfer), 100% calc(100% - var(--hm-chamfer)), calc(100% - var(--hm-chamfer)) 100%, var(--hm-chamfer) 100%, 0 calc(100% - var(--hm-chamfer)), 0 var(--hm-chamfer))}.tone-inset>.plate-face{background:var(--hm-rail-fill);box-shadow:inset 0 2px 6px oklch(6% .01 250/.8)}.tone-rail{padding:var(--hm-rule);filter:none}.brackets{pointer-events:none;position:absolute;inset:3px}.bracket{fill:none;width:14px;height:14px;stroke:var(--accent,var(--hm-accent));stroke-width:1.5px;opacity:.75;position:absolute}.bracket:first-child{top:0;left:0}.bracket:nth-child(2){top:0;right:0;transform:rotate(90deg)}.bracket:nth-child(3){bottom:0;right:0;transform:rotate(180deg)}.bracket:nth-child(4){bottom:0;left:0;transform:rotate(270deg)}.plate-tab{top:0;left:var(--hm-space-sm);padding:3px var(--hm-space-xs) 2px;background:linear-gradient(180deg, var(--hm-steel-2), var(--hm-steel-0));border-top:var(--hm-rule) solid var(--accent,var(--hm-accent));clip-path:polygon(0 0, 100% 0, calc(100% - var(--hm-chamfer-sm)) 100%, 0 100%);font-size:var(--hm-text-3xs);letter-spacing:var(--hm-track-wide);color:var(--hm-ink-2);white-space:nowrap;line-height:1;position:absolute;transform:translateY(-100%)}.mirrored .plate-tab{left:auto;right:var(--hm-space-sm);clip-path:polygon(var(--hm-chamfer-sm) 0, 100% 0, 100% 100%, 0 100%)}.hexbadge{width:var(--hex-size,44px);height:var(--hex-size,44px);flex:none;place-items:center;display:grid;position:relative}.hex-frame{width:100%;height:100%;position:absolute;inset:0}.hex-plate{fill:var(--hm-void);stroke:var(--hm-bevel-lit);stroke-width:3px}.hex-edge{fill:none;stroke:var(--accent,var(--hm-accent));stroke-width:2.5px;opacity:.85}.hex-inner{place-items:center;width:72%;height:72%;display:grid;position:relative}.gauges{gap:var(--hm-space-2xs);margin-top:var(--hm-space-xs);display:grid}.gauge{align-items:center;gap:var(--hm-space-xs);font-size:var(--hm-text-2xs);letter-spacing:var(--hm-track-wide);color:var(--hm-ink-2);grid-template-columns:30px minmax(0,1fr) 26px;line-height:1;display:grid}.mirrored .gauge{grid-template-columns:26px minmax(0,1fr) 30px}.mirrored .gval{text-align:left;order:1}.mirrored .track{order:2}.mirrored .glabel{text-align:right;order:3}.glabel{white-space:nowrap;overflow:hidden}.gval{font-family:var(--hm-font-display);font-size:var(--hm-text-sm);letter-spacing:var(--hm-track-tight);color:var(--hm-ink);font-variant-numeric:tabular-nums;text-align:right}.track{background:linear-gradient(180deg, var(--hm-void), var(--hm-steel-0) 60%, var(--hm-void));clip-path:polygon(0 0,100% 0,100% calc(100% - 4px),calc(100% - 4px) 100%,0 100%);height:12px;position:relative;overflow:hidden}.mirrored .track{clip-path:polygon(0 0,100% 0,100% 100%,4px 100%,0 calc(100% - 4px))}.track-bevel{box-shadow:inset 0 1px 3px oklch(6% .01 250/.9), inset 0 0 0 var(--hm-rule) oklch(6% .01 250/.7);pointer-events:none;position:absolute;inset:0}.track .fill,.track .ghost{transform-origin:0;will-change:transform;display:block;position:absolute;inset:0;transform:scaleX(1)}.mirrored .track .fill,.mirrored .track .ghost{transform-origin:100%}.ghost{background:linear-gradient(180deg, var(--hm-ink), var(--hm-danger));opacity:.8}.fill{transition:transform var(--hm-dur-micro) var(--hm-ease-out);background-image:linear-gradient(oklch(100% 0 0/.5),oklch(100% 0 0/.04) 40%,oklch(0% 0 0/.3) 74%,oklch(0% 0 0/.5));background-color:var(--fill,var(--hm-accent))}.gauge.hp .fill{--fill:var(--hm-hull)}.gauge.spin .fill{--fill:var(--hm-accent)}.card.critical .gauge.hp .fill{--fill:var(--hm-danger);animation:crit-pulse .46s var(--hm-ease-in-out) infinite alternate}.card.critical .gauge.spin .fill{--fill:var(--hm-signal)}@keyframes crit-pulse{to{filter:brightness(1.6)}}.ticks{pointer-events:none;position:absolute;inset:0}.ticks i{width:var(--hm-rule);background:oklch(6% .01 250/.55);position:absolute;top:0;bottom:0}.ticks i.major{background:oklch(6% .01 250/.85)}.gloss{animation:gloss-sweep 3.4s var(--hm-ease-in-out) infinite;pointer-events:none;background:linear-gradient(100deg,#0000 36%,oklch(100% 0 0/.3) 48%,#0000 60%);position:absolute;inset:0;transform:translate(-100%)}.gauge.spin .gloss{animation-delay:.7s}@keyframes gloss-sweep{0%{transform:translate(-100%)}55%,to{transform:translate(100%)}}.hud{--stick-zone-w:min(50vw, 260px);--stick-zone-h:min(36vh, 220px);--stick-home-inset:10px;z-index:var(--hm-z-hud);transition:opacity var(--hm-dur-short) var(--hm-ease-out);position:absolute;inset:0}.hud.dimmed{opacity:0}.fighters{top:calc(var(--hm-space-md) + env(safe-area-inset-top));justify-content:space-between;align-items:flex-start;gap:var(--hm-space-sm);width:min(920px, calc(100vw - var(--hm-space-lg)));perspective:900px;perspective-origin:50% 0;display:flex;position:absolute;left:50%;transform:translate(-50%)}.card{min-width:0;transform-style:preserve-3d;transition:opacity var(--hm-dur-short) var(--hm-ease-out), filter var(--hm-dur-short) var(--hm-ease-out);flex:0 340px}.card .plate{--lean:0deg;--tilt:7deg;transform:rotateY(var(--tilt)) rotateX(3deg) rotateZ(var(--lean));transform-origin:100%;transition:transform var(--hm-dur-micro) var(--hm-ease-out)}.card.mirrored .plate{--tilt:-7deg;transform-origin:0%}.card.mirrored{text-align:right}.card .plate-face{padding:var(--hm-space-xs) var(--hm-space-sm) var(--hm-space-xs);border-top:var(--hm-rule-thick) solid var(--accent,var(--hm-accent))}.card .plate-face:before{content:"";background:linear-gradient(180deg, color-mix(in oklab, var(--accent) 26%, transparent), transparent);opacity:.6;pointer-events:none;height:44px;position:absolute;inset:0 0 auto}.plate-flash{opacity:0;pointer-events:none;will-change:opacity;background:radial-gradient(at 50% 0,oklch(100% 0 0/.7),#0000 70%);position:absolute;inset:-2px}.card.hit .plate-flash{opacity:1;transition:opacity 20ms var(--hm-ease-out)}.card:not(.hit) .plate-flash{transition:opacity .28s var(--hm-ease-out)}.card.hit .plate{transform:rotateY(var(--tilt)) rotateX(3deg) rotateZ(var(--lean)) translateX(3px)}.card.dead{opacity:.42;filter:grayscale(.7)}.card-head{align-items:center;gap:var(--hm-space-xs);display:flex;position:relative}.card.mirrored .card-head{flex-direction:row-reverse}.avatar{--hex-size:44px}.avatar .portrait{width:100%}.avatar .p-glow{filter:none;stroke-width:3px;opacity:.5}.ident{flex-direction:column;flex:auto;gap:1px;min-width:0;line-height:1;display:flex}.name{font-family:var(--hm-font-display);font-size:var(--hm-text-xl);letter-spacing:.04em;color:var(--hm-ink);overflow-wrap:anywhere;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 2px oklch(6% .01 250/.7);min-width:0;line-height:1.02;overflow:hidden}.disc-spin{font-size:var(--hm-text-3xs);letter-spacing:var(--hm-track-wide);color:var(--accent,var(--hm-accent))}.rpm{padding-left:var(--hm-space-xs);border-left:var(--hm-rule) solid var(--hm-hairline);flex-direction:column;flex:none;align-items:flex-end;line-height:1;display:flex}.card.mirrored .rpm{padding-left:0;padding-right:var(--hm-space-xs);border-left:0;border-right:var(--hm-rule) solid var(--hm-hairline);align-items:flex-start}.rpm-num{font-family:var(--hm-font-display);font-size:var(--hm-text-lg);letter-spacing:var(--hm-track-tight);color:var(--hm-ink);font-variant-numeric:tabular-nums}.rpm-unit{font-size:var(--hm-text-3xs);letter-spacing:var(--hm-track-wide);color:var(--hm-muted)}.state{margin-top:var(--hm-space-2xs);height:13px;font-size:var(--hm-text-3xs);letter-spacing:var(--hm-track-wide);color:var(--hm-muted);opacity:0;transition:opacity var(--hm-dur-micro) var(--hm-ease-out), transform var(--hm-dur-micro) var(--hm-ease-out);transform:translateY(3px)}.state.visible{opacity:1;transform:translateY(0)}.state.info{color:var(--hm-accent)}.state.warn{color:var(--hm-signal)}.state.danger{color:var(--hm-danger);animation:.44s steps(2,end) infinite state-pulse}@keyframes state-pulse{50%{opacity:.45}}.versus-tag{margin-top:var(--hm-space-md);font-family:var(--hm-font-display);font-size:var(--hm-text-xl);letter-spacing:var(--hm-track-tight);color:var(--hm-ink-2);flex:none;align-self:center;transform:rotate(-4deg)}.banner{text-align:center;opacity:0;transition:opacity var(--hm-dur-micro) var(--hm-ease-out), transform var(--hm-dur-micro) var(--hm-ease-out);position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)scale(.94)}.banner.visible{opacity:1;transform:translate(-50%,-50%)scale(1)}.banner-main{font-family:var(--hm-font-display);letter-spacing:.05em;color:var(--hm-ink);overflow-wrap:anywhere;min-width:0;font-size:clamp(3.25rem,11vw,8rem);line-height:1.02;position:relative}.banner-main:before,.banner-main:after{content:attr(data-text);z-index:-1;opacity:.7;position:absolute;inset:0}.banner-main:before{color:var(--hm-hot);transform:translate(-4px,2px)}.banner-main:after{color:var(--hm-accent);transform:translate(4px,-2px)}.banner.win .banner-main{color:var(--hm-hull)}.banner.lose .banner-main{color:var(--hm-danger)}.banner-sub{margin-top:var(--hm-space-xs);font-size:var(--hm-text-xs);letter-spacing:var(--hm-track-mega);color:var(--hm-ink-2)}.callout{padding:var(--hm-space-2xs) var(--hm-space-md);font-family:var(--hm-font-display);font-size:var(--hm-text-2xl);letter-spacing:.1em;opacity:0;transition:opacity var(--hm-dur-micro) var(--hm-ease-out), transform var(--hm-dur-micro) var(--hm-ease-out);line-height:1.04;position:absolute;bottom:22%;left:50%;transform:translate(-50%)translateY(8px)}.callout.visible{opacity:1;transform:translate(-50%)translateY(0)}.callout.clean{color:var(--hm-hull)}.callout.trade{color:var(--hm-ink)}.callout.punished{color:var(--hm-danger)}.hint{bottom:calc(var(--hm-space-md) + env(safe-area-inset-bottom));align-items:center;gap:var(--hm-space-lg);font-size:var(--hm-text-xs);letter-spacing:.12em;color:var(--hm-muted);white-space:nowrap;display:flex;position:absolute;left:50%;transform:translate(-50%)}.hint b{color:var(--hm-ink);padding:2px var(--hm-space-2xs);margin-right:var(--hm-space-3xs);background:var(--hm-steel-0);border:var(--hm-rule) solid var(--hm-hairline);border-bottom-color:var(--hm-bevel-dim);border-top-color:var(--hm-bevel-lit);font-weight:700}@media (width<=820px){.fighters{top:calc(var(--hm-space-2xs) + env(safe-area-inset-top));width:calc(100vw - var(--hm-space-xs));gap:var(--hm-space-2xs)}.card{flex:0 clamp(136px,42vw,200px)}.card .plate{--tilt:4deg}.card.mirrored .plate{--tilt:-4deg}.card .plate-face{padding:var(--hm-space-2xs) var(--hm-space-xs)}.card .plate-face:before{height:26px}.card .plate{filter:none}:root{--hm-chamfer:8px}.plate-tab,.card .brackets,.card .rpm{display:none}.avatar{--hex-size:28px}.name{font-size:var(--hm-text-md)}.disc-spin{font-size:var(--hm-text-2xs);letter-spacing:.1em}.gauge{gap:var(--hm-space-2xs);font-size:var(--hm-text-2xs);letter-spacing:.06em;grid-template-columns:26px minmax(0,1fr) 20px}.mirrored .gauge{grid-template-columns:20px minmax(0,1fr) 26px}.gval{font-size:var(--hm-text-xs)}.track{height:9px}.gauges{gap:var(--hm-space-3xs);margin-top:var(--hm-space-2xs)}.state{font-size:var(--hm-text-2xs);letter-spacing:.08em;height:11px;margin-top:var(--hm-space-3xs)}.versus-tag{font-size:var(--hm-text-sm);margin-top:var(--hm-space-xs)}.banner-main{font-size:clamp(2.5rem,13vw,5.5rem)}.callout{font-size:var(--hm-text-xl);bottom:26%}.hint{gap:var(--hm-space-xs);font-size:var(--hm-text-xs);max-width:calc(100vw - var(--hm-space-lg));bottom:calc(var(--hm-space-xs) + env(safe-area-inset-bottom));flex-wrap:wrap;justify-content:center}}@media (width<=460px){.glabel{display:none}.gauge,.mirrored .gauge{grid-template-columns:minmax(0,1fr) 18px}.versus-tag{display:none}}.stick-zone{left:env(safe-area-inset-left);bottom:calc(var(--hm-space-lg) + env(safe-area-inset-bottom));width:var(--stick-zone-w);height:var(--stick-zone-h);min-width:calc(var(--stick-travel) * 2 + var(--stick-home-inset) * 2);min-height:calc(var(--stick-travel) * 2 + var(--stick-home-inset) * 2);opacity:0;pointer-events:none;transition:opacity var(--hm-dur-short) var(--hm-ease-out);touch-action:none;position:absolute}.stick-zone.live{opacity:1;pointer-events:auto}.hud.dimmed .stick-zone{pointer-events:none}.hud:has(.stick-zone.live) .hint{left:calc(env(safe-area-inset-left) + var(--stick-travel) * 2 + var(--stick-home-inset) * 2 + var(--hm-space-sm));right:calc(env(safe-area-inset-right) + var(--hm-space-2xl));flex-wrap:wrap;justify-content:center;max-width:none;transform:none}.stick{left:calc(var(--stick-travel) + var(--stick-home-inset));top:calc(100% - var(--stick-travel) - var(--stick-home-inset));width:calc(var(--stick-travel) * 2);height:calc(var(--stick-travel) * 2);opacity:.62;transition:opacity var(--hm-dur-short) var(--hm-ease-out), left var(--hm-dur-short) var(--hm-ease-out), top var(--hm-dur-short) var(--hm-ease-out);position:absolute;transform:translate(-50%,-50%)}.stick.held{opacity:1;transition:opacity var(--hm-dur-micro) var(--hm-ease-out)}.stick-well,.stick-gate,.stick-knob{pointer-events:none;border-radius:50%;position:absolute}.stick-well{background:radial-gradient(circle at 50% 38%, color-mix(in oklab, var(--hm-steel-1) 70%, transparent), color-mix(in oklab, var(--hm-void) 78%, transparent));border:var(--hm-rule) solid var(--hm-hairline);box-shadow:inset 0 2px 6px var(--hm-bevel-dim), 0 1px 0 var(--hm-bevel-lit);inset:0}.stick-gate{border:var(--hm-rule) dashed color-mix(in oklab, var(--hm-accent) 34%, transparent);inset:18%}.stick-knob{background:linear-gradient(177deg, var(--hm-steel-3), var(--hm-steel-0));border:var(--hm-rule) solid color-mix(in oklab, var(--hm-accent) 55%, transparent);width:46%;height:46%;box-shadow:0 2px 8px var(--hm-shadow), inset 0 1px 0 var(--hm-bevel-lit);top:50%;left:50%;transform:translate(-50%,-50%)}.stick.held .stick-knob{border-color:var(--hm-focus);box-shadow:0 0 12px color-mix(in oklab, var(--hm-accent) 45%, transparent), 0 2px 8px var(--hm-shadow), inset 0 1px 0 var(--hm-bevel-lit)}@media (prefers-reduced-motion:reduce){.stick{transition:none}}.debug-panel{right:calc(var(--hm-space-sm) + env(safe-area-inset-right));bottom:calc(var(--hm-space-2xl) + var(--hm-space-3xl) + env(safe-area-inset-bottom));z-index:calc(var(--hm-z-grade) + 10);gap:var(--hm-space-3xs);max-width:min(52vw,260px);padding:var(--hm-space-2xs) var(--hm-space-xs);font-family:var(--hm-font-ui);font-size:var(--hm-text-xs);text-align:right;color:var(--hm-ink-2);background:color-mix(in oklab, var(--hm-void) 82%, transparent);border:var(--hm-rule) solid var(--hm-hairline);pointer-events:none;flex-direction:column;line-height:1.45;display:none;position:fixed}.debug-panel.live{display:flex}.debug-panel b{font-family:var(--hm-font-display);font-size:var(--hm-text-sm);letter-spacing:var(--hm-track-wide);color:var(--hm-accent)}.rematch{right:calc(var(--hm-space-sm) + env(safe-area-inset-right));bottom:calc(var(--hm-space-2xl) + env(safe-area-inset-bottom));pointer-events:auto;position:absolute}.ready-pips{gap:var(--hm-space-xs);margin-top:var(--hm-space-2xs);grid-template-columns:1fr 1fr;display:grid}.pip{padding:1px 0 1px var(--hm-space-2xs);font-size:var(--hm-text-3xs);letter-spacing:var(--hm-track-wide);color:var(--hm-muted);background:var(--hm-void);box-shadow:inset 0 0 0 var(--hm-rule) var(--hm-bevel-dim);display:block;position:relative;overflow:hidden}.pip i{background:color-mix(in oklab, var(--accent) 35%, transparent);transform-origin:0;position:absolute;inset:0}.pip.ready{color:var(--hm-void)}.pip.ready i{background:var(--accent)}.pip{isolation:isolate}.pip i{z-index:-1}.moves{right:calc(var(--hm-space-md) + env(safe-area-inset-right));bottom:calc(var(--hm-space-2xl) + 64px + env(safe-area-inset-bottom));gap:var(--hm-space-sm);opacity:0;pointer-events:none;transition:opacity var(--hm-dur-short) var(--hm-ease-out);display:grid;position:absolute}.moves.live{opacity:1;pointer-events:auto}.hud.dimmed .moves{pointer-events:none}.move{width:72px;height:72px;font-family:var(--hm-font-display);font-size:var(--hm-text-sm);letter-spacing:var(--hm-track-wide);color:var(--hm-ink-2);background:var(--hm-void);border:var(--hm-rule-thick) solid var(--hm-steel-3);isolation:isolate;touch-action:none;border-radius:50%;padding:0;position:relative;overflow:hidden}.move i{z-index:-1;background:color-mix(in oklab, var(--hm-accent) 30%, transparent);transform-origin:0;position:absolute;inset:0}.move.ready{color:var(--hm-void);border-color:var(--hm-accent)}.move.ready i{background:var(--hm-accent)}.move:active{transform:scale(.94)}@media (prefers-reduced-motion:reduce){.gloss,.state.danger,.card.critical .gauge.hp .fill{animation:none}.card .plate,.card.hit .plate{transition:none}}.btn{justify-content:center;align-items:center;gap:var(--hm-space-xs);padding:var(--hm-space-sm) var(--hm-space-xl);font-family:var(--hm-font-display);font-size:var(--hm-text-lg);letter-spacing:var(--hm-track-wide);white-space:nowrap;color:var(--hm-ink);background:linear-gradient(177deg, var(--hm-steel-2), var(--hm-steel-0) 55%, var(--hm-void));border:0;border-top:var(--hm-rule-thick) solid var(--hm-accent);box-shadow:inset 0 var(--hm-rule) 0 var(--hm-bevel-lit), inset 0 -12px 20px oklch(6% .01 250/.55), 0 4px 12px var(--hm-shadow);clip-path:polygon(var(--hm-chamfer) 0, 100% 0, 100% calc(100% - var(--hm-chamfer)), calc(100% - var(--hm-chamfer)) 100%, 0 100%, 0 var(--hm-chamfer));cursor:pointer;transition:transform var(--hm-dur-micro) var(--hm-ease-out), color var(--hm-dur-micro) var(--hm-ease-out), background-color var(--hm-dur-micro) var(--hm-ease-out);line-height:1;display:inline-flex;position:relative}.btn:hover,.btn.is-hover{color:var(--hm-void);background-color:var(--hm-accent);background-image:linear-gradient(177deg,oklch(100% 0 0/.25),#0000 60%);transform:translateY(-1px)}.btn:focus-visible,.btn.is-focus{outline:var(--hm-rule-thick) solid var(--hm-focus);outline-offset:3px}.btn:active,.btn.is-active{box-shadow:inset 0 2px 6px oklch(6% .01 250/.85), inset 0 var(--hm-rule) 0 var(--hm-bevel-dim);transform:translateY(1px)}.btn:disabled,.btn.is-disabled{color:var(--hm-muted);border-top-color:var(--hm-steel-3);background:linear-gradient(177deg, var(--hm-steel-1), var(--hm-void));cursor:not-allowed;opacity:.55;transform:none}.btn[data-state=busy]{color:var(--hm-ink-2);cursor:progress}.btn[data-state=busy]:after{content:"";background:var(--hm-accent);width:8px;height:8px;animation:btn-busy .9s var(--hm-ease-in-out) infinite alternate}@keyframes btn-busy{to{opacity:.2;transform:translate(6px)}}.btn.compact{padding:var(--hm-space-xs) var(--hm-space-md);font-size:var(--hm-text-sm);--hm-chamfer:var(--hm-chamfer-sm)}@media (hover:none) and (pointer:coarse){.btn{padding:var(--hm-space-md) var(--hm-space-xl)}.btn:hover{color:var(--hm-ink);background-color:#0000;transform:none}}.screen{z-index:var(--hm-z-screen);pointer-events:none;opacity:0;background:radial-gradient(ellipse at 50% 32%, oklch(22% .02 250/.72), oklch(8% .01 250/.97)), var(--hm-void);flex-direction:column;display:none;position:absolute;inset:0}.screen.visible{opacity:1;pointer-events:auto;animation:screen-in var(--hm-dur-short) var(--hm-ease-out);display:flex}@keyframes screen-in{0%{opacity:0}to{opacity:1}}.rail{background:repeating-linear-gradient(-45deg, var(--hm-hot) 0 12px, var(--hm-void) 12px 24px);border-top:var(--hm-rule) solid var(--hm-bevel-lit);border-bottom:var(--hm-rule) solid var(--hm-bevel-dim);opacity:.85;flex:none;height:12px;position:relative}.title{justify-content:space-between}.title-inner{text-align:center;padding:var(--hm-space-lg);flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.kicker{font-size:var(--hm-text-xs);letter-spacing:var(--hm-track-mega);color:var(--hm-accent);margin-bottom:var(--hm-space-sm);animation:seat-down var(--hm-dur-long) 50ms backwards var(--hm-ease-out)}.wordmark{font-family:var(--hm-font-display);letter-spacing:.02em;color:var(--hm-ink);overflow-wrap:anywhere;min-width:0;animation:seat-in var(--hm-dur-long) .12s backwards var(--hm-ease-out);margin:0;font-size:clamp(4rem,17vw,13rem);line-height:1.02;position:relative}.wordmark:before,.wordmark:after{content:attr(data-text);z-index:-1;position:absolute;inset:0}.wordmark:before{color:var(--hm-hot);transform:translate(-6px,4px)}.wordmark:after{color:var(--hm-accent);transform:translate(6px,-4px)}.rule-line{width:min(520px,70vw);height:var(--hm-rule-thick);margin:var(--hm-space-lg) 0 var(--hm-space-md);background:linear-gradient(90deg, transparent, var(--hm-accent), transparent);animation:wipe var(--hm-dur-long) .4s backwards var(--hm-ease-out)}@keyframes wipe{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.blurb{max-width:58ch;font-size:var(--hm-text-sm);color:var(--hm-ink-2);margin:0 0 var(--hm-space-xl);animation:seat-up var(--hm-dur-long) .5s backwards var(--hm-ease-out);line-height:1.8}.title .btn{animation:seat-up var(--hm-dur-long) .62s backwards var(--hm-ease-out)}@keyframes seat-in{0%{opacity:0;transform:scale(1.6)}to{opacity:1;transform:scale(1)}}@keyframes seat-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes seat-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.select{padding:var(--hm-space-lg);justify-content:safe center;align-items:center;overflow-y:auto}.select-head{width:min(1060px,100%);margin-bottom:var(--hm-space-xs);text-align:center}.select-head h2{font-family:var(--hm-font-display);letter-spacing:var(--hm-track-wide);color:var(--hm-ink);overflow-wrap:anywhere;min-width:0;margin:0;font-size:clamp(1.25rem,3.4vw,2.125rem);line-height:1.04}.select .sub{text-align:center;max-width:62ch;font-size:var(--hm-text-sm);color:var(--hm-ink-2);margin:var(--hm-space-xs) 0 var(--hm-space-lg);line-height:1.75}.disc-grid{gap:var(--hm-space-sm);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));width:min(1060px,100%);display:grid}.disc-card{color:var(--hm-ink);text-align:left;cursor:pointer;animation:seat-up var(--hm-dur-long) backwards var(--hm-ease-out);animation-delay:calc(var(--i,0) * 60ms);background:0 0;border:0;padding:0;font-family:inherit;position:relative}.disc-card .plate{transition:transform var(--hm-dur-short) var(--hm-ease-out)}.disc-card .plate-face{padding:var(--hm-space-sm) var(--hm-space-sm) 0;border-top:var(--hm-rule-thick) solid var(--accent)}.disc-card:hover .plate,.disc-card.is-hover .plate{transform:translateY(-5px)}.disc-card:focus-visible{outline:var(--hm-rule-thick) solid var(--hm-focus);outline-offset:3px}.disc-card:active .plate,.disc-card.is-active .plate{transform:translateY(0)}.disc-card:disabled{opacity:.5;cursor:not-allowed}.disc-card:disabled .plate{transform:none}.disc-card .plate-face:before{content:"";background:radial-gradient(circle at 50% 24%, color-mix(in oklab, var(--accent) 24%, transparent), transparent 62%);opacity:0;transition:opacity var(--hm-dur-short) var(--hm-ease-out);pointer-events:none;position:absolute;inset:0}.disc-card:hover .plate-face:before,.disc-card:focus-visible .plate-face:before{opacity:1}.disc-art{margin-bottom:var(--hm-space-2xs);place-items:center;display:grid;position:relative}.disc-id{justify-content:space-between;align-items:baseline;gap:var(--hm-space-xs);display:flex;position:relative}.disc-name{font-family:var(--hm-font-display);font-size:var(--hm-text-xl);letter-spacing:.05em;color:var(--accent);overflow-wrap:anywhere;min-width:0;line-height:1.04}.disc-card .disc-spin{font-size:var(--hm-text-3xs);color:var(--hm-muted)}.disc-tag{font-size:var(--hm-text-xs);color:var(--hm-ink-2);margin:var(--hm-space-xs) 0 var(--hm-space-sm);min-height:52px;line-height:1.65;position:relative}.stats{gap:var(--hm-space-2xs);padding-bottom:var(--hm-space-sm);display:grid;position:relative}.parts{gap:2px var(--hm-space-xs);padding-bottom:var(--hm-space-sm);font-size:var(--hm-text-3xs);letter-spacing:.1em;color:var(--hm-ink-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;position:relative}.parts span{align-items:baseline;gap:5px;min-width:0;display:flex}.parts i{color:var(--hm-muted);opacity:.65;flex:none;font-style:normal}.stat{align-items:center;gap:var(--hm-space-xs);font-size:var(--hm-text-3xs);letter-spacing:.14em;color:var(--hm-muted);grid-template-columns:56px minmax(0,1fr);display:grid}.stat-track{background:var(--hm-void);height:5px;box-shadow:inset 0 0 0 var(--hm-rule) var(--hm-bevel-dim);display:block}.stat-track i{background:var(--accent);transform-origin:0;height:100%;display:block}.pick{margin:0 calc(var(--hm-space-sm) * -1);padding:var(--hm-space-xs);text-align:center;font-family:var(--hm-font-display);font-size:var(--hm-text-sm);letter-spacing:var(--hm-track-mega);color:var(--hm-void);background:var(--accent);transition:transform var(--hm-dur-short) var(--hm-ease-out);position:relative;transform:translateY(100%)}.disc-card:hover .pick,.disc-card:focus-visible .pick{transform:translateY(0)}@media (hover:none) and (pointer:coarse){.pick{transform:translateY(0)}.disc-card .plate-face{padding-bottom:0}.disc-card:hover .plate{transform:none}.disc-card:active .plate{transform:scale(.985)}.disc-card .plate-face:before{opacity:.65}}.versus{z-index:var(--hm-z-versus);pointer-events:none;background:radial-gradient(oklch(14% .014 250/.55),oklch(6% .01 250/.95));justify-content:center;align-items:center;display:none;position:absolute;inset:0;overflow:hidden}.versus.visible{display:flex}.vs-flash{background:var(--hm-ink);opacity:0;position:absolute;inset:0}.versus.run .vs-flash{animation:vs-flash .5s .72s var(--hm-ease-in)}@keyframes vs-flash{0%{opacity:.85}to{opacity:0}}.vs-side{justify-content:center;align-items:center;gap:var(--hm-space-2xs);width:52%;padding:var(--hm-space-lg);background:linear-gradient(180deg, transparent, color-mix(in oklab, var(--accent) 12%, transparent), transparent);flex-direction:column;display:flex;position:absolute;top:0;bottom:0}.vs-side.left{clip-path:polygon(0 0,100% 0,calc(100% - 90px) 100%,0 100%);left:0}.vs-side.right{clip-path:polygon(90px 0,100% 0,100% 100%,0 100%);right:0}.versus.run .vs-side.left{animation:slam-left .62s var(--hm-ease-out) backwards}.versus.run .vs-side.right{animation:slam-right .62s 80ms var(--hm-ease-out) backwards}@keyframes slam-left{0%{opacity:0;transform:translate(-105%)}to{opacity:1;transform:translate(0)}}@keyframes slam-right{0%{opacity:0;transform:translate(105%)}to{opacity:1;transform:translate(0)}}.vs-role{font-size:var(--hm-text-xs);letter-spacing:var(--hm-track-mega);color:var(--hm-muted)}.vs-art{width:min(230px,26vw)}.vs-name{font-family:var(--hm-font-display);letter-spacing:.04em;color:var(--accent);margin-top:var(--hm-space-2xs);overflow-wrap:anywhere;min-width:0;font-size:clamp(1.875rem,5.2vw,3.875rem);line-height:1.04;position:relative}.vs-spin{font-size:var(--hm-text-xs);letter-spacing:var(--hm-track-wide);color:var(--hm-ink-2)}.vs-tag{text-align:center;max-width:46ch;font-size:var(--hm-text-xs);color:var(--hm-muted);margin-top:var(--hm-space-xs);line-height:1.7}.vs-badge{z-index:3;font-family:var(--hm-font-display);color:var(--hm-ink);font-size:clamp(4.375rem,13vw,10.5rem);line-height:1.02;position:relative}.vs-badge span{display:inline-block;position:relative}.vs-badge span:before,.vs-badge span:after{content:attr(data-text);z-index:-1;position:absolute;inset:0}.vs-badge span:before{color:var(--hm-hot);transform:translate(-7px,5px)}.vs-badge span:after{color:var(--hm-accent);transform:translate(7px,-5px)}.versus.run .vs-badge{animation:vs-slam .5s .62s var(--hm-ease-out) backwards}@keyframes vs-slam{0%{opacity:0;transform:scale(3.4)rotate(-14deg)}to{opacity:1;transform:scale(1)rotate(-6deg)}}.vs-ring{z-index:2;border:var(--hm-rule-thick) solid var(--hm-hot);opacity:0;border-radius:50%;width:220px;height:220px;position:absolute}.versus.run .vs-ring{animation:shock .75s .68s var(--hm-ease-out)}.versus.run .vs-ring.delay{border-color:var(--hm-accent);animation-delay:.84s}@keyframes shock{0%{opacity:.85;transform:scale(.2)}to{opacity:0;transform:scale(4.2)}}.scorecard{z-index:var(--hm-z-scorecard);justify-content:safe center;align-items:center;gap:var(--hm-space-xl);padding:var(--hm-space-2xl) var(--hm-space-lg);background:radial-gradient(at 50% 0,oklch(24% .03 205/.4),#0000 55%),radial-gradient(at 50% 28%,oklch(20% .02 250/.72),oklch(7% .01 250/.97));overflow-y:auto}.sc-head{text-align:center}.sc-kicker{font-size:var(--hm-text-xs);letter-spacing:var(--hm-track-mega);color:var(--hm-accent);animation:seat-down var(--hm-dur-long) 40ms backwards var(--hm-ease-out)}.sc-headline{font-family:var(--hm-font-display);letter-spacing:.03em;margin-top:var(--hm-space-2xs);color:var(--hm-ink);overflow-wrap:anywhere;min-width:0;animation:seat-in var(--hm-dur-long) .1s backwards var(--hm-ease-out);font-size:clamp(3rem,9vw,6rem);line-height:1.02;position:relative}.sc-headline:before,.sc-headline:after{content:attr(data-text);z-index:-1;opacity:.7;position:absolute;inset:0}.sc-headline:before{color:var(--hm-hot);transform:translate(-5px,3px)}.sc-headline:after{color:var(--hm-accent);transform:translate(5px,-3px)}.sc-headline.win,.sc-headline.win:after{color:var(--hm-hull)}.sc-headline.lose{color:var(--hm-danger)}.sc-rule{width:min(360px,50vw);height:var(--hm-rule-thick);margin:var(--hm-space-sm) auto 0;background:linear-gradient(90deg, transparent, var(--hm-accent), transparent);animation:wipe var(--hm-dur-long) .32s backwards var(--hm-ease-out)}.sc-headline.win~.sc-rule{background:linear-gradient(90deg, transparent, var(--hm-hull), transparent)}.sc-headline.lose~.sc-rule{background:linear-gradient(90deg, transparent, var(--hm-danger), transparent)}.sc-sub{margin-top:var(--hm-space-sm);font-size:var(--hm-text-sm);letter-spacing:var(--hm-track-wide);color:var(--hm-muted);animation:seat-up var(--hm-dur-long) .38s backwards var(--hm-ease-out)}.sc-body{align-items:center;gap:var(--hm-space-xl);grid-template-columns:minmax(280px,440px) auto minmax(280px,440px);width:100%;max-width:1120px;display:grid}.score-side[data-side=player]{animation:slam-left .52s .12s var(--hm-ease-out) backwards}.score-side[data-side=ai]{animation:slam-right .52s .18s var(--hm-ease-out) backwards}.sc-vs{font-family:var(--hm-font-display);letter-spacing:.02em;color:var(--hm-ink-2);animation:seat-in var(--hm-dur-long) .42s backwards var(--hm-ease-out);font-size:clamp(1.5rem,3vw,2.25rem);position:relative;transform:rotate(-4deg)}.sc-vs:before,.sc-vs:after{content:attr(data-text);z-index:-1;opacity:.7;position:absolute;inset:0}.sc-vs:before{color:var(--hm-hot);transform:translate(-2px,2px)}.sc-vs:after{color:var(--hm-accent);transform:translate(2px,-2px)}.score-plate .plate-face{padding:var(--hm-space-lg) var(--hm-space-md);border-top:var(--hm-rule-thick) solid var(--accent)}.score-plate .plate-face:before{content:"";background:linear-gradient(180deg, color-mix(in oklab, var(--accent) 22%, transparent), transparent);opacity:.7;pointer-events:none;height:72px;position:absolute;inset:0 0 auto}.sc-ident{align-items:center;gap:var(--hm-space-sm);margin-bottom:var(--hm-space-md);display:flex;position:relative}.sc-art{flex:none;width:76px}.sc-name{font-family:var(--hm-font-display);font-size:var(--hm-text-2xl);letter-spacing:.02em;color:var(--accent);overflow-wrap:anywhere}.sc-hitline{align-items:center;gap:var(--hm-space-md);padding-bottom:var(--hm-space-md);margin-bottom:var(--hm-space-md);border-bottom:var(--hm-rule) solid var(--hm-hairline);grid-template-columns:auto minmax(0,1fr);display:grid;position:relative}.sc-hits-hero{padding-right:var(--hm-space-md);border-right:var(--hm-rule) solid var(--hm-hairline);flex-direction:column;align-items:center;line-height:1;display:flex}.sc-hits-num{font-family:var(--hm-font-display);font-size:var(--hm-text-2xl);color:var(--hm-ink);font-variant-numeric:tabular-nums}.sc-hits-label{font-size:var(--hm-text-3xs);letter-spacing:var(--hm-track-wide);color:var(--hm-muted);margin-top:1px}.sc-hitbar{gap:var(--hm-space-2xs);flex-direction:column;min-width:0;display:flex}.sc-hitbar-track{background:linear-gradient(180deg, var(--hm-void), var(--hm-steel-0) 60%, var(--hm-void));height:13px;box-shadow:inset 0 1px 3px oklch(6% .01 250/.9), inset 0 0 0 var(--hm-rule) oklch(6% .01 250/.7);clip-path:polygon(0 0,100% 0,100% calc(100% - 4px),calc(100% - 4px) 100%,0 100%);transform-origin:0;animation:wipe var(--hm-dur-long) .3s backwards var(--hm-ease-out);display:flex;position:relative;overflow:hidden}.sc-hitbar-track .seg{background-color:var(--seg,var(--hm-muted));background-image:linear-gradient(oklch(100% 0 0/.45),oklch(100% 0 0/.03) 40%,oklch(0% 0 0/.3) 74%,oklch(0% 0 0/.5));flex-basis:0;height:100%;position:relative}.sc-hitbar-track .seg.has{min-width:5px}.sc-hitbar-track .seg.has+.seg.has{border-left:var(--hm-rule) solid oklch(6% .01 250/.7)}.sc-hitbar-track .seg.clean{--seg:var(--hm-hull)}.sc-hitbar-track .seg.trade{--seg:var(--hm-ink-2)}.sc-hitbar-track .seg.punished{--seg:var(--hm-danger)}.sc-hitbar-legend{gap:var(--hm-space-sm);flex-wrap:wrap;display:flex}.hit-tag{align-items:center;gap:var(--hm-space-3xs);font-size:var(--hm-text-xs);letter-spacing:var(--hm-track-tight);color:var(--hm-muted);display:flex}.hit-tag:before{content:"";background:currentColor;width:6px;height:6px}.hit-tag.clean{color:var(--hm-hull)}.hit-tag.trade{color:var(--hm-ink-2)}.hit-tag.punished{color:var(--hm-danger)}.sc-stats{gap:var(--hm-space-xs);flex-direction:column;display:flex;position:relative}.sc-row{justify-content:space-between;gap:var(--hm-space-sm);font-size:var(--hm-text-sm);animation:seat-up var(--hm-dur-short) backwards var(--hm-ease-out);animation-delay:calc(.28s + var(--i,0) * 45ms);display:flex}.sc-row-label{letter-spacing:var(--hm-track-wide);color:var(--hm-muted)}.sc-row-val{color:var(--hm-ink-2);font-variant-numeric:tabular-nums}.sc-actions{gap:var(--hm-space-sm);animation:seat-up var(--hm-dur-long) .52s backwards var(--hm-ease-out);display:flex}@media (width<=820px){.select{padding:var(--hm-space-md) var(--hm-space-sm) var(--hm-space-xl);justify-content:flex-start;overflow-y:auto}.select-head{margin-top:var(--hm-space-xs)}.select .sub{margin-bottom:var(--hm-space-md);font-size:var(--hm-text-xs)}.disc-grid{gap:var(--hm-space-xs);grid-template-columns:repeat(auto-fit,minmax(148px,1fr))}.disc-tag{min-height:0}.disc-art{max-width:118px;margin-inline:auto}.vs-tag{display:none}.vs-art{width:min(150px,34vw)}.scorecard{padding:var(--hm-space-lg) var(--hm-space-sm);gap:var(--hm-space-md)}.sc-body{gap:var(--hm-space-sm);grid-template-columns:minmax(0,1fr);max-width:440px}.sc-vs{display:none}.sc-art{width:56px}.sc-name{font-size:var(--hm-text-lg)}}@media (width<=460px) and (orientation:portrait){.disc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.kicker,.wordmark,.rule-line,.blurb,.title .btn,.disc-card,.versus.run .vs-side.left,.versus.run .vs-side.right,.versus.run .vs-badge,.versus.run .vs-ring,.versus.run .vs-flash,.sc-kicker,.sc-headline,.sc-rule,.sc-sub,.score-side[data-side=player],.score-side[data-side=ai],.sc-vs,.sc-row,.sc-hitbar-track,.sc-actions,.btn[data-state=busy]:after{animation:none}.disc-card:hover .plate,.disc-card .plate,.pick,.btn{transition-duration:.15s}.disc-card:hover .plate{transform:none}}.debug-toggle{right:calc(var(--hm-space-md) + env(safe-area-inset-right));bottom:calc(var(--hm-space-md) + env(safe-area-inset-bottom));min-width:44px;min-height:44px;padding:var(--hm-space-2xs) var(--hm-space-xs);font-family:var(--hm-font-ui);font-size:var(--hm-text-xs);letter-spacing:var(--hm-track-wide);color:var(--hm-muted);background:color-mix(in oklab, var(--hm-steel-0) 60%, transparent);border:var(--hm-rule) solid var(--hm-hairline);cursor:pointer;transition:color var(--hm-dur-short) var(--hm-ease-out);position:absolute}.debug-toggle:hover{color:var(--hm-ink)}.debug-toggle[aria-pressed=true]{color:var(--hm-void);background:var(--hm-accent);border-color:var(--hm-accent)}.debug-toggle:focus-visible{outline:var(--hm-rule-thick) solid var(--hm-focus);outline-offset:3px}.screen.builder{background:0 0}.bench-stage{inset:0 var(--bench-panel-w) 0 0;cursor:grab;touch-action:none;position:absolute}.bench-stage:active{cursor:grabbing}.stage-head{top:calc(var(--hm-space-lg) + env(safe-area-inset-top));left:calc(var(--hm-space-lg) + env(safe-area-inset-left));gap:var(--hm-space-2xs);pointer-events:none;display:grid;position:absolute}.stage-kicker{font-size:var(--hm-text-xs);letter-spacing:var(--hm-track-mega);color:var(--accent)}.stage-name{font-family:var(--hm-font-display);letter-spacing:var(--hm-track-tight);color:var(--hm-ink);text-shadow:0 2px 18px var(--hm-shadow);font-size:clamp(1.75rem,4vw,3rem);line-height:1}.stage-tools{left:calc(var(--hm-space-lg) + env(safe-area-inset-left));bottom:calc(var(--hm-space-2xl) + env(safe-area-inset-bottom));gap:var(--hm-space-xs);display:flex;position:absolute}.stage-hint{left:calc(var(--hm-space-lg) + env(safe-area-inset-left));bottom:calc(var(--hm-space-md) + env(safe-area-inset-bottom));font-size:var(--hm-text-2xs);letter-spacing:var(--hm-track-wide);color:var(--hm-muted);pointer-events:none;position:absolute}.stage-hint b{color:var(--hm-ink-2);font-weight:600}.btn.quiet{border-top-color:var(--hm-steel-3);color:var(--hm-ink-2)}.btn.quiet[aria-pressed=true]{color:var(--hm-void);background:var(--accent);border-top-color:var(--hm-ink)}.btn.fight{border-top-color:var(--accent);color:var(--hm-void);background:var(--accent)}.bench-panel{top:calc(var(--hm-space-xl) + env(safe-area-inset-top));right:calc(var(--hm-space-md) + env(safe-area-inset-right));bottom:calc(var(--hm-space-md) + env(safe-area-inset-bottom));width:calc(var(--bench-panel-w) - var(--hm-space-md) * 2);max-width:520px;animation:seat-up var(--hm-dur-long) backwards var(--hm-ease-out);position:absolute}.bench-panel .plate-face{gap:var(--hm-space-xs);height:100%;padding:var(--hm-space-md);border-top:var(--hm-rule-thick) solid var(--accent);flex-direction:column;display:flex;overflow:hidden}.bp-head{justify-content:space-between;align-items:end;gap:var(--hm-space-sm);display:flex}.bp-name{gap:var(--hm-space-3xs);min-width:0;font-size:var(--hm-text-3xs);letter-spacing:var(--hm-track-wide);color:var(--hm-muted);flex:1;display:grid}.bp-name input{width:100%;padding:var(--hm-space-2xs) var(--hm-space-xs);font-family:var(--hm-font-display);font-size:var(--hm-text-xl);letter-spacing:var(--hm-track-tight);color:var(--hm-ink);background:var(--hm-void);box-shadow:inset 0 0 0 var(--hm-rule) var(--hm-bevel-dim);-webkit-user-select:text;user-select:text;border:0}.bp-name input:focus-visible{outline:var(--hm-rule-thick) solid var(--hm-focus);outline-offset:1px}.bp-spin{padding-bottom:var(--hm-space-2xs);font-size:var(--hm-text-xs);letter-spacing:var(--hm-track-wide);color:var(--rim);flex:none}.bp-tabs{border-bottom:var(--hm-rule) solid var(--hm-hairline);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.bp-tabs button{min-height:36px;padding:var(--hm-space-2xs) 0;font-family:var(--hm-font-ui);font-size:var(--hm-text-xs);letter-spacing:.12em;color:var(--hm-muted);border:0;border-bottom:var(--hm-rule-thick) solid transparent;cursor:pointer;transition:color var(--hm-dur-micro) var(--hm-ease-out);background:0 0;font-weight:600}.bp-tabs button:hover{color:var(--hm-ink)}.bp-tabs button.on{color:var(--hm-ink);border-bottom-color:var(--accent)}.bp-tabs button:focus-visible{outline:var(--hm-rule-thick) solid var(--hm-focus);outline-offset:-2px}.bp-owns{font-size:var(--hm-text-xs);color:var(--hm-ink-2);margin:0;line-height:1.5}.bp-list{align-content:start;gap:var(--hm-space-2xs);overscroll-behavior:contain;min-height:120px;padding-right:var(--hm-space-2xs);flex:auto;display:grid;overflow-y:auto}.bp-list .part{gap:var(--hm-space-sm);padding:var(--hm-space-xs);text-align:left;color:var(--hm-ink);background:color-mix(in oklab, var(--hm-void) 70%, transparent);border:0;border-left:var(--hm-rule-thick) solid transparent;box-shadow:inset 0 0 0 var(--hm-rule) var(--hm-hairline);cursor:pointer;transition:background-color var(--hm-dur-micro) var(--hm-ease-out);grid-template-columns:52px minmax(0,1fr);align-items:center;font-family:inherit;display:grid}.bp-list .part:hover,.bp-list .part.armed{background:var(--hm-steel-1)}.bp-list .part.fitted{border-left-color:var(--accent);background:color-mix(in oklab, var(--accent) 12%, var(--hm-steel-0))}.bp-list button:focus-visible{outline:var(--hm-rule-thick) solid var(--hm-focus);outline-offset:-2px}.part-art{width:52px;height:52px;display:block}.part-body{gap:3px;min-width:0;display:grid}.part-head{align-items:baseline;gap:var(--hm-space-xs);flex-wrap:wrap;display:flex}.part-head b{font-family:var(--hm-font-display);font-size:var(--hm-text-lg);letter-spacing:.04em;font-weight:400}.part-head em{font-style:normal;font-size:var(--hm-text-3xs);letter-spacing:var(--hm-track-wide)}.part-head .mat{color:var(--hm-ink-2);box-shadow:inset 3px 0 0 var(--mat,var(--hm-steel-3)), inset 0 0 0 var(--hm-rule) var(--hm-hairline);padding:1px 5px}.part-head .tag{color:var(--accent)}.part-blurb{font-size:var(--hm-text-xs);color:var(--hm-ink-2);line-height:1.4}.part-spec{gap:2px var(--hm-space-sm);font-size:var(--hm-text-3xs);letter-spacing:.1em;color:var(--hm-muted);flex-wrap:wrap;display:flex}.bp-list.swatches{grid-template-columns:repeat(3,minmax(0,1fr))}.swatch{gap:var(--hm-space-2xs);padding:var(--hm-space-xs);color:var(--hm-ink-2);background:color-mix(in oklab, var(--hm-void) 70%, transparent);box-shadow:inset 0 0 0 var(--hm-rule) var(--hm-hairline);cursor:pointer;border:0;font-family:inherit;display:grid}.swatch:hover{background:var(--hm-steel-1)}.swatch.fitted{box-shadow:inset 0 0 0 var(--hm-rule-thick) var(--accent);color:var(--hm-ink)}.swatch .chips{grid-template-columns:2fr 1.4fr 1fr;height:22px;display:grid}.swatch .chips i{display:block}.sw-name{font-size:var(--hm-text-3xs);letter-spacing:var(--hm-track-wide)}.bp-stats{gap:var(--hm-space-2xs) var(--hm-space-md);padding-top:var(--hm-space-xs);border-top:var(--hm-rule) solid var(--hm-hairline);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.bstat{align-items:center;gap:var(--hm-space-xs);font-size:var(--hm-text-3xs);letter-spacing:.14em;color:var(--hm-muted);grid-template-columns:56px minmax(0,1fr);display:grid}.bstat-track{background:var(--hm-void);height:6px;box-shadow:inset 0 0 0 var(--hm-rule) var(--hm-bevel-dim);position:relative}.bstat-track i{display:block;position:absolute;top:0;bottom:0}.bstat-track .now{background:var(--accent);transform-origin:0;width:100%;transition:transform var(--hm-dur-short) var(--hm-ease-out);left:0}.bstat-track .gain{background:var(--hm-hull)}.bstat-track .loss{background:var(--hm-danger)}.bp-readouts{gap:var(--hm-space-2xs) var(--hm-space-sm);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.ro{min-width:0;display:grid}.ro i{font-style:normal;font-size:var(--hm-text-3xs);letter-spacing:var(--hm-track-wide);color:var(--hm-muted)}.ro b{font-size:var(--hm-text-sm);color:var(--hm-ink);white-space:nowrap;font-weight:600}.ro s{font-size:var(--hm-text-3xs);color:var(--hm-muted)}.ro.up b,.ro.down b,.ro.flip b{color:var(--hm-signal)}.ro.up b:after{content:" ▲";font-size:.7em}.ro.down b:after{content:" ▼";font-size:.7em}.bp-foot{gap:var(--hm-space-xs);padding-top:var(--hm-space-xs);border-top:var(--hm-rule) solid var(--hm-hairline);display:grid}.bp-status{font-size:var(--hm-text-3xs);letter-spacing:var(--hm-track-wide);color:var(--hm-muted)}.bp-status[data-tone=ok]{color:var(--hm-hull)}.bp-status[data-tone=warn]{color:var(--hm-signal)}.bp-actions{gap:var(--hm-space-xs);flex-wrap:wrap;display:flex}.bp-actions .fight{margin-left:auto}.bp-actions [hidden]{display:none}@media (orientation:portrait) and (width<=820px){.bench-stage{inset:0 0 var(--bench-panel-h) 0}.bench-panel{top:auto;left:calc(var(--hm-space-xs) + env(safe-area-inset-left));right:calc(var(--hm-space-xs) + env(safe-area-inset-right));bottom:calc(var(--hm-space-xs) + env(safe-area-inset-bottom));width:auto;max-width:none;height:calc(var(--bench-panel-h) - var(--hm-space-lg))}.bench-panel .plate-face{padding:var(--hm-space-sm);gap:var(--hm-space-2xs)}.bp-readouts,.part-blurb{display:none}.stage-tools{bottom:var(--hm-space-lg)}.stage-hint{display:none}}@media (prefers-reduced-motion:reduce){.bench-panel{animation:none}.bstat-track .now{transition:none}}.disc-slot{display:grid;position:relative}.disc-mod{top:var(--hm-space-sm);right:var(--hm-space-sm);z-index:1;min-height:32px;padding:var(--hm-space-2xs) var(--hm-space-xs);font-family:var(--hm-font-ui);font-size:var(--hm-text-3xs);letter-spacing:var(--hm-track-wide);color:var(--hm-ink-2);background:color-mix(in oklab, var(--hm-steel-0) 80%, transparent);border:var(--hm-rule) solid var(--hm-hairline);cursor:pointer;font-weight:600;position:absolute}.disc-mod:hover{color:var(--hm-void);background:var(--accent);border-color:var(--accent)}.disc-mod:focus-visible{outline:var(--hm-rule-thick) solid var(--hm-focus);outline-offset:2px}.disc-card .custom-mark{font-size:var(--hm-text-3xs);letter-spacing:var(--hm-track-wide);color:var(--accent)}.disc-card.new-build{flex-direction:column;display:flex}.disc-card.new-build .plate{flex-direction:column;flex:1;display:flex}.disc-card.new-build .plate-face{align-content:center;place-items:center;gap:var(--hm-space-sm);min-height:240px;padding-bottom:var(--hm-space-sm);border-top-style:dashed;flex:1;display:grid}.new-build .plus{font-family:var(--hm-font-display);color:var(--accent);font-size:3.5rem;line-height:1}.new-build .new-label{font-family:var(--hm-font-display);font-size:var(--hm-text-xl);letter-spacing:var(--hm-track-wide)}.new-build .new-sub{text-align:center;max-width:22ch;font-size:var(--hm-text-xs);color:var(--hm-ink-2);line-height:1.5}.disc-grid.saved{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}@media (width<=820px){.disc-grid.saved{grid-template-columns:repeat(auto-fill,minmax(148px,1fr))}}.select-section{width:min(1060px,100%);margin:var(--hm-space-md) 0 var(--hm-space-xs);font-size:var(--hm-text-xs);letter-spacing:var(--hm-track-mega);color:var(--hm-muted)}*{box-sizing:border-box}html,body{overscroll-behavior:none;background:var(--hm-void);height:100%;color:var(--hm-ink);font-family:var(--hm-font-ui);font-size:var(--hm-text-md);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;margin:0;overflow:clip hidden}#app{position:fixed;inset:0}#stage{cursor:crosshair;touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}#overlay{pointer-events:none;position:absolute;inset:0}.scanlines,.grain{pointer-events:none;z-index:var(--hm-z-grade);position:absolute;inset:0}.scanlines{opacity:.4;mix-blend-mode:multiply;background:repeating-linear-gradient(oklch(0% 0 0/.22) 0 1px,#0000 1px 3px)}.grain{opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E")}@media (width<=820px){.grain{display:none}.scanlines{opacity:.28}}.portrait{aspect-ratio:1;transform-origin:50%;width:100%;height:auto;animation:portrait-spin var(--spin) linear infinite;display:block;overflow:visible}@keyframes portrait-spin{to{transform:rotate(calc(var(--dir) * 360deg))}}.p-glow{fill:none;stroke:var(--accent);stroke-width:5px;opacity:.28;filter:blur(5px)}.p-body{fill:color-mix(in oklab, var(--accent) 26%, var(--hm-void));stroke:var(--accent);stroke-width:1.6px;stroke-linejoin:round}.p-forge{fill:var(--hm-void);stroke:var(--hm-hairline);stroke-width:1px}.p-emblem{fill:var(--rim)}@media (prefers-reduced-motion:reduce){.portrait{animation-duration:calc(var(--spin) * 4)}}
