/* site styles — last edited 2026-08-28 */
.menuTile { display: none; }
.barRowBox { display: flex; gap: 6px; }
.raceBlock .clubBandStack { white-space: nowrap; }
.ringNav { display: grid; place-items: center; width: 2.375rem; height: 38px; border-radius: 50%; border: 2.5px solid var(--frame-crown); background: #fff; color: var(--frame-crown); box-shadow: 2px 2px 0 var(--frame-crown); transition: background var(--jackpot-bar), opacity var(--jackpot-bar); }
.ringNav:hover { background: var(--offer-slab); }
.ringNav[disabled] { opacity: 0.35; pointer-events: none; }
@media (max-width: 720px) { .heroDockItem { font-size: 28px; white-space: normal; min-width: 0; }
  .heroDockItem .area { font-size: 1.125rem; height: 36px; width: 2.25rem; }
  .barRowBox { display: none; }
  .raceBlock .clubBandStack { flex: none; } }
.offerEdge { gap: 16px; grid-auto-columns: var(--shape-chip2); overscroll-behavior-x: contain; scroll-snap-type: x mandatory; grid-auto-flow: column; padding: 6px 8px 14px 4px; overflow-x: auto; display: grid; scrollbar-width: none; }
.offerEdge::-webkit-scrollbar { display: none; }
.offerEdge > * { scroll-snap-align: start; }
.leadAce { gap: 10px; min-width: 0; transition: transform var(--jackpot-bar) var(--live-ring); grid-template-columns: minmax(0, 1fr); display: grid; }
.crestMainBase { position: relative; aspect-ratio: var(--promo-item, 3 / 2); overflow: hidden; border-radius: var(--vip-body); border: 2.5px solid var(--frame-crown); background: var(--slot-mark); box-shadow: 4px 4px 0 var(--frame-crown); transition: box-shadow var(--jackpot-bar) var(--live-ring); }
.crestMainBase img { width: 100%; height: 100%; object-fit: cover; }
.mainPill { position: absolute; left: 8px; top: 8px; z-index: 1; }
.leadAce:nth-child(odd):hover { transform: rotate(-2deg) translateY(-4px); }
.leadAce:hover { transform: rotate(2deg) translateY(-4px); }
.leadAce:hover .crestMainBase { box-shadow: 7px 7px 0 var(--band-label); }
.crestGrid { white-space: nowrap; font: 600 15px/1.2 var(--feature-lead); overflow: hidden; text-overflow: ellipsis; }
.noteDot { font-size: 0.75rem; align-items: center; display: flex; color: var(--wrap-chip); justify-content: space-between; margin-top: 2px; gap: 8px; }
.noteDot > span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bodyFrontDock { flex: none; display: inline-flex; align-items: center; gap: 0.375rem; font-family: var(--crest-mark); color: var(--deal-live); }
.setCrest { --crown-media: 34px; display: inline-flex; align-items: center; gap: 0.3em; font-size: var(--crown-media); line-height: 1; color: var(--frame-crown); white-space: nowrap; text-decoration: none }
.clubTable { --crown-media: 44px; }
.chipBox { text-transform: var(--slot-view); font-size: 0.74em; font-weight: var(--star-deck); line-height: 1; font-family: var(--feature-lead); letter-spacing: var(--table-hero) }
.stageGame { position: relative; flex: none; }
@media (max-width: 720px) { .menuSlab .setCrest { --crown-media: 28px; } }
.heroPanelFrame { display: grid; place-items: center; width: 0.92em; height: 0.92em; border-radius: 50%; border: 0.07em solid var(--band-label) }
.heroPanelFrame span { text-transform: var(--slot-view); font: var(--star-deck) 0.5em/1 var(--feature-lead); color: var(--frame-crown); }
.heroPanelFrame::before { content: ""; position: absolute; inset: -0.16em; border-radius: 50%; border: 0.03em dashed color-mix(in srgb, var(--band-label) 55%, transparent); transform: rotate(-30deg) }
.heroPanelFrame::after { top: -0.12em; border-radius: 50%; content: ""; position: absolute; width: 0.22em; background: var(--band-label); box-shadow: 0 0 0 0.05em var(--crown-feature); right: -0.04em; height: 0.22em }
.labelTab { display: inline-grid; gap: 0.1em; margin-left: 0.08em; }
.labelTab .chipBox { font-size: 0.66em; }
.spinWin { color: var(--wrap-chip); font: 700 0.25em/1 var(--view-zone); letter-spacing: 0.3em; text-transform: uppercase; }
.menuSlab {
  border-bottom: var(--reel-area) solid var(--group-core);
  position: sticky; top: 0; gap: 1.5rem;
  display: flex; z-index: 30;
  padding: 0 var(--shape-star) 0 18px; align-items: center;
  background: color-mix(in srgb, var(--crown-feature) 88%, transparent);
  backdrop-filter: blur(12px);
  height: var(--base-club) }
.offerChip2Frame { gap: 0.625rem; display: flex; align-items: center; margin-left: auto; }
.label { padding: 1.125rem 0.875rem 2rem; }
.paneSpin { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0.25rem; }
.mediaTray { grid-template-columns: 1fr 1fr; display: grid; gap: 8px; margin-bottom: 18px; }
.zoneFootStar {
  display: grid; justify-items: center; gap: 0.375rem;
  padding: 0.625rem 0.375rem 0.75rem;
  background: var(--slot-block);
  border: var(--reel-area) solid var(--group-core);
  border-radius: var(--inner-band);
  box-shadow: var(--promo-mark);
  font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--deal-live);
  transition: border-color var(--jackpot-bar), color var(--jackpot-bar), transform var(--jackpot-bar) var(--live-ring) }
