/*! For license information please see main.js.LICENSE.txt */
@font-face { font-family: 'Chakra Petch'; font-style: normal; font-weight: 400; font-display: swap; src: url(../chakra-petch-v11-latin-ext-regular.woff2) format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF }
@font-face { font-family: 'Chakra Petch'; font-style: normal; font-weight: 400; font-display: swap; src: url(../chakra-petch-v11-latin-regular.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD }
@font-face { font-family: 'Chakra Petch'; font-style: normal; font-weight: 500; font-display: swap; src: url(../chakra-petch-v11-latin-ext-500.woff2) format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF }
@font-face { font-family: 'Chakra Petch'; font-style: normal; font-weight: 500; font-display: swap; src: url(../chakra-petch-v11-latin-500.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD }
@font-face { font-family: 'Chakra Petch'; font-style: normal; font-weight: 600; font-display: swap; src: url(../chakra-petch-v11-latin-ext-600.woff2) format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF }
@font-face { font-family: 'Chakra Petch'; font-style: normal; font-weight: 600; font-display: swap; src: url(../chakra-petch-v11-latin-600.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD }
@font-face { font-family: 'Chakra Petch'; font-style: normal; font-weight: 700; font-display: swap; src: url(../chakra-petch-v11-latin-ext-700.woff2) format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF }
@font-face { font-family: 'Chakra Petch'; font-style: normal; font-weight: 700; font-display: swap; src: url(../chakra-petch-v11-latin-700.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD }
@font-face { font-family: 'Share Tech Mono'; font-style: normal; font-weight: 400; font-display: swap; src: url(../share-tech-mono-v11-latin-regular.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD }
/*  TODO: clean up  */
:root { --th-club: 18px; --th-race: 0 0 0 1px var(--th-frame-nr), 0 0 24px -4px rgba(255, 46, 136, 0.6); --th-set: 1px; --th-wrap-vt: clamp(16px, 2.4vw, 36px); --th-gold-yw: 14px; --th-dock-oy: 12px; --th-base: clamp(44px, 4.6vw, 68px); --th-dock: rgba(255, 46, 136, 0.12); --th-ring-f4: 2px; --th-bonus: hsl(333 100% 71%); --th-inner-q2: 15px; --th-frame-nr: hsl(334 100% 59%); --th-star: 0deg; --th-wrap-6f: hsl(264 45% 4%)}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scrollbar-color: hsl(252 35% 17%) transparent; }
body { margin: 0; color: hsl(251 100% 97%); font: 400 var(--th-inner-q2)/1.55 "Chakra Petch", "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; background:
    radial-gradient(1200px 600px at 110% -10%, rgba(255, 46, 136, 0.1), transparent 60%),
    radial-gradient(900px 500px at -10% 110%, rgba(34, 228, 255, 0.07), transparent 60%),
    hsl(249 37% 4%); background-attachment: fixed }
body::after { inset: 0; position: fixed; opacity: 0.5; z-index: 100; mix-blend-mode: multiply; pointer-events: none; content: ""; background: repeating-linear-gradient(0deg, rgba(0, 0, 0, 0.18) 0 1px, transparent 1px 3px) }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button { padding: 0; font: inherit; color: inherit; border: 0; background: none; cursor: pointer; }
h1, h2, h3, h4, p { margin: 0; }
ul { margin: 0; padding: 0; list-style: none; }
::selection { background: var(--th-frame-nr); color: #fff; }
:focus-visible { outline-offset: 3px; outline: 1px solid hsl(187 100% 57%); box-shadow: 0 0 12px hsl(187 100% 57%); }
[data-strip-panel] { font-size: 1.2em; line-height: 1; flex: none; }
.club-crown { letter-spacing: 0.02em; font-variant-numeric: tabular-nums; font-family: "Share Tech Mono", ui-monospace, monospace; }
[data-field-tray] { height: 1px; width: 1px; clip: rect(0 0 0 0); position: absolute; overflow: hidden; }
.core-step { clip-path: polygon(12px 0, 100% 0, 100% calc(100% - 12px), calc(100% - 12px) 100%, 0 100%, 0 12px); }
.pane-card { display: inline-flex; height: var(--th-unit-4v); clip-path: polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0 100%); white-space: nowrap; transition: background 180ms, color 180ms, filter 180ms; position: relative; justify-content: center; align-items: center; text-transform: uppercase; gap: 0.625rem; letter-spacing: 0.12em; --th-unit-4v: 42px; font: 600 var(--th-gold-yw)/1 "Chakra Petch", "Segoe UI", sans-serif; padding: 0 1.5rem }
.inner-spin { --th-unit-4v: 36px; padding: 0 1.125rem; font-size: 0.75rem; }
[data-ace-media] { font-size: 0.9375rem; padding: 0 2rem; --th-unit-4v: 52px; }
.label-block { background: var(--th-frame-nr); color: #fff; filter: drop-shadow(0 0 10px rgba(255, 46, 136, 0.55)); }
.label-block:hover { background: var(--th-bonus); filter: drop-shadow(0 0 16px rgba(255, 46, 136, 0.9)); }
[data-spin-head] { background: linear-gradient(hsl(249 37% 4%), hsl(249 37% 4%)) padding-box, linear-gradient(90deg, hsl(187 100% 57%), var(--th-frame-nr)) border-box; border: 1px solid transparent; color: hsl(251 100% 97%); }
[data-spin-head]:hover { color: hsl(187 100% 57%); }
.gold-base { display: inline-grid; place-items: center; width: 2.5rem; height: 2.5rem; color: hsl(249 26% 71%); border: 1px solid rgba(160, 140, 255, 0.24); transition: color 180ms, border-color 180ms, box-shadow 180ms }
.gold-base:hover { box-shadow: 0 0 12px -2px hsl(187 100% 57%); color: hsl(187 100% 57%); border-color: hsl(187 100% 57%); }
.tile-foot { color: hsl(249 17% 48%); height: 2.625rem; border: 1px solid rgba(160, 140, 255, 0.24); gap: 0.625rem; background: rgba(10, 8, 20, 0.7); padding: 0 0.75rem; transition: border-color 180ms, box-shadow 180ms; align-items: center; display: flex }
.tile-foot:focus-within { border-color: hsl(187 100% 57%); box-shadow: 0 0 14px -4px hsl(187 100% 57%); color: hsl(187 100% 57%); }
.tile-foot input { flex: 1; min-width: 0; height: 100%; background: none; border: 0; outline: 0; color: hsl(251 100% 97%); font: inherit; font-size: var(--th-gold-yw); }
.tile-foot input::placeholder { color: hsl(249 17% 48%); }
.tile-foot kbd { border: 1px solid rgba(34, 228, 255, 0.35); font: 400 11px/1 "Share Tech Mono", ui-monospace, monospace; padding: 0.25rem 0.375rem; color: hsl(187 100% 57%); }
/*  components  */
[data-spin-field] { display: inline-flex; align-items: center; gap: 0.625rem; font: 400 var(--th-dock-oy)/1 "Share Tech Mono", ui-monospace, monospace; letter-spacing: 0.18em; text-transform: uppercase; color: hsl(187 100% 57%); }
[data-spin-field]::before { content: "//"; color: var(--th-frame-nr); letter-spacing: 0; }
[data-panel-main] { font-weight: 700; letter-spacing: 0.02em; line-height: 0.98; font-family: "Chakra Petch", "Arial Narrow", sans-serif; text-transform: uppercase; }
[data-panel-main] em { text-shadow: 0 0 18px rgba(255, 46, 136, 0.65), 0 0 2px rgba(255, 255, 255, 0.4); color: var(--th-frame-nr); font-style: normal; }
[data-dot-tab] { padding: 0 0.4375rem; height: 1.25rem; font: 400 11px/1 "Share Tech Mono", ui-monospace, monospace; box-shadow: 0 0 10px -1px hsl(187 100% 57%); color: hsl(249 37% 4%); align-items: center; letter-spacing: 0.08em; display: inline-flex; text-transform: uppercase; background: hsl(187 100% 57%) }
.dot-tile { color: #fff; background: var(--th-frame-nr); box-shadow: 0 0 10px -1px var(--th-frame-nr); }
.reel-cell { background: hsl(39 100% 56%); color: hsl(249 37% 4%); box-shadow: 0 0 10px -1px hsl(39 100% 56%); }
.meta-grid { position: relative; background: linear-gradient(180deg, rgba(34, 228, 255, 0.03), transparent 40%), hsl(251 38% 8%); border: 1px solid rgba(160, 140, 255, 0.24); border-radius: 2px; box-shadow: inset 0 1px 0 rgba(34, 228, 255, 0.18) }
.meta-pill { background: hsl(251 37% 12%); box-shadow: 0 0 30px -6px rgba(34, 228, 255, 0.55), inset 0 0 30px -10px rgba(34, 228, 255, 0.5); border: 1px solid hsl(187 100% 57%); overflow: hidden; position: relative; clip-path: polygon(24px 0, 100% 0, 100% calc(100% - 24px), calc(100% - 24px) 100%, 0 100%, 0 24px) }
.meta-pill img { width: 100%; height: 100%; object-fit: cover; }
.core-lobby { background: hsl(187 100% 57%); height: 0.4375rem; box-shadow: 0 0 8px hsl(187 100% 57%); flex: none; animation: neon-flicker 2.4s infinite; display: inline-block; width: 0.4375rem; }
@keyframes neon-flicker { 0%, 92%, 100% { opacity: 1; } 94% { opacity: 0.3; } 96% { opacity: 0.9; } 97% { opacity: 0.2; } }
[data-club-outer] { display: grid; gap: 0.25rem; }
[data-star-ring] { font: 400 11px/1 "Share Tech Mono", ui-monospace, monospace; letter-spacing: 0.14em; text-transform: uppercase; color: hsl(249 17% 48%); }
[data-stack-zone] { font: 400 22px/1 "Share Tech Mono", ui-monospace, monospace; color: hsl(187 100% 57%); text-shadow: 0 0 10px rgba(34, 228, 255, 0.45); }
.game-star { color: hsl(249 26% 71%); letter-spacing: 0.14em; text-transform: uppercase; gap: 0.5rem; font: 400 var(--th-dock-oy)/1 "Share Tech Mono", ui-monospace, monospace; transition: color 180ms; align-items: center; display: inline-flex; }
.game-star .club-crown { color: var(--th-frame-nr); }
.game-star:hover { color: hsl(187 100% 57%); }
.group-stack { display: flex; gap: 0.875rem; margin-bottom: 1.25rem; align-items: center; }
.top-ring { font: 400 var(--th-dock-oy)/1 "Share Tech Mono", ui-monospace, monospace; color: var(--th-frame-nr); }
.top-ring::before { content: "// "; color: hsl(249 17% 48%); }
.group-front { gap: 0.625rem; align-items: center; text-transform: uppercase; font: 700 32px/1 "Chakra Petch", "Arial Narrow", sans-serif; white-space: nowrap; letter-spacing: 0.02em; display: flex; }
.group-front [data-strip-panel] { color: hsl(187 100% 57%); font-size: 1.625rem; filter: drop-shadow(0 0 6px hsl(187 100% 57%)); }
[data-copy-zone] { flex: 1; min-width: 1.5rem; height: 2px; background: linear-gradient(90deg, var(--th-frame-nr), rgba(34, 228, 255, 0.4) 40%, transparent); box-shadow: 0 0 8px rgba(255, 46, 136, 0.5); }
.gold-foot { display: flex; gap: 0.375rem; }
.group-stack .game-star { white-space: nowrap; }
.deck-label { display: grid; place-items: center; width: 2.125rem; height: 2.125rem; border: 1px solid rgba(160, 140, 255, 0.24); color: hsl(249 26% 71%); transition: color 180ms, border-color 180ms, box-shadow 180ms, opacity 180ms; }
.deck-label:hover { box-shadow: 0 0 10px -2px hsl(187 100% 57%); border-color: hsl(187 100% 57%); color: hsl(187 100% 57%); }
.deck-label[disabled] { opacity: 0.25; pointer-events: none; }
@media (max-width: 720px) { .group-front { font-size: 1.5rem; white-space: normal; min-width: 0; }
  .top-ring, .gold-foot { display: none; }
  .group-stack .game-star { flex: none; } }
[data-tile-area] { display: grid; grid-auto-flow: column; grid-auto-columns: 172px; gap: 0.75rem; padding: 2px 2px 0.5rem; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none; }
[data-tile-area]::-webkit-scrollbar { display: none; }
[data-tile-area] > * { scroll-snap-align: start; }
[data-stage-side] { display: grid; grid-template-columns: minmax(0, 1fr); min-width: 0; gap: 0.5rem; }
.tray-hero { background: hsl(251 37% 12%); overflow: hidden; aspect-ratio: var(--th-note, 3 / 2); position: relative; border: 1px solid rgba(160, 140, 255, 0.12); clip-path: polygon(0 0, calc(100% - 14px) 0, 100% 14px, 100% 100%, 0 100%); transition: border-color 180ms; }
.tray-hero::after { background: repeating-linear-gradient(0deg, rgba(0, 0, 0, 0.22) 0 1px, transparent 1px 3px); inset: 0; opacity: 0; transition: opacity 180ms; position: absolute; content: ""; }
.tray-hero img { transition: transform 500ms cubic-bezier(0.2, 0.8, 0.2, 1), filter 180ms; object-fit: cover; height: 100%; width: 100%; }
[data-rail-shape] { z-index: 1; top: 0.5rem; left: 0.5rem; position: absolute; }
[data-stage-side]:hover .tray-hero { border-color: var(--th-frame-nr); }
[data-stage-side]:hover .tray-hero img { transform: scale(1.06); filter: saturate(1.25) contrast(1.05); }
[data-stage-side]:hover .tray-hero::after { opacity: 1; }
[data-box-tray] { font-size: var(--th-gold-yw); white-space: nowrap; text-overflow: ellipsis; font-weight: 600; overflow: hidden; }
[data-stage-side]:hover [data-box-tray] { color: var(--th-bonus); }
[data-hero-hero] { gap: 0.5rem; display: flex; align-items: center; font-size: var(--th-dock-oy); margin-top: 2px; justify-content: space-between; color: hsl(249 17% 48%); }
[data-hero-hero] > span { text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }
.rear-step { flex: none; gap: 0.375rem; display: inline-flex; align-items: center; font-family: "Share Tech Mono", ui-monospace, monospace; color: hsl(187 100% 57%); }
[data-game-top] { font-size: var(--th-mark); white-space: nowrap; color: hsl(251 100% 97%); --th-mark: 34px; gap: 0.3em; display: inline-flex; text-decoration: none; align-items: center; line-height: 1 }
[data-grid-dice] { --th-mark: 44px; }
.crown-seal { letter-spacing: 0.02em; line-height: 1; font-weight: 700; font-family: "Chakra Petch", "Arial Narrow", sans-serif; font-size: 0.74em; text-transform: uppercase }
[data-lead-body] { position: relative; flex: none; }
@media (max-width: 720px) { .offer-dock [data-game-top] { --th-mark: 28px; } }
[data-box-race] { height: 0.9em; padding: 0.12em; width: 0.9em; box-shadow: 0.07em 0.07em 0 0 color-mix(in srgb, var(--th-frame-nr) 55%, #000); transform: rotate(calc(-8deg - var(--th-star) * 2)); grid-template-rows: repeat(3, 1fr); border-radius: max(0.06em, calc(2px * 0.02 + 0.14em)); background: var(--th-frame-nr); grid-template-columns: repeat(3, 1fr); display: grid }
[data-box-race] i { display: grid; place-items: center; }
[data-box-race] i.foot-head::before { width: 0.17em; content: ""; height: 0.17em; background: var(--th-wrap-6f); border-radius: 50% }
.offer-dock {
  padding: 0 var(--th-wrap-vt) 0 18px; top: 0; align-items: center;
  position: sticky;
  display: flex;
  border-bottom: var(--th-set) solid rgba(160, 140, 255, 0.12);
  background: color-mix(in srgb, hsl(249 37% 4%) 88%, transparent); gap: 1.5rem;
  height: 66px; z-index: 30;
  backdrop-filter: blur(12px) }
.card-band { display: flex; align-items: center; gap: 0.625rem; margin-left: auto; }
.crown-media { padding: 1.125rem 0.875rem 2rem; }
[data-promo-vip] { list-style: none; gap: 0.25rem; padding: 0; flex-direction: column; margin: 0; display: flex; }
[data-head-core] { grid-template-columns: 1fr 1fr; gap: 0.5rem; display: grid; margin-bottom: 1.125rem; }
/*  utilities  */
.wrap-area {
  display: grid; justify-items: center; gap: 0.375rem;
  padding: 0.625rem 0.375rem 0.75rem;
  background: hsl(251 38% 8%);
  border: var(--th-set) solid rgba(160, 140, 255, 0.12);
  border-radius: 2px;
  box-shadow: none;
  font-size: 0.6875rem; letter-spacing: 0.08em; text-transform: uppercase; color: hsl(249 26% 71%);
  transition: border-color 180ms, color 180ms, transform 180ms cubic-bezier(0.2, 0.8, 0.2, 1) }
.promo-outer { display: grid; place-items: center; width: 3.25rem; height: 3.25rem; border-radius: 50%; font-size: 1.75rem; color: var(--th-wrap-6f); background: radial-gradient(circle at 35% 30%, var(--th-bonus), var(--th-frame-nr) 70%); box-shadow: 0 6px 16px -8px var(--th-frame-nr); }
.wrap-area:nth-child(2) .promo-outer { background: radial-gradient(circle at 35% 30%, color-mix(in srgb, hsl(187 100% 57%) 70%, #fff), hsl(187 100% 57%) 70%); box-shadow: 0 6px 16px -8px hsl(187 100% 57%); }
.wrap-area:hover { border-color: var(--th-frame-nr); color: hsl(251 100% 97%); transform: translateY(calc(var(--th-ring-f4) * -1)); }
.link-core {
  margin: 1.375rem 0.625rem 0.5rem;
  color: hsl(249 17% 48%);
  font-size: var(--th-dock-oy); text-transform: uppercase; letter-spacing: 0.18em }
.win-dice {
  position: relative;
  display: flex; align-items: center; gap: 0.75rem;
  height: 2.5rem; padding: 0 0.625rem;
  border-radius: 2px;
  font-size: 0.875rem; color: hsl(249 26% 71%);
  transition: color 180ms, background 180ms }
.win-dice [data-dot-tab] { margin-left: auto; }
.win-dice:hover { color: hsl(251 100% 97%); background: hsl(251 38% 8%); }
.win-dice.slot-dot { color: hsl(251 100% 97%); background: hsl(251 38% 8%); }
.win-dice.slot-dot [data-strip-panel] { color: var(--th-frame-nr); }
.flag-vip { min-width: 0; }
.view-crown {
  display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--th-base);
  max-width: 1200px; margin: 0 auto;
  padding: 28px var(--th-wrap-vt) var(--th-base) }
[data-panel-wrap] { display: none; }
.chip2-win.side-race [data-panel-wrap] { display: block; position: fixed; inset: 0; z-index: 35; background: rgba(0, 0, 0, 0.55); }
[data-edge-panel] {
  position: fixed; left: 0; top: 0; bottom: 0; z-index: 40;
  width: min(300px, 86vw);
  overflow-y: auto;
  background: hsl(249 37% 4%);
  border-right: var(--th-set) solid rgba(160, 140, 255, 0.12);
  transform: translateX(-102%); transition: transform 320ms cubic-bezier(0.2, 0.8, 0.2, 1) }
.chip2-win.side-race [data-edge-panel] { transform: none; }
@media (max-width: 720px) {
  .offer-dock { gap: 0.75rem; padding: 0 1rem 0 0.75rem; }
  .card-band { min-width: 0; }
  .offer-dock .base-tab { display: none; }
  .card-band [data-spin-head] { display: none; } }
@media (max-width: 480px) {
  .offer-dock { gap: 0.5rem; padding-right: 0.625rem; }
  .card-band { gap: 0.375rem; }
  .card-band .pane-card { padding: 0 0.75rem; letter-spacing: 0.02em; } }
.win-media { grid-template-rows: 66px 1fr; grid-template-columns: 244px minmax(0, 1fr); min-height: 100vh; display: grid; grid-template-areas: "top top" "side main" }
.win-media .offer-dock { grid-area: top; }
.win-media .reel-bar { flex: none; min-width: calc(244px - 18px); gap: 1.125rem; align-items: center; display: flex; }
.win-media .base-tab { flex: 1; max-width: 32.5rem; }
.win-media .table-top { top: 66px; border-right: var(--th-set) solid rgba(160, 140, 255, 0.12); height: calc(100vh - 66px); scrollbar-width: thin; background: hsl(249 37% 4%); grid-area: side; overflow-y: auto; position: sticky }
.win-media .flag-vip { grid-area: main; }
@media (max-width: 1080px) { .win-media { grid-template-columns: minmax(0, 1fr); grid-template-areas: "top" "main"; }
  .win-media .reel-bar { width: auto; }
  .win-media .table-top { transition: transform 320ms cubic-bezier(0.2, 0.8, 0.2, 1); position: fixed; width: min(300px, 84vw); left: 0; top: 66px; z-index: 40; transform: translateX(-102%); }
  .win-media.side-race .table-top { transform: none; } }
.hero-cell { color: hsl(249 26% 71%); }
.hero-cell p { margin: 0 0 1em; }
.hero-cell p:last-child { margin-bottom: 0; }
[data-field-slab] { margin: 1.4em 0 0.5em; font-size: var(--th-club); font-weight: 600; color: hsl(251 100% 97%); }
.field-frame, [data-dot-front] { margin: 0 0 1.1em; padding: 0; list-style: none; gap: 0.55em; display: grid; }
.field-frame li { position: relative; padding-left: 1.4em; }
.field-frame li::before {
  content: ""; position: absolute; left: 0.1em; top: 0.62em;
  width: 0.45em; height: 0.45em;
  background: var(--th-frame-nr); border-radius: calc(2px * 0.2);
  transform: rotate(45deg) }
[data-dot-front] { counter-reset: step; }
[data-dot-front] li { counter-increment: step; position: relative; min-height: 1.7em; padding-left: 2.3em; }
[data-dot-front] li::before { height: 1.7em; width: 1.7em; color: var(--th-wrap-6f);
  display: grid; top: -0.05em; left: 0;
  position: absolute;
  background: var(--th-frame-nr);
  font: 600 0.8em/1 "Share Tech Mono", ui-monospace, monospace;
  content: counter(step); place-items: center; border-radius: 50% }
.hero-cell, .hero-cell > * { min-width: 0; }
.grid-label { max-width: 100%; margin: 0 0 1.1em; overflow-x: auto; border: var(--th-set) solid rgba(160, 140, 255, 0.12); border-radius: 2px; }
/*  overrides  */
.grid-label table { width: 100%; border-collapse: collapse; font-size: var(--th-gold-yw); }
.grid-label th, .grid-label td { padding: 0.625rem 0.875rem; text-align: left; border-bottom: var(--th-set) solid rgba(160, 140, 255, 0.12); white-space: nowrap; }
.grid-label tbody tr:last-child > * { border-bottom: 0; }
.grid-label thead th { font-size: var(--th-dock-oy); font-weight: 600; background: hsl(251 38% 8%); letter-spacing: 0.18em; text-transform: uppercase; color: hsl(249 17% 48%); }
.grid-label tbody th { font-weight: 600; color: hsl(251 100% 97%); }
.grid-label caption { caption-side: top; border-bottom: var(--th-set) solid rgba(160, 140, 255, 0.12); text-align: left; padding: 0.625rem 0.875rem; color: var(--th-frame-nr); font-size: var(--th-dock-oy); text-transform: uppercase; font-weight: 600; letter-spacing: 0.18em; }
.grid-label tbody tr:nth-child(even) > * { background: color-mix(in srgb, hsl(251 37% 12%) 45%, transparent); }
[data-view-unit], [data-step-nav] { font-size: 0.75rem; width: 1.375rem; place-items: center; display: inline-grid; border-radius: 50%; height: 1.375rem; font-weight: 700; }
[data-view-unit] { background: color-mix(in srgb, hsl(187 100% 57%) 18%, transparent); color: hsl(187 100% 57%); }
[data-step-nav] { background: color-mix(in srgb, hsl(39 100% 56%) 14%, transparent); color: hsl(39 100% 56%); }
.view-nav tbody th { color: hsl(249 26% 71%); width: 42%; white-space: normal; font-weight: 500; }
.view-nav td { color: hsl(251 100% 97%); font-weight: 600; white-space: normal; }
.bonus-group td, .bonus-group thead th:not(:first-child) { text-align: center; }
.bonus-group tbody td:nth-child(2), .bonus-group thead th:nth-child(2) { background: var(--th-dock) !important; }
.bonus-group thead th:nth-child(2) { color: var(--th-frame-nr); }
@media (max-width: 520px) { .group-stack { flex-wrap: wrap; row-gap: 8px; } }
img.area-slab, img.offer-deal, img.view-jackpot { background-color: var(--th-meta-8u, var(--th-area)); }
.ring-list { --th-note: 3 / 4; position: relative; }
.ring-list img {
  background: linear-gradient(180deg, color-mix(in srgb, var(--th-meta-8u, #222) 72%, hsl(240 19% 5%)) 0 50%, color-mix(in srgb, var(--th-meta-8u, #222) 38%, hsl(240 19% 5%))) !important; object-position: 50% 0 !important;
  object-fit: contain !important }
.ring-list::before { top: 49%; height: 24%; pointer-events: none; left: 0; background: linear-gradient(rgba(0, 0, 0, 0.28), transparent); content: ""; z-index: 1; right: 0; position: absolute; }
[data-rail-reel] { display: grid; position: absolute; left: 0.625rem; right: 0.625rem; z-index: 2; color: #fff; bottom: 0.75rem; pointer-events: none; text-shadow: 0 1px 6px rgba(0, 0, 0, 0.45); gap: 2px; }
.field-stack { letter-spacing: 0.02em; text-transform: uppercase; line-height: 1.05; overflow: hidden; font-weight: 700; -webkit-box-orient: vertical; font-family: "Chakra Petch", "Arial Narrow", sans-serif; font-size: 1.0625rem; display: -webkit-box; -webkit-line-clamp: 2; }
.seal-step { font-size: 0.6875rem; opacity: 0.78; }
.tray-hero.ring-list + [data-win-spin], .tray-hero.ring-list + .chip-pill { display: none; }
img.zone-side {
  background: none !important; border: 0 !important; border-radius: 0 !important; padding: 0 !important;
  box-shadow: none !important; mask-image: none !important }
[data-band-live] {
  position: relative; min-height: var(--th-outer, 340px); align-self: stretch;
  width: 100%; justify-self: center;
  pointer-events: none }
[data-band-live] [data-grid-offer] {
  position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
  width: auto; height: auto; max-height: 100%; max-width: 116%;
  object-fit: contain; object-position: 50% 100%;
  filter: drop-shadow(0 18px 26px rgba(0, 0, 0, 0.35)) }
@media (max-width: 820px) {
  [data-band-live] { align-self: auto; min-height: var(--th-offer-y4, 260px); }
  [data-band-live] [data-grid-offer] { object-position: 50% 100%; } }
img.spin-view { filter: var(--th-field-t2, none); border-radius: 0; object-fit: contain; }
[data-core-gold] { display: inline-flex; align-items: center; gap: 0.5em; line-height: 1; vertical-align: middle; }
[data-core-gold] svg { height: 1.6em; max-width: 3em; width: auto; flex: none; }
[data-club-step] { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
[data-pill-main] { gap: 0.75rem; display: inline-flex; text-transform: uppercase; letter-spacing: 0.04em; font-size: 0.75rem; align-items: center; }
[data-pill-main] a { color: hsl(249 26% 71%); text-decoration: none; }
[data-pill-main] a:hover { color: var(--th-frame-nr); }
[data-pill-main] a.slot-dot { color: hsl(251 100% 97%); font-weight: 600; }
[data-gold-stage] { display: block; }
.ace-pill { color: var(--th-frame-nr); }
.promo-tile {
  font-family: var(--th-dice); margin-top: 0.5em; opacity: 0.72; font-weight: 600; font-size: clamp(12px, 0.22em, 17px); text-transform: uppercase;
  letter-spacing: 0.18em;
  display: block; color: inherit; line-height: 1.2 }
.ace-crest { display: block; font-size: clamp(22px, 2.4vw, 38px); font-weight: 700;
  font-family: "Chakra Petch", "Arial Narrow", sans-serif; line-height: 1.05;
  margin: 0;
  letter-spacing: 0.02em; text-transform: uppercase }
.feature-media { font-style: normal; color: var(--th-frame-nr); }
.line-lead { color: hsl(249 17% 48%); display: inline-flex; align-items: baseline; gap: 0.375rem; line-height: 1.3; font-size: var(--th-dock-oy); flex-wrap: wrap; }
.rail-row { letter-spacing: 0.18em; text-transform: uppercase; }
[data-feature-grid] { font-weight: 600; color: hsl(251 100% 97%); }
[data-meta-meta] { color: rgba(255, 255, 255, 0.72); }
[data-meta-meta] [data-feature-grid] { color: #fff; }
.pane-dice { display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center; }
.line-deck { display: inline-flex; align-items: center; color: hsl(249 17% 48%); font-size: var(--th-dock-oy); padding: 0 0.625rem; gap: 0.375rem; border-radius: 2px; height: 1.75rem; transition: color .15s, border-color .15s, background-color .15s; }
.line-deck:hover { color: hsl(251 100% 97%); }
.line-deck [data-strip-panel] { font-size: 1.25em; }
[data-cell-lobby] .line-deck { background: hsl(250 40% 6%); border-radius: 0px; }
[data-spin-club] .line-deck { border: var(--th-set) solid rgba(160, 140, 255, 0.24); }
[data-spin-club] .line-deck:hover { border-color: rgba(34, 228, 255, 0.55); }
.note-live .line-deck { font-weight: 600; border: var(--th-set) solid rgba(160, 140, 255, 0.12); background: hsl(251 38% 8%); }
[data-top-offer] { gap: 0.25rem 1.125rem; }
[data-top-offer] .line-deck { padding: 0; height: auto; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(34, 228, 255, 0.55); }
[data-line-stage] .line-deck { text-transform: uppercase; border-radius: 0; padding: 0 0.5rem; font: 500 11px/1 "Share Tech Mono", ui-monospace, monospace; border-left: 2px solid var(--th-frame-nr); letter-spacing: 0.08em; }
a[role="button"] { cursor: pointer; }
.inner-ring { display: none; }
@media (max-width: 640px) {
  [data-ring-main] { overflow: visible; border: 0; border-radius: 0; }
  [data-ring-main] thead { display: none; }
  [data-ring-main] table, [data-ring-main] tbody, [data-ring-main] tr { display: block; width: 100%; }
  [data-ring-main] caption { display: block; padding: 0 0 0.5rem; }
  [data-ring-main] tr { margin: 0 0 0.625rem; border: var(--th-set) solid rgba(160, 140, 255, 0.12); border-radius: 2px; overflow: hidden; }
  [data-ring-main] tbody tr > * { background: none; }
  [data-ring-main] tbody th { border-bottom: var(--th-set) solid rgba(160, 140, 255, 0.12); white-space: normal; background: color-mix(in srgb, hsl(251 37% 12%) 70%, transparent); display: block; }
  [data-ring-main] td { justify-content: space-between; align-items: baseline; text-align: right; gap: 0.875rem; white-space: normal; display: flex; }
  [data-ring-main] tbody tr > td:last-child { border-bottom: 0; }
  [data-ring-main] tbody tr:last-child > th { border-bottom: var(--th-set) solid rgba(160, 140, 255, 0.12); }
  [data-ring-main] .inner-ring { display: block; font-size: var(--th-dock-oy); text-transform: uppercase; color: hsl(249 17% 48%); text-align: left; max-width: 48%; letter-spacing: 0.18em; font-weight: 600; flex: none; } }
.head-cell { padding: clamp(28px, 5vw, 64px) 0; }
[data-link-bonus] { max-width: 48.75rem; margin: 0 auto; display: grid; gap: 0.875rem; }
[data-lobby-win] { font-size: clamp(32px, 4.4vw, 52px); line-height: 1.05; }
[data-star-rail] { font-size: var(--th-gold-yw); color: hsl(249 17% 48%); }
[data-club-win] { font-size: var(--th-club); color: hsl(249 26% 71%); }
.box-game { margin-top: 0.5rem; gap: 0.75rem; display: grid; }
.box-game h2 { font-size: 22px; margin-top: 1.125rem; color: hsl(251 100% 97%); }
[data-row-reel] { margin: 0.5rem 0; list-style: none; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 0.625rem; padding: 0; display: grid; }
[data-row-reel] li { display: grid; gap: 0.25rem; padding: 1rem 1.125rem; border: var(--th-set) solid rgba(160, 140, 255, 0.12); border-radius: 2px; background: hsl(251 38% 8%); }
.ring-chip { font-size: var(--th-dock-oy); text-transform: uppercase; letter-spacing: 0.18em; color: hsl(249 17% 48%); }
[data-star-link] { word-break: break-word; color: hsl(251 100% 97%); font-weight: 600; }