.stack-game { --unit-copy: 44px; }
.crest-menu { font-family: "Gambarino", "Georgia", serif; font-weight: var(--main-reel); text-transform: none; letter-spacing: -0.01em; font-size: 0.74em; line-height: 1 }
.club-crest { position: relative; flex: none; }
@media (max-width: 720px) { .chip2-outer .meta-main { --unit-copy: 28px; } }
.bonus-stage { display: inline-grid; justify-items: center; gap: 0.08em; }
.pane-link { font-family: "Gambarino", "Georgia", serif; letter-spacing: -0.01em; font-weight: var(--main-reel); line-height: 0.95; text-transform: none; font-size: 0.66em }
.inner-copy { display: flex; width: 100%; color: var(--cell-line); align-items: center; font: 700 0.26em/1 "Satoshi", "Segoe UI", Arial, sans-serif; text-transform: uppercase; gap: 0.35em; letter-spacing: 0.36em; padding-left: 0.36em }
.inner-copy::before, .inner-copy::after { content: ""; min-width: 0.8em; background: currentColor; flex: 1; height: 0.12em }
.chip2-outer {
  position: sticky;
  backdrop-filter: blur(12px);
  display: flex;
  background: color-mix(in srgb, var(--feature-card) 88%, transparent); top: 0;
  padding: 0 var(--list-deck) 0 18px; align-items: center; z-index: 30; gap: 1.5rem;
  height: 74px;
  border-bottom: var(--chip2-item) solid var(--tab-item) }
.grid-deal { align-items: center; margin-left: auto; gap: 0.625rem; display: flex; }
.strip-unit { padding: 1.125rem 0.875rem 2rem; }
.spin-lead { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0.25rem; }
.line-box { gap: 0.5rem; grid-template-columns: 1fr 1fr; display: grid; margin-bottom: 1.125rem; }
.outer-field {
  display: grid; justify-items: center; gap: 0.375rem;
  padding: 0.625rem 0.375rem 0.75rem;
  background: rgb(251, 247, 239);
  border: var(--chip2-item) solid var(--tab-item);
  border-radius: var(--dice-copy);
  box-shadow: none;
  font-size: 0.6875rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--bar-deck);
  transition: border-color var(--grid-race), color var(--grid-race), transform var(--grid-race) cubic-bezier(0.25, 0.8, 0.25, 1) }
.bar-unit { place-items: center; width: 3.25rem; color: var(--inner-vip); font-size: 1.75rem; border-radius: 50%; height: 3.25rem; background: radial-gradient(circle at 35% 30%, var(--vip-tile), var(--cell-line) 70%); box-shadow: 0 6px 16px -8px var(--cell-line); display: grid; }
.outer-field:nth-child(2) .bar-unit { background: radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--reel-dice) 70%, #fff), var(--reel-dice) 70%); box-shadow: 0 6px 16px -8px var(--reel-dice); }
.outer-field:hover { border-color: var(--cell-line); transform: translateY(calc(var(--mark-page) * -1)); color: var(--menu-box); }
.seal-field {
  color: rgb(125 132 151); text-transform: uppercase; letter-spacing: var(--row-front);
  font-size: 12px;
  margin: 1.375rem 0.625rem 0.5rem }
.ace-lead {
  display: flex; align-items: center; gap: 0.75rem; color: var(--bar-deck);
  height: 2.5rem;
  position: relative;
  border-radius: var(--front-promo);
  font-size: 0.875rem;
  transition: color var(--grid-race), background var(--grid-race); padding: 0 0.625rem }
.ace-lead .link-jackpot { margin-left: auto; }
.ace-lead:hover { color: var(--menu-box); background: rgb(251, 247, 239); }
.ace-lead.card-outer { color: var(--menu-box); background: rgb(251, 247, 239); }
.ace-lead.card-outer .ring-group { color: var(--cell-line); }
.unit-dock { min-width: 0; }
.card-main { gap: var(--pill-edge); grid-template-columns: minmax(0, 1fr); margin: 0 auto;
  display: grid;
  padding: 28px var(--list-deck) var(--pill-edge);
  max-width: var(--band-bonus, 1440px) }
.card-jackpot { display: none; }
.area-race.tile-deal .card-jackpot { inset: 0; z-index: 35; position: fixed; display: block; background: rgba(0, 0, 0, 0.55); }
.chip2-top { bottom: 0;
  position: fixed;
  border-right: var(--chip2-item) solid var(--tab-item);
  width: min(300px, 86vw);
  background: var(--feature-card); z-index: 40; transition: transform 320ms cubic-bezier(0.25, 0.8, 0.25, 1); left: 0; top: 0;
  overflow-y: auto;
  transform: translateX(-102%) }
.area-race.tile-deal .chip2-top { transform: none; }
@media (max-width: 720px) {
  .chip2-outer { gap: 0.75rem; padding: 0 1rem 0 0.75rem; }
  .grid-deal { min-width: 0; }
  .chip2-outer .offer-pill { display: none; }
  .grid-deal .top-crest { display: none; } }
@media (max-width: 480px) {
  .chip2-outer { gap: 0.5rem; padding-right: 0.625rem; }
  .grid-deal { gap: 0.375rem; }
  .grid-deal .feature-dot { padding: 0 0.75rem; letter-spacing: 0.02em; } }