.cellPill { display: grid; place-items: center; box-shadow: 0 6px 16px -8px var(--band-label); background: radial-gradient(circle at 35% 30%, var(--win-rail), var(--band-label) 70%); width: 3.25rem; border-radius: 50%; color: var(--zone-stage); font-size: 1.75rem; height: 3.25rem; }
.zoneFootStar:nth-child(2) .cellPill { background: radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--hero-set) 70%, #fff), var(--hero-set) 70%); box-shadow: 0 6px 16px -8px var(--hero-set); }
.zoneFootStar:hover { color: var(--frame-crown); border-color: var(--band-label); transform: translateY(calc(var(--cell-crown) * -1)); }
.viewTray {
  color: var(--wrap-chip); letter-spacing: var(--crown-crown); text-transform: uppercase;
  margin: 22px 10px 8px;
  font-size: var(--feature-set) }
.winDot { gap: 12px;
  font-size: 0.875rem;
  height: 40px; align-items: center;
  display: flex;
  position: relative; color: var(--deal-live);
  transition: color var(--jackpot-bar), background var(--jackpot-bar);
  border-radius: var(--tile-club); padding: 0 0.625rem }
.winDot .wrapRing { margin-left: auto; }
.winDot:hover { color: var(--frame-crown); background: var(--slot-block); }
.winDot.viewBlock { color: var(--frame-crown); background: var(--slot-block); }
.winDot.viewBlock .area { color: var(--band-label); }
.dealReel { min-width: 0; }
.wrapEdge { gap: var(--gold-pane); grid-template-columns: minmax(0, 1fr);
  max-width: var(--view-dot, 1440px);
  padding: 28px var(--shape-star) var(--gold-pane);
  display: grid; margin: 0 auto }
.featureChip { display: none; }
.slabClub.sealFrameVip .featureChip { inset: 0; position: fixed; display: block; background: rgba(0, 0, 0, 0.55); z-index: 35; }
.stripTop {
  position: fixed; left: 0; top: 0; bottom: 0; z-index: 40;
  width: min(300px, 86vw);
  overflow-y: auto;
  background: var(--crown-feature);
  border-right: var(--reel-area) solid var(--group-core);
  transform: translateX(-102%); transition: transform 320ms var(--live-ring) }