.outer-list { display: grid; grid-template-columns: calc(var(--meta-tile) + 24px) minmax(0, 1fr); min-height: 100vh; }
.outer-list .seal-offer { position: sticky; top: 0.75rem; display: flex; flex-direction: column; height: calc(100vh - 24px); margin: 0.75rem 0 0.75rem 0.75rem; overflow-y: auto; scrollbar-width: thin; background: rgb(251, 247, 239); border: var(--chip2-item) solid var(--tab-item); border-radius: var(--dice-copy) }
.menu-block { padding: 1.25rem 1.25rem 0.25rem; }
.outer-list .seal-offer .strip-unit { padding-top: 0.875rem; }
.outer-list .seal-offer .ace-lead:hover:not(.card-outer) { background: var(--ring-core); }
.rail-live { display: grid; justify-items: start; gap: 0.5rem; margin: auto 0.875rem 0.875rem; padding: 1rem; border-radius: calc(var(--dice-copy) * 0.7); background: radial-gradient(45% 65% at 80% 55%, rgba(243, 180, 27, 0.35), transparent 70%), var(--ring-core); border: var(--chip2-item) solid var(--tab-item) }
.rail-live :is(strong, b) { font-size: 1.375rem; font-weight: var(--main-reel); }
.hero-set { min-width: 0; }
.outer-list .chip2-outer { background: transparent; backdrop-filter: none; border-bottom: 0; gap: 1rem; }
.strip-star, .live-game { display: none; }
.note-list { flex: 1; max-width: 35rem; }
@media (max-width: 1080px) { .outer-list { grid-template-columns: minmax(0, 1fr); }
  .outer-list .seal-offer { z-index: 40; top: 0; height: calc(100vh - 24px); left: 0; width: min(300px, 86vw); transition: transform 320ms cubic-bezier(0.25, 0.8, 0.25, 1); position: fixed; transform: translateX(calc(-100% - 20px)); }
  .outer-list.tile-deal .seal-offer { transform: none; }
  .strip-star { display: inline-grid; }
  .live-game { display: inline-flex; }
  .outer-list .chip2-outer { background: color-mix(in srgb, var(--feature-card) 90%, transparent); position: sticky; backdrop-filter: blur(12px); border-bottom: var(--chip2-item) solid var(--tab-item); } }
.set-box { color: var(--bar-deck); }
.set-box p { margin: 0 0 1em; }
.set-box p:last-child { margin-bottom: 0; }
.pill-wrap { margin: 1.4em 0 0.5em; font-size: var(--meta-bonus); font-weight: 600; color: var(--menu-box); }
.rail-mark, .step-ring { margin: 0 0 1.1em; padding: 0; display: grid; list-style: none; gap: 0.55em; }
.rail-mark li { position: relative; padding-left: 1.4em; }
.rail-mark li::before { height: 0.45em;
  background: var(--cell-line);
  width: 0.45em;
  transform: rotate(45deg); top: 0.62em; left: 0.1em; position: absolute;
  content: ""; border-radius: calc(var(--front-promo) * 0.2) }
.step-ring { counter-reset: step; }
.step-ring li { position: relative; min-height: 1.7em; padding-left: 2.3em; counter-increment: step; }
.step-ring li::before { height: 1.7em;
  content: counter(step);
  position: absolute; left: 0; top: -0.05em; color: var(--inner-vip);
  display: grid;
  background: var(--cell-line); place-items: center; border-radius: 50%;
  font: 600 0.8em/1 var(--edge-deal); width: 1.7em }
.set-box, .set-box > * { min-width: 0; }
.offer-cell { max-width: 100%; margin: 0 0 1.1em; overflow-x: auto; border: var(--chip2-item) solid var(--tab-item); border-radius: var(--front-promo); }
.offer-cell table { font-size: var(--set-dock); width: 100%; border-collapse: collapse; }
.offer-cell th, .offer-cell td { white-space: nowrap; border-bottom: var(--chip2-item) solid var(--tab-item); text-align: left; padding: 0.625rem 0.875rem; }
.offer-cell tbody tr:last-child > * { border-bottom: 0; }
.offer-cell thead th { font-weight: 600; font-size: 12px; text-transform: uppercase; background: rgb(251, 247, 239); color: rgb(125 132 151); letter-spacing: var(--row-front); }
.offer-cell tbody th { font-weight: 600; color: var(--menu-box); }
.offer-cell caption { padding: 0.625rem 0.875rem; color: var(--cell-line); border-bottom: var(--chip2-item) solid var(--tab-item); font-weight: 600; letter-spacing: var(--row-front); caption-side: top; font-size: 12px; text-align: left; text-transform: uppercase; }
.offer-cell tbody tr:nth-child(even) > * { background: color-mix(in srgb, var(--ring-core) 45%, transparent); }
.feature-base, .field-pane { place-items: center; font-size: 0.75rem; display: inline-grid; width: 1.375rem; height: 1.375rem; border-radius: 50%; font-weight: 700; }
.feature-base { background: color-mix(in srgb, var(--reel-dice) 18%, transparent); color: var(--reel-dice); }
.field-pane { background: color-mix(in srgb, var(--list-bonus) 14%, transparent); color: var(--list-bonus); }
.list-foot tbody th { width: 42%; color: var(--bar-deck); font-weight: 500; white-space: normal; }
.list-foot td { color: var(--menu-box); font-weight: 600; white-space: normal; }
.note-feature td, .note-feature thead th:not(:first-child) { text-align: center; }
.note-feature tbody td:nth-child(2), .note-feature thead th:nth-child(2) { background: var(--star-tile) !important; }
.note-feature thead th:nth-child(2) { color: var(--cell-line); }
@media (max-width: 520px) { .spin-offer { flex-wrap: wrap; row-gap: 8px; } }
img.deck-band, img.deal-group, img.pane-meta { background-color: var(--stack-crest, var(--ring-core)); }
.flag-table { --live-grid: 3 / 4; position: relative; }
.flag-table img {
  background: linear-gradient(180deg, color-mix(in srgb, var(--stack-crest, #222) 72%, rgb(11, 11, 16)) 0 50%, color-mix(in srgb, var(--stack-crest, #222) 38%, rgb(11 11 16))) !important;
  object-fit: contain !important; object-position: 50% 0 !important }
.flag-table::before { content: ""; position: absolute; left: 0; right: 0; top: 49%; height: 24%; z-index: 1; pointer-events: none; background: linear-gradient(rgba(0, 0, 0, 0.28), transparent); }
.link-seal { gap: 2px; right: 0.625rem; left: 0.625rem; color: #fff; display: grid; bottom: 0.75rem; position: absolute; z-index: 2; text-shadow: 0 1px 6px rgba(0, 0, 0, 0.45); pointer-events: none; }
.gold-side { overflow: hidden; display: -webkit-box; text-transform: none; font-size: 1.0625rem; font-family: "Gambarino", "Georgia", serif; font-weight: var(--main-reel); -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-height: 1.05; letter-spacing: -0.01em; }
.grid-seal { font-size: 0.6875rem; opacity: 0.78; }
.slab-group.flag-table + .link-step, .slab-group.flag-table + .step-line { display: none; }
img.vip-slot {
  background: none !important; border: 0 !important; border-radius: 0 !important; padding: 0 !important;
  box-shadow: none !important; mask-image: none !important }
.dock-list {
  pointer-events: none;
  width: 100%;
  position: relative; align-self: stretch; justify-self: center; min-height: var(--label-nav, 340px) }
.dock-list .stage-ace { object-position: 50% 100%; height: auto;
  object-fit: contain; max-width: 116%; top: 50%;
  position: absolute;
  width: auto; left: 50%; transform: translate(-50%, -50%); max-height: 100%;
  filter: drop-shadow(0 18px 26px rgba(0, 0, 0, 0.35)) }
@media (max-width: 820px) {
  .dock-list { align-self: auto; min-height: var(--link-group, 260px); }
  .dock-list .stage-ace { object-position: 50% 100%; } }
img.frame-bonus { filter: var(--line-side, none); border-radius: 0; object-fit: contain; }
.vip-inner { display: inline-flex; align-items: center; gap: 0.5em; line-height: 1; vertical-align: middle; }
.vip-inner svg { flex: none; width: auto; height: 1.6em; max-width: 3em; }
.race-win { position: absolute; width: 1px; clip-path: inset(50%); overflow: hidden; white-space: nowrap; height: 1px; }
.strip-item { letter-spacing: 0.04em; text-transform: uppercase; font-size: 0.75rem; display: inline-flex; gap: 0.75rem; align-items: center; }
.strip-item a { color: var(--bar-deck); text-decoration: none; }
.strip-item a:hover { color: var(--cell-line); }
.strip-item a.card-outer { color: var(--menu-box); font-weight: 600; }
.chip2-promo { display: block; }
.grid-edge { color: var(--cell-line); }
.tab-jackpot { line-height: 1.2;
  display: block; color: inherit; font-size: clamp(12px, 0.22em, 17px); opacity: 0.72; font-weight: 600; margin-top: 0.5em;
  letter-spacing: var(--row-front); text-transform: uppercase;
  font-family: var(--nav-slot) }
.promo-zone {
  margin: 0; display: block;
  font-family: "Gambarino", "Georgia", serif; font-weight: var(--main-reel); text-transform: none;
  letter-spacing: -0.01em; line-height: 1.05; font-size: clamp(22px, 2.4vw, 38px) }
.gold-seal { font-style: normal; color: var(--cell-line); }
.stack-ace { color: rgb(125 132 151); display: inline-flex; font-size: 12px; gap: 0.375rem; align-items: baseline; flex-wrap: wrap; line-height: 1.3; }
.slab-grid { letter-spacing: var(--row-front); text-transform: uppercase; }
.item-dice { font-weight: 600; color: var(--menu-box); }
.rail-game { color: rgba(255, 255, 255, 0.72); }
.rail-game .item-dice { color: #fff; }
.tab-frame { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem; }
.feature-stack { display: inline-flex; align-items: center; gap: 0.375rem; height: 1.75rem; padding: 0 0.625rem; font-size: 12px; color: rgb(125 132 151); border-radius: var(--front-promo); transition: color .15s, border-color .15s, background-color .15s; }
.feature-stack:hover { color: var(--menu-box); }
.feature-stack .ring-group { font-size: 1.25em; }
.main-stack .feature-stack { background: rgb(235, 226, 209); border-radius: var(--note-dice); }
.grid-rail .feature-stack { border: var(--chip2-item) solid rgba(22, 36, 66, 0.26); }
.grid-rail .feature-stack:hover { border-color: var(--set-side); }
.box-crest .feature-stack { border: var(--chip2-item) solid var(--tab-item); font-weight: 600; background: rgb(251, 247, 239); }
.chip-page { gap: 0.25rem 1.125rem; }
.chip-page .feature-stack { padding: 0; height: auto; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--set-side); }
.table-table .feature-stack { text-transform: uppercase; padding: 0 0.5rem; border-radius: 0; font: 500 11px/1 var(--edge-deal); letter-spacing: 0.08em; border-left: 2px solid var(--cell-line); }
a[role="button"] { cursor: pointer; }
.area-label { display: none; }
@media (max-width: 640px) {
  .copy-deal { overflow: visible; border: 0; border-radius: 0; }
  .copy-deal thead { display: none; }
  .copy-deal table, .copy-deal tbody, .copy-deal tr { display: block; width: 100%; }
  .copy-deal caption { display: block; padding: 0 0 0.5rem; }
  .copy-deal tr { margin: 0 0 0.625rem; border: var(--chip2-item) solid var(--tab-item); border-radius: var(--front-promo); overflow: hidden; }
  .copy-deal tbody tr > * { background: none; }
  .copy-deal tbody th { display: block; white-space: normal; border-bottom: var(--chip2-item) solid var(--tab-item); background: color-mix(in srgb, var(--ring-core) 70%, transparent); }
  .copy-deal td { display: flex; align-items: baseline; justify-content: space-between; text-align: right; gap: 0.875rem; white-space: normal; }
  .copy-deal tbody tr > td:last-child { border-bottom: 0; }
  .copy-deal tbody tr:last-child > th { border-bottom: var(--chip2-item) solid var(--tab-item); }
  .copy-deal .area-label { font-size: 12px; text-align: left; text-transform: uppercase; max-width: 48%; flex: none; display: block; font-weight: 600; letter-spacing: var(--row-front); color: rgb(125 132 151); } }
.stage-zone { padding: clamp(28px, 5vw, 64px) 0; }
.chip-side { max-width: 48.75rem; margin: 0 auto; gap: 0.875rem; display: grid; }
.stack-frame { font-size: clamp(32px, 4.4vw, 52px); line-height: 1.05; }
.wrap-list { font-size: var(--set-dock); color: rgb(125 132 151); }
.menu-box { font-size: var(--meta-bonus); color: var(--bar-deck); }
.edge-edge { display: grid; gap: 0.75rem; margin-top: 0.5rem; }
.edge-edge h2 { color: var(--menu-box); margin-top: 1.125rem; font-size: var(--tab-offer); }
.stage-body { list-style: none; display: grid; gap: 0.625rem; padding: 0; margin: 0.5rem 0; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.stage-body li { display: grid; gap: 0.25rem; padding: 1rem 1.125rem; border: var(--chip2-item) solid var(--tab-item); border-radius: var(--dice-copy); background: rgb(251, 247, 239); }
.chip2-item { font-size: 12px; text-transform: uppercase; letter-spacing: var(--row-front); color: rgb(125 132 151); }
.inner-ring { font-weight: 600; color: var(--menu-box); word-break: break-word; }
.copy-chip { font-size: var(--set-dock); color: var(--bar-deck); }
.group-row { font-size: var(--set-dock); margin: 0.875rem 0 0.25rem; gap: 0.5rem 1.125rem; display: flex; flex-wrap: wrap; }
.group-row a { color: var(--bar-deck); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: color-mix(in srgb, currentColor 35%, transparent); }
.group-row a:hover { color: var(--menu-box); }
.chip2-outer { background: color-mix(in srgb, var(--feature-card) 92%, transparent); border-top: 6px solid transparent; border-image: repeating-linear-gradient(90deg, var(--cell-line) 0 26px, rgb(251, 247, 239) 26px 52px) 6 0 0 0 / 6px 0 0 0 }
.promo-frame { background: rgb(235, 226, 209); }
.ace-lead { padding: 0 0.875rem; font-weight: 500; color: var(--bar-deck); border-radius: 62.4375rem; height: 2.625rem; }
.ace-lead:hover { background: rgb(251, 247, 239); }
.ace-lead.card-outer { background: var(--menu-box); color: var(--inner-vip); }
.ace-lead.card-outer .ring-group { color: var(--crown-lead); }
.ace-lead .ring-group { color: var(--cell-line); }
.seal-field { font-weight: 700; color: rgb(125 132 151); }
.outer-field { border-radius: 1.25rem; font-weight: 700; color: var(--menu-box); }
.outer-field img { border-radius: 50%; }
.outer-field:hover { border-color: var(--menu-box); }
.side-hero {
  min-height: clamp(400px, 40vw, 540px);
  display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
  align-items: center; gap: 2.5rem;
  padding: clamp(28px, 4vw, 56px) clamp(24px, 4vw, 64px) 0;
  overflow: hidden;
  isolation: isolate }
.side-hero::before {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background: radial-gradient(45% 65% at 80% 55%, rgba(243, 180, 27, 0.35), transparent 70%), var(--slot-line);
  mask-image: linear-gradient(90deg, transparent 30%, #000 75%) }
.label-frame { display: grid; gap: 1.375rem; align-content: center; justify-items: start; padding-bottom: clamp(28px, 4vw, 56px); }
.inner-ace { font-size: var(--vip-dot); max-width: 12ch; }
.inner-ace em { display: block; }
.frame-ace { line-height: 1.5; font-size: var(--meta-bonus); max-width: 46ch; color: var(--bar-deck); }
.zone-deck { border-bottom: var(--chip2-item) solid var(--tab-item); border-top: var(--chip2-item) solid var(--tab-item);
  margin: 0.375rem 0 0; justify-content: start; grid-template-columns: repeat(3, auto);
  display: grid }
.zone-deck .media-edge { padding: 1rem 1.75rem 1rem 0; margin: 0; }
/*  legacy  */
.zone-deck .media-edge + .media-edge { padding-left: 1.75rem; border-left: var(--chip2-item) solid var(--tab-item); }
.zone-deck dd { margin: 0; }
.note-card { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: 0.375rem; }
.front-top { font-size: 12px; color: rgb(125 132 151); letter-spacing: 0.04em; }
.nav-nav { position: relative; align-self: end; justify-self: center; width: min(100%, 420px); }
.cell-card { align-self: stretch; display: grid; align-content: end; justify-items: center; width: auto; }
.label-base { aspect-ratio: 4 / 5; }
.label-base img { object-fit: cover; object-position: 50% 40%; }
.seal-star {
  position: absolute; left: -1.75rem; bottom: 2.75rem;
  display: grid; gap: 0.375rem; padding: 0.75rem 1rem;
  background: var(--feature-card); border: var(--chip2-item) solid rgba(22, 36, 66, 0.26); border-radius: var(--front-promo);
  box-shadow: none }
.seal-star .offer-copy { font-size: var(--deal-dice); color: var(--vip-tile); letter-spacing: 0.06em; }
@media (max-width: 900px) {
  .side-hero { grid-template-columns: 1fr; padding-top: 2rem; }
  .nav-nav { order: -1; width: min(100%, 320px); }
  .seal-star { left: -0.75rem; } }
@media (max-width: 520px) {
  .zone-deck { grid-template-columns: repeat(3, 1fr); }
  .zone-deck .media-edge { padding-right: 0.625rem; }
  .zone-deck .media-edge + .media-edge { padding-left: 0.625rem; }
  .note-card { justify-self: stretch; }
  .note-card .feature-dot { flex: 1; } }
.side-hero { min-height: clamp(440px, 42vw, 580px); }
.cell-card { grid-template-rows: minmax(0, 1fr) auto; display: grid; width: min(100%, 460px); align-self: stretch; }
.pill-lead { --label-nav: 340px; }
.cell-card .seal-star { margin: 0 0 clamp(20px, 3vw, 40px); position: relative; justify-self: start; inset: auto; z-index: 1; }
@media (max-width: 900px) {
  .side-hero { min-height: 0; }
  .cell-card { order: -1; align-self: auto; justify-items: start; width: 100%; grid-template-rows: auto minmax(0, 1fr); }
  .pill-lead { --link-group: min(66vw, 290px); justify-self: start; width: min(78vw, 330px); }
  .cell-card .seal-star { order: -1; margin: 0 0 0.625rem; padding: 0.5rem 0.75rem; } }
.chip2-nav { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.125rem 0.875rem }
.deal-wrap { position: relative; grid-column: span 2; grid-row: span 2; overflow: hidden; border-radius: var(--dice-copy); border: var(--chip2-item) solid var(--tab-item); box-shadow: none }
.deal-wrap img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 700ms cubic-bezier(0.25, 0.8, 0.25, 1); }
.deal-wrap:hover img { transform: scale(1.04); }
.deal-wrap::after { inset: 0; position: absolute; content: ""; background: linear-gradient(180deg, transparent 55%, rgba(0, 0, 0, 0.6)); }
.chip-stage { bottom: 1.25rem; right: 1.25rem; gap: 0.625rem; display: grid; justify-items: start; z-index: 1; position: absolute; left: 1.25rem }
.offer-line { font-size: clamp(26px, 2.4vw, 38px); color: #fff; }
.label-front { font-size: 12px; display: inline-flex; color: rgba(255, 255, 255, 0.75); gap: 0.375rem; align-items: center; }
.bar-hero { display: grid; justify-items: center; gap: 0.75rem; margin: 1.75rem auto 0; width: min(320px, 100%) }
.stage-area { font-size: 12px; color: rgb(125 132 151); }
.stage-area .offer-copy { color: var(--menu-box); }
.bonus-zone { overflow: hidden; width: 100%; height: 0.25rem; border-radius: var(--front-promo); background: var(--tab-item); }
.bonus-zone span { display: block; height: 100%; background: var(--cell-line); }
@media (max-width: 1180px) { .chip2-nav { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .chip2-nav > .chip2-step:nth-of-type(n + 6) { display: none; } }
@media (max-width: 720px) { .chip2-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .deal-wrap { grid-row: auto; aspect-ratio: 3 / 4; }
  .chip2-nav > .chip2-step:nth-of-type(n + 6) { display: grid; } }
.pane-dock { list-style: none; gap: 1.5rem; position: relative; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)) }
.pane-dock::before { content: ""; position: absolute; left: 0; right: 0; top: 2.3125rem; height: 0; border-top: calc(var(--chip2-item) * 2) dashed rgba(22, 36, 66, 0.26) }
.main-flag { gap: 0.625rem; justify-items: start; position: relative; display: grid; }
.reel-body { text-transform: uppercase; color: rgb(125 132 151); letter-spacing: var(--row-front); font-weight: 600; font-size: 12px; height: 1.125rem; }
.seal-meta { width: 1.125rem; height: 1.125rem; border-radius: 50%; margin-bottom: 0.5rem; background: var(--feature-card); border: calc(var(--chip2-item) * 2) solid var(--set-side) }
.seal-meta.page-deck { background: var(--cell-line); border-color: var(--cell-line); box-shadow: 0 0 0 6px var(--star-tile); }
.body-field { width: 6rem; height: 6rem; object-fit: cover; border-radius: 50%; border: var(--chip2-item) solid var(--tab-item); }
.hero-foot { font-size: var(--tab-offer); }
.feature-nav { font-size: var(--set-dock); color: var(--bar-deck); }
@media (max-width: 1080px) { .pane-dock { grid-template-columns: 1fr; gap: 0; padding-left: 2.25rem; }
  .pane-dock::before { bottom: 0; left: 0.5rem; border-left: calc(var(--chip2-item) * 2) dashed rgba(22, 36, 66, 0.26); width: 0; border-top: 0; right: auto; top: 0; }
  .main-flag { grid-template-columns: 80px minmax(0, 1fr); column-gap: 18px; padding: 1rem 0; }
  .reel-body { grid-column: 1 / -1; }
  .seal-meta { position: absolute; left: -2.25rem; top: 1.125rem; }
  .body-field { grid-row: span 3; width: 5rem; height: 5rem; } }
.field-win { display: flex; flex-wrap: wrap; gap: 0.875rem 1.5rem; align-items: center; justify-content: space-between; margin-bottom: 1.125rem; }
.core-label { font-size: var(--race-dice); }
.stage-live { gap: 0.375rem; flex-wrap: wrap; display: flex; }
.card-foot { height: 2.125rem; display: inline-flex; align-items: center; padding: 0 0.875rem; border-radius: var(--note-dice); border: var(--chip2-item) solid rgba(22, 36, 66, 0.26); font-size: var(--set-dock); color: var(--bar-deck); transition: border-color var(--grid-race), color var(--grid-race), background var(--grid-race) }
.card-foot:hover { color: var(--menu-box); border-color: var(--set-side); }
.card-foot.card-outer { background: var(--menu-box); border-color: var(--menu-box); color: var(--feature-card); }
.spin-nav { list-style: none; padding: 0; margin: 0; gap: 0.625rem; grid-template-columns: repeat(4, minmax(0, 1fr)); display: grid; }
.edge-table, .field-dock { overflow: hidden; position: relative; display: block; background: var(--ring-core); aspect-ratio: 3 / 2; border-radius: var(--side-flag) }
.edge-table img { width: 100%; height: 100%; object-fit: cover; transition: transform 600ms cubic-bezier(0.25, 0.8, 0.25, 1), filter var(--grid-race); }
.outer-outer { z-index: 1; right: 0.5rem; top: 0.5rem; position: absolute; }
.copy-seal { position: absolute; inset: 0; padding: 0.875rem; align-content: end; transition: opacity var(--grid-race); opacity: 0; gap: 2px; display: grid; color: #fff; background: linear-gradient(180deg, transparent 35%, rgba(0, 0, 0, 0.9)) }
.main-lead { line-height: 1.2; font-weight: 600; font-size: var(--set-dock); }
.zone-rail { font-size: 0.6875rem; opacity: 0.7; }
.vip-chip2 { position: absolute; left: 50%; top: 42%; transform: translate(-50%, -50%) scale(0.8); display: grid; place-items: center; width: 3.25rem; height: 3.25rem; border-radius: 50%; background: var(--cell-line); color: var(--inner-vip); font-size: 1.375rem; transition: transform var(--grid-race) cubic-bezier(0.25, 0.8, 0.25, 1) }
.edge-table:hover img { transform: scale(1.06); filter: brightness(0.8); }
.edge-table:hover .copy-seal { opacity: 1; }
.edge-table:hover .vip-chip2 { transform: translate(-50%, -50%) scale(1); }
.field-dock { display: grid; align-content: center; justify-items: center; gap: 0.375rem; padding: 0.875rem; text-align: center; border: var(--chip2-item) dashed var(--set-side); background: rgb(251, 247, 239); font-size: 12px; color: var(--bar-deck) }
.shape-side { font-size: 2.5rem; color: var(--cell-line); }
@media (max-width: 1280px) { .spin-nav { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 720px) { .spin-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .copy-seal { opacity: 1; }
  .vip-chip2 { display: none; } }
@media (max-width: 480px) { .spin-nav { grid-template-columns: 1fr; } }
.foot-vip { display: grid; grid-template-columns: minmax(220px, 0.8fr) minmax(0, 3fr); overflow: hidden; }
.vip-area { border-right: var(--chip2-item) solid var(--tab-item); display: grid; align-content: start; gap: 1rem; padding: 2rem; justify-items: start }
.bar-lead { font-size: 2.5rem; }
.table-win { color: var(--bar-deck); font-size: var(--set-dock); }
.nav-rail { margin: 0; padding: 0; grid-template-columns: repeat(5, minmax(0, 1fr)); display: grid; list-style: none; }
.live-deck { gap: 0.625rem; align-content: start; padding: 2rem 1.375rem 1.75rem; display: grid; position: relative }
.live-deck + .live-deck { border-left: var(--chip2-item) solid var(--tab-item); }
.live-deck::before { content: ""; position: absolute; opacity: calc(0.15 + var(--card-mark, 0) * 0.2); height: 2px; left: 0; background: var(--cell-line); right: 0; top: 0; }
.base-list { font-size: 12px; color: rgb(125 132 151); }
.step-grid { font-size: 1.625rem; }
.promo-table { gap: 0.5rem; align-items: baseline; display: flex; }
.promo-table .offer-copy { color: var(--menu-box); font-size: var(--set-dock); }
.wrap-table { display: grid; gap: 0.375rem; font-size: var(--set-dock); margin-top: 0.5rem; color: var(--bar-deck); }
.wrap-table li { gap: 0.5rem; display: flex; align-items: center; }
.wrap-table .ring-group { color: var(--cell-line); font-size: 0.875rem; }
.live-deck.frame-list { background: linear-gradient(180deg, var(--star-tile), transparent 70%); }
.live-deck.frame-list .step-grid { color: var(--vip-tile); }
@media (max-width: 1280px) { .foot-vip { grid-template-columns: 1fr; }
  .vip-area { border-right: 0; border-bottom: var(--chip2-item) solid var(--tab-item); } }
@media (max-width: 900px) { .nav-rail { grid-auto-flow: column; grid-template-columns: none; grid-auto-columns: 200px; overflow-x: auto; scrollbar-width: none; } }
.field-star { display: grid; list-style: none; grid-template-columns: repeat(4, minmax(0, 1fr)); padding: 0; margin: 0; gap: 0.875rem; }
.set-top { display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 1rem; padding: 0.75rem; overflow: hidden; }
.set-top.box-flag { background: radial-gradient(45% 65% at 80% 55%, rgba(243, 180, 27, 0.35), transparent 70%), rgb(251, 247, 239); border-color: var(--cell-line); }
.spin-panel { width: 6rem; height: 6rem; object-fit: cover; border-radius: var(--front-promo); }
.mark-pill { gap: 0.25rem; align-content: center; display: grid; min-width: 0; }
.lead-crest { font-size: 12px; color: rgb(125 132 151); }
.slab-row { font-size: 2.125rem; color: var(--cell-line); }
.promo-panel { font-size: var(--deal-dice); color: var(--menu-box); }
.shape-group { text-overflow: ellipsis; font-size: 12px; overflow: hidden; color: rgb(125 132 151); white-space: nowrap; }
@media (max-width: 1280px) { .field-star { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .field-star { grid-template-columns: 1fr; } }
.pane-seal { gap: 0.875rem; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); }
.step-stage { position: relative; display: grid; grid-template-rows: auto auto; overflow: hidden; background: rgb(251, 247, 239); border: var(--chip2-item) solid var(--tab-item); border-radius: var(--dice-copy); box-shadow: none; transition: border-color var(--grid-race), transform var(--grid-race) cubic-bezier(0.25, 0.8, 0.25, 1), box-shadow var(--grid-race) }
.step-stage img { object-fit: cover; width: 100%; aspect-ratio: 1; }
.step-stage:hover { box-shadow: var(--crown-seal); transform: translateY(calc(var(--mark-page) * -1)); border-color: var(--cell-line); }
.stage-field { padding: 0.875rem 0.875rem 1rem; gap: 0.375rem; display: grid; }
.offer-list { font-size: var(--meta-bonus); }
.note-stage { display: inline-flex; align-items: center; gap: 0.375rem; font-size: 12px; color: rgb(125 132 151); white-space: nowrap; }
.note-stage .offer-copy { color: var(--bar-deck); }
.card-row { position: absolute; transform: translateY(-4px); place-items: center; top: 0.625rem; right: 0.625rem; display: grid; color: var(--vip-tile); width: 2rem; border-radius: var(--front-promo); opacity: 0; background: var(--feature-card); transition: opacity var(--grid-race), transform var(--grid-race) cubic-bezier(0.25, 0.8, 0.25, 1); height: 2rem }
.step-stage:hover .card-row { opacity: 1; transform: none; }
@media (max-width: 1280px) { .pane-seal { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 600px) { .pane-seal { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.offer-wrap { display: grid; grid-template-columns: minmax(240px, 0.8fr) minmax(0, 2fr); gap: clamp(28px, 5vw, 72px); }
.spin-strip { display: grid; gap: 1rem; align-self: start; top: calc(74px + 28px); position: sticky; }
.block-area { font-size: clamp(28px, 2.6vw, 40px); }
.note-spin { letter-spacing: 0.04em; color: rgb(125 132 151); font-size: 12px; }
/*  header  */
.row-cell { display: grid; gap: 1.5rem; min-width: 0; justify-items: start; }
.row-cell > * { max-width: 100%; }
.head-feature { font-size: var(--meta-bonus); line-height: 1.6; color: var(--menu-box); }
.bonus-front { justify-self: stretch; width: 100%; min-width: 0; max-height: 35rem; overflow: hidden; mask-image: linear-gradient(#000 60%, transparent) }
.flag-ace:checked ~ .bonus-front { max-height: none; mask-image: none; }
.star-stack { padding: 1.625rem 0; gap: 0.75rem 2.5rem; grid-template-columns: minmax(160px, 0.7fr) minmax(0, 2fr); font-size: var(--set-dock); border-top: var(--chip2-item) solid var(--tab-item); display: grid; line-height: 1.7 }
.main-tile { font-size: var(--deal-dice); font-weight: 600; line-height: 1.35; color: var(--menu-box); }
.flag-core, .flag-ace:checked ~ .list-deck .step-mark { display: none; }
.flag-ace:checked ~ .list-deck .flag-core { display: inline; }
.flag-ace:focus-visible ~ .list-deck { outline: 2px solid var(--cell-line); outline-offset: 3px; }
@media (max-width: 1080px) { .offer-wrap { grid-template-columns: 1fr; }
  .spin-strip { position: static; } }
@media (max-width: 640px) { .star-stack { grid-template-columns: 1fr; } }
.feature-tab { gap: 1.375rem; justify-items: center; display: grid; }
.pane-foot { text-align: center; gap: 0.625rem; justify-items: center; display: grid; }
.game-shape { font-size: clamp(30px, 3.4vw, 50px); }
.stack-deal { width: min(860px, 100%); overflow: hidden; }
.row-crest { display: flex; align-items: center; gap: 0.75rem; padding: 0.875rem 1.25rem; border-bottom: var(--chip2-item) solid var(--tab-item); }
.row-crest :is(strong, b) { display: block; font-size: var(--set-dock); }
.deal-lobby { display: inline-flex; align-items: center; gap: 0.375rem; font-size: 12px; color: rgb(125 132 151); }
.unit-inner { display: grid; background: var(--cell-line); place-items: center; height: 2.5rem; color: var(--inner-vip); flex: none; font: 700 16px/1 "Gambarino", "Georgia", serif; width: 2.5rem; border-radius: 50% }
.pill-outer { width: 1.875rem; height: 1.875rem; font-size: 0.8125rem; }
.ring-deal { background: var(--dice-rail); display: grid; gap: 1.375rem; padding: 1.5rem 1.25rem; }
.live-win { display: grid; gap: 0.625rem; }
.view-front { gap: 0.625rem; align-items: flex-end; display: flex; }
.panel-foot { justify-content: flex-end; }
.dot-chip2 { line-height: 1.55; padding: 0.75rem 1rem; font-size: var(--set-dock); margin: 0; max-width: 72%; }
.panel-foot .dot-chip2 { background: var(--cell-line); color: var(--inner-vip); font-weight: 600; border-radius: calc(var(--front-promo) + 10px) calc(var(--front-promo) + 10px) 4px calc(var(--front-promo) + 10px) }
.step-wrap .dot-chip2 { background: var(--ring-core); color: var(--bar-deck); border: var(--chip2-item) solid var(--tab-item); border-radius: calc(var(--front-promo) + 10px) calc(var(--front-promo) + 10px) calc(var(--front-promo) + 10px) 4px }
.strip-ace { display: flex; align-items: center; gap: 0.625rem; padding: 0.75rem 0.875rem; border-top: var(--chip2-item) solid var(--tab-item); }
.unit-hero { color: rgb(125 132 151); background: rgb(235, 226, 209); border-radius: var(--note-dice); padding: 0.625rem 0.875rem; flex: 1; font-size: var(--set-dock); }
@media (max-width: 600px) { .dot-chip2 { max-width: 86%; } }
.page-mark { margin: 0 var(--list-deck) var(--list-deck); border-radius: var(--dice-copy); background: rgb(251, 247, 239); border: var(--chip2-item) solid var(--tab-item); }
.base-game { margin: 0 auto; display: grid; gap: 1.75rem; padding: 36px clamp(20px, 3vw, 40px) 28px; max-width: 75rem; }
.dice-strip { display: flex; flex-wrap: wrap; align-items: center; gap: 1.125rem 1.75rem; padding-bottom: 1.5rem; border-bottom: var(--chip2-item) solid var(--tab-item); }
.slot-menu { flex: 1; font-size: var(--set-dock); color: rgb(125 132 151); }
/*  TODO: clean up  */
.lead-tile ul { display: flex; flex-wrap: wrap; font-size: var(--set-dock); justify-content: center; gap: 0.625rem 1.625rem; color: var(--bar-deck); }
.lead-tile a:hover { color: var(--cell-line); }
.seal-strip { justify-content: space-between; flex-wrap: wrap; display: flex; gap: 1rem; align-items: center; }
.lobby-star, .lead-live { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.lobby-star .vip-inner svg { height: 1rem; }
.lobby-star .race-win { position: static; width: auto; height: auto; clip-path: none; }
/*  utilities  */
.lobby-star li, .lead-live li {
  display: inline-flex; align-items: center; gap: 0.375rem; height: 1.875rem; padding: 0 0.75rem;
  border-radius: var(--note-dice); background: rgb(235, 226, 209);
  font-size: 12px; font-weight: 600; color: var(--bar-deck) }
.lead-live li { background: transparent; border: var(--chip2-item) solid rgba(22, 36, 66, 0.26); }
/*  components  */
.chip2-note { max-width: 88ch; font-size: 12px; margin: 0 auto; text-align: center; line-height: 1.7; color: rgb(125 132 151); }
.ring-rear { text-align: center; color: rgb(125 132 151); font-size: 12px; }
@media (max-width: 640px) { .slot-menu { flex-basis: 100%; order: 3; } .seal-strip { justify-content: center; } }
.page-mark .tab-frame { justify-content: center; }
:root { --inner-vip: rgb(255, 255, 255); --cell-line: rgb(181, 115, 78); --star-tile: rgba(181, 115, 78, 0.14); --vip-tile: rgb(148 94 64); }
:root { --cell-line: rgb(181, 115, 78); --inner-vip: rgb(255, 255, 255); --star-tile: rgba(181, 115, 78, 0.14); --vip-tile: rgb(148 94 64); }
:root { --front-promo: 6px; --chip2-item: 2px; --band-bonus: 1360px; --mark-page: 0px; --dice-copy: 13px; --side-flag: 9px; --note-dice: 500px; --ace-win: 1deg; }
svg.ring-group{width:1em;height:1em;display:inline-block;vertical-align:-0.125em;fill:currentColor}