.slabClub.sealFrameVip .stripTop { transform: none; }
@media (max-width: 720px) {
  .menuSlab { gap: 0.75rem; padding: 0 16px 0 12px; }
  .offerChip2Frame { min-width: 0; }
  .menuSlab .goldMain { display: none; }
  .offerChip2Frame .baseLabel { display: none; } }
@media (max-width: 480px) {
  .menuSlab { gap: 0.5rem; padding-right: 0.625rem; }
  .offerChip2Frame { gap: 0.375rem; }
  .offerChip2Frame .tileField { padding: 0 12px; letter-spacing: 0.02em; } }
.chipCore { display: grid; grid-template-columns: calc(var(--race-win) + 24px) minmax(0, 1fr); min-height: 100vh; }
.chipCore .body { position: sticky; top: 12px; display: flex; flex-direction: column; height: calc(100vh - 24px); margin: 0.75rem 0 0.75rem 0.75rem; overflow-y: auto; scrollbar-width: thin; background: var(--slot-block); border: var(--reel-area) solid var(--group-core); border-radius: var(--inner-band) }
.crownPaneNav { padding: 1.25rem 1.25rem 0.25rem; }
.chipCore .body .label { padding-top: 0.875rem; }
.chipCore .body .winDot:hover:not(.viewBlock) { background: var(--spin-side); }
.tableBase { display: grid; justify-items: start; gap: 8px; margin: auto 0.875rem 0.875rem; padding: 1rem; border-radius: calc(var(--inner-band) * 0.7); background: var(--head-media), var(--spin-side); border: var(--reel-area) solid var(--group-core) }
.tableBase :is(strong, b) { font-size: 22px; font-weight: var(--star-deck); }
.menuTabRail { min-width: 0; }
/*  base  */
.chipCore .menuSlab { background: transparent; backdrop-filter: none; border-bottom: 0; gap: 1rem; }
.liveLead, .shapeReel { display: none; }
.trayLobby { flex: 1; max-width: 560px; }
@media (max-width: 1080px) { .chipCore { grid-template-columns: minmax(0, 1fr); }
  .chipCore .body { position: fixed; left: 0; top: 0; z-index: 40; width: min(300px, 86vw); height: calc(100vh - 24px); transform: translateX(calc(-100% - 20px)); transition: transform 320ms var(--live-ring); }
  .chipCore.sealFrameVip .body { transform: none; }
  .liveLead { display: inline-grid; }
  .shapeReel { display: inline-flex; }
  .chipCore .menuSlab { background: color-mix(in srgb, var(--crown-feature) 90%, transparent); border-bottom: var(--reel-area) solid var(--group-core); position: sticky; backdrop-filter: blur(12px); } }
.crownJackpot { color: var(--deal-live); }
.crownJackpot p { margin: 0 0 1em; }
.crownJackpot p:last-child { margin-bottom: 0; }
.vipGameClub { font-weight: 600; font-size: var(--vip-ring); color: var(--frame-crown); margin: 1.4em 0 0.5em; }
.liveView, .zoneStepLabel { margin: 0 0 1.1em; padding: 0; list-style: none; display: grid; gap: 0.55em; }
.liveView li { position: relative; padding-left: 1.4em; }
.liveView li::before {
  width: 0.45em; top: 0.62em;
  content: ""; position: absolute;
  transform: rotate(45deg); height: 0.45em; border-radius: calc(var(--tile-club) * 0.2); left: 0.1em;
  background: var(--band-label) }
.zoneStepLabel { counter-reset: step; }
.zoneStepLabel li { counter-increment: step; min-height: 1.7em; position: relative; padding-left: 2.3em; }
.zoneStepLabel li::before {
  content: counter(step);
  position: absolute; left: 0; top: -0.05em;
  display: grid; place-items: center; width: 1.7em; height: 1.7em;
  font: 600 0.8em/1 var(--crest-mark); color: var(--zone-stage);
  background: var(--band-label); border-radius: 50% }
.crownJackpot, .crownJackpot > * { min-width: 0; }
.navPill { max-width: 100%; margin: 0 0 1.1em; overflow-x: auto; border: var(--reel-area) solid var(--group-core); border-radius: var(--tile-club); }
.navPill table { width: 100%; border-collapse: collapse; font-size: var(--media-chip2); }
.navPill th, .navPill td { padding: 10px 14px; text-align: left; border-bottom: var(--reel-area) solid var(--group-core); white-space: nowrap; }
.navPill tbody tr:last-child > * { border-bottom: 0; }
.navPill thead th { font-size: var(--feature-set); font-weight: 600; letter-spacing: var(--crown-crown); text-transform: uppercase; background: var(--slot-block); color: var(--wrap-chip); }
.navPill tbody th { font-weight: 600; color: var(--frame-crown); }
.navPill caption { caption-side: top; text-align: left; padding: 10px 14px; font-size: var(--feature-set); font-weight: 600; letter-spacing: var(--crown-crown); text-transform: uppercase; color: var(--band-label); border-bottom: var(--reel-area) solid var(--group-core); }
.navPill tbody tr:nth-child(even) > * { background: color-mix(in srgb, var(--spin-side) 45%, transparent); }
.promoSeal, .frameTable { display: inline-grid; place-items: center; height: 1.375rem; font-weight: 700; width: 22px; font-size: 12px; border-radius: 50%; }
.promoSeal { background: color-mix(in srgb, var(--hero-set) 18%, transparent); color: var(--hero-set); }
.frameTable { background: color-mix(in srgb, var(--band-front) 14%, transparent); color: var(--band-front); }
.tableLabelRing tbody th { width: 42%; color: var(--deal-live); font-weight: 500; white-space: normal; }
.tableLabelRing td { white-space: normal; font-weight: 600; color: var(--frame-crown); }
.ringTop td, .ringTop thead th:not(:first-child) { text-align: center; }
.ringTop tbody td:nth-child(2), .ringTop thead th:nth-child(2) { background: var(--nav-promo) !important; }
.ringTop thead th:nth-child(2) { color: var(--band-label); }
@media (max-width: 520px) { .raceBlock { flex-wrap: wrap; row-gap: 8px; } }
img.baseMeta, img.corePaneFront, img.innerPill { background-color: var(--star-game, var(--spin-side)); }
.coreFrame { --promo-item: 3 / 4; position: relative; }
.coreFrame img {
  object-fit: contain !important; object-position: 50% 0 !important;
  background: linear-gradient(180deg, color-mix(in srgb, var(--star-game, #222) 72%, hsl(240 19% 5%)) 0 50%, color-mix(in srgb, var(--star-game, #222) 38%, hsl(240 19% 5%))) !important }
.coreFrame::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); }
.offerLive { right: 10px; left: 10px; position: absolute; color: #fff; z-index: 2; text-shadow: 0 1px 6px rgba(0, 0, 0, 0.45); gap: 2px; bottom: 0.75rem; display: grid; pointer-events: none; }
.mainFrontPill { display: -webkit-box; text-transform: var(--slot-view); letter-spacing: var(--table-hero); -webkit-box-orient: vertical; overflow: hidden; font-weight: var(--star-deck); -webkit-line-clamp: 2; line-height: 1.05; font-family: var(--feature-lead); font-size: 17px; }
.labelCoreLive { font-size: 11px; opacity: 0.78; }
.crestMainBase.coreFrame + .reelCellZone, .crestMainBase.coreFrame + .lineLine { display: none; }
img.pillStrip {
  background: none !important; border: 0 !important; border-radius: 0 !important; padding: 0 !important;
  box-shadow: none !important; mask-image: none !important }
.boxJackpotDeck {
  position: relative; align-self: stretch; justify-self: center;
  width: 100%; min-height: var(--inner-field, 340px);
  pointer-events: none }
.boxJackpotDeck .dot {
  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) {
  .boxJackpotDeck { align-self: auto; min-height: var(--group-copy, 260px); }
  .boxJackpotDeck .dot { object-position: 50% 100%; } }
img.crestDeck { filter: var(--meta-spin, none); border-radius: 0; object-fit: contain; }
.flagDockBand { vertical-align: middle; line-height: 1; gap: 0.5em; align-items: center; display: inline-flex; }
.flagDockBand svg { max-width: 3em; height: 1.6em; width: auto; flex: none; }
.stageBase { clip-path: inset(50%); overflow: hidden; white-space: nowrap; height: 1px; width: 1px; position: absolute; }
.fieldChipBand { display: inline-flex; font-size: 0.75rem; align-items: center; text-transform: uppercase; letter-spacing: 0.04em; gap: 0.75rem; }
.fieldChipBand a { color: var(--deal-live); text-decoration: none; }
.fieldChipBand a:hover { color: var(--band-label); }
.fieldChipBand a.viewBlock { color: var(--frame-crown); font-weight: 600; }
.flagTop { display: block; }
.topRail { color: var(--band-label); }
.sideStarGrid {
  letter-spacing: var(--crown-crown);
  font-family: var(--step-main); margin-top: 0.5em; font-weight: 600; text-transform: uppercase;
  display: block; font-size: clamp(12px, 0.22em, 17px); line-height: 1.2; color: inherit; opacity: 0.72 }
.wrapRail {
  margin: 0; display: block;
  font-family: var(--feature-lead); font-weight: var(--star-deck); text-transform: var(--slot-view);
  letter-spacing: var(--table-hero); line-height: 1.05; font-size: clamp(22px, 2.4vw, 38px) }
.slabSetSide { font-style: normal; color: var(--band-label); }
.spinRear { font-size: var(--feature-set); gap: 6px; line-height: 1.3; flex-wrap: wrap; align-items: baseline; display: inline-flex; color: var(--wrap-chip); }
.spinGame { letter-spacing: var(--crown-crown); text-transform: uppercase; }
.outerBox { font-weight: 600; color: var(--frame-crown); }
.unitPillTray { color: rgba(255, 255, 255, 0.72); }
.unitPillTray .outerBox { color: #fff; }
.crestGame { gap: 0.5rem; align-items: center; flex-wrap: wrap; display: flex; }
.dockTab { height: 28px; color: var(--wrap-chip); padding: 0 0.625rem; transition: color .15s, border-color .15s, background-color .15s; display: inline-flex; align-items: center; font-size: var(--feature-set); border-radius: var(--tile-club); gap: 0.375rem; }
.dockTab:hover { color: var(--frame-crown); }
.dockTab .area { font-size: 1.25em; }
.lineBlock .dockTab { background: var(--deck-zone); border-radius: var(--lobby-core); }
.sealBand .dockTab { border: var(--reel-area) solid var(--ring-flag); }
.sealBand .dockTab:hover { border-color: var(--win-pane); }
.rowDotLive .dockTab { background: var(--slot-block); border: var(--reel-area) solid var(--group-core); font-weight: 600; }
.edgeDiceLine { gap: 0.25rem 1.125rem; }
.edgeDiceLine .dockTab { height: auto; text-underline-offset: 3px; padding: 0; text-decoration-color: var(--win-pane); text-decoration: underline; }
.cellMeta .dockTab { font: 500 11px/1 var(--crest-mark); letter-spacing: 0.08em; text-transform: uppercase; padding: 0 0.5rem; border-left: 2px solid var(--band-label); border-radius: 0; }
a[role="button"] { cursor: pointer; }
.blockSide { display: none; }
@media (max-width: 640px) {
  .rearNoteReel { overflow: visible; border: 0; border-radius: 0; }
  .rearNoteReel thead { display: none; }
  .rearNoteReel table, .rearNoteReel tbody, .rearNoteReel tr { display: block; width: 100%; }
  .rearNoteReel caption { display: block; padding: 0 0 8px; }
  .rearNoteReel tr { margin: 0 0 0.625rem; border: var(--reel-area) solid var(--group-core); border-radius: var(--tile-club); overflow: hidden; }
  .rearNoteReel tbody tr > * { background: none; }
  .rearNoteReel tbody th { border-bottom: var(--reel-area) solid var(--group-core); white-space: normal; display: block; background: color-mix(in srgb, var(--spin-side) 70%, transparent); }
  .rearNoteReel td { display: flex; align-items: baseline; text-align: right; gap: 0.875rem; white-space: normal; justify-content: space-between; }
  .rearNoteReel tbody tr > td:last-child { border-bottom: 0; }
  .rearNoteReel tbody tr:last-child > th { border-bottom: var(--reel-area) solid var(--group-core); }
  .rearNoteReel .blockSide { flex: none; max-width: 48%; font-size: var(--feature-set); text-align: left; letter-spacing: var(--crown-crown); display: block; text-transform: uppercase; font-weight: 600; color: var(--wrap-chip); } }
.crownDice { padding: clamp(28px, 5vw, 64px) 0; }
.rowCellDock { max-width: 48.75rem; margin: 0 auto; display: grid; gap: 0.875rem; }
.rearBasePane { font-size: clamp(32px, 4.4vw, 52px); line-height: 1.05; }
.diceFlag { font-size: var(--media-chip2); color: var(--wrap-chip); }
.navNav { font-size: var(--vip-ring); color: var(--deal-live); }
.labelLink { display: grid; gap: 0.75rem; margin-top: 8px; }
.labelLink h2 { font-size: var(--foot-pill); margin-top: 1.125rem; color: var(--frame-crown); }
.offerWinMark { padding: 0; margin: 0.5rem 0; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); display: grid; list-style: none; gap: 0.625rem; }
.offerWinMark li { display: grid; gap: 4px; padding: 16px 18px; border: var(--reel-area) solid var(--group-core); border-radius: var(--inner-band); background: var(--slot-block); }
.tableSetCrown { color: var(--wrap-chip); letter-spacing: var(--crown-crown); text-transform: uppercase; font-size: var(--feature-set); }
.blockDotList { font-weight: 600; color: var(--frame-crown); word-break: break-word; }
.gameNoteUnit { font-size: var(--media-chip2); color: var(--deal-live); }
.reelCrown { margin: 14px 0 4px; display: flex; flex-wrap: wrap; font-size: var(--media-chip2); gap: 8px 18px; }
.reelCrown a { color: var(--deal-live); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: color-mix(in srgb, currentColor 35%, transparent); }
.reelCrown a:hover { color: var(--frame-crown); }
.menuSlab { background: rgba(255, 241, 246, 0.88); border-bottom: 2.5px solid var(--frame-crown); }
.noteRing, .heroOuter { background: #fff; border-right: 2.5px solid var(--frame-crown); }
.winDot { color: var(--deal-live); font-size: 0.9375rem; border-radius: 62.4375rem; font-weight: 600; font-family: var(--feature-lead); padding: 0 0.875rem; }
.winDot .area { color: var(--band-label); }
.winDot:hover { background: var(--crown-feature); color: var(--frame-crown); }
.winDot.viewBlock { background: var(--offer-slab); color: var(--frame-crown); box-shadow: inset 0 0 0 2.5px var(--frame-crown), 3px 3px 0 var(--frame-crown); }
.winDot.viewBlock .area { color: var(--band-label); }
.viewTray { font-family: var(--feature-lead); font-weight: 600; letter-spacing: 0; text-transform: none; font-size: 0.875rem; color: var(--band-label); }
.zoneFootStar { border: 2.5px solid var(--frame-crown); border-radius: 22px; box-shadow: 3px 3px 0 var(--frame-crown); background: var(--spin-side); color: var(--frame-crown); font-weight: 600; text-transform: none; font-size: 13px; letter-spacing: 0; }
.zoneFootStar:nth-child(2) { background: hsl(153 69% 95%); }
.zoneFootStar img { border-radius: 50%; border: 2px solid var(--frame-crown); }