/* public-core.css: wrapper + core-only delta after shared extraction */

h1,h2,h3,.section-title,.jackpot-page-title,.promo-hero-title,.all-wins-title {
  font-family: var(--font-display);
  font-weight: var(--text-weight-display);
  line-height: var(--text-line-tight);
  letter-spacing: -.032em;
  text-wrap: balance;
}

p,.section-kicker,.section-subtitle,.promo-hero-subtitle,.all-wins-subtitle,.footer-description {
  line-height: var(--text-line-body);
  text-wrap: pretty;
}

button, input, select, textarea, .nav-link, .footer-link, .jackpot-action, .promo-button, .admin-link-proxy {
  font-family: var(--font-ui);
  font-weight: var(--text-weight-ui);
  line-height: var(--text-line-ui);
  letter-spacing: var(--text-letter-ui);
}

.section-kicker, .pola-dialog-label, .footer-heading {
  font-size: var(--text-size-overline);
  font-weight: var(--text-weight-strong);
  line-height: 1.12;
  letter-spacing: var(--text-letter-overline);
  text-transform: uppercase;
}

.game-title-link, .feature-title-link, .game-pola-name, .game-pola-value, .jackpot-card-title, .win-card-title {
  font-family: var(--font-display);
  font-weight: var(--text-weight-strong);
  line-height: var(--text-line-tight);
  letter-spacing: var(--text-letter-tight);
}

.game-progress-value,.admin-progress-theme-preview__text,[data-numeric],[data-progress-value],.jp-value,.wd-value {
  font-family: var(--font-body);
  font-variant-numeric: tabular-nums lining-nums;
}

@media (max-width:640px) {
  body {
    font-size: var(--text-size-body-mobile);
    line-height: 1.46;
    letter-spacing: 0;
  }
  h1,h2,h3,.section-title,.jackpot-page-title,.promo-hero-title,.all-wins-title {
    letter-spacing: -.026em;
  }
  .section-kicker {
    letter-spacing: .032em;
  }
}

html.page-transition-out body {
  opacity: 1;
  transform: none;
  transition: none;
}

html.page-transition-out :where(main,.page-shell,.jackpot-main,.game-pola-main,.all-wins-main) {
  opacity: .78;
  transition: opacity .09s ease;
}

.win-proof-card, .all-wins-card, .game-pola-card {
  contain: layout paint style;
}

html.is-low-end-runtime .win-proof-card, html.is-low-end-runtime .all-wins-card, html.is-low-end-runtime .game-pola-card {
  transition-duration: 140ms;
  will-change: auto;
}

@media (max-width:820px) {
  .game-pola-section, .jackpot-section {
    contain: layout paint style;
  }
  [data-rtpx-lazy-section="waiting"] {
    min-height: 0;
  }
}

html.is-mobile-low-end-runtime .win-proof-card, html.is-mobile-low-end-runtime .all-wins-card, html.is-mobile-low-end-runtime .game-pola-card {
  contain: layout paint style;
}

@media (max-width:560px) {
  .section-head {
    gap: 12px;
    margin-bottom: 14px;
  }
  .section-title-link h2, .section-head h2 {
    font-size: clamp(23px,6.4vw,26px);
    line-height: 1.08;
  }
  .eyebrow {
    min-height: 26px;
    padding-inline: 10px;
    font-size: 10.5px;
    letter-spacing: .075em;
  }
  .toolbar {
    grid-template-columns: minmax(0,1fr)minmax(86px,104px);
    gap: 6px;
  }
  .search,.sort-menu__button {
    min-height: 40px;
  }
  .search {
    border-radius: 999px;
  }
  .search__input {
    min-height: 40px;
    padding-inline: 4px;
    font-size: 16px;
  }
  .search__submit,.search__close {
    width: 30px;
    height: 22px;
    margin: 0;
  }
  .sort-menu__button {
    border-radius: 16px;
    padding-inline: 10px;
    font-size: 12px;
    gap: 6px;
  }
  .sort-menu__button>svg {
    display: none;
  }
  .feature-top-overlay,.game-overlay {
    inset: 6px 6px auto;
    gap: 5px;
  }
  .island-code {
    min-height: 22px;
    padding-inline: 7px;
    font-size: 10px;
  }
  .feature-title-wrap {
    display: none;
  }
  .game-progress {
    margin-top: 7px;
  }
  .game-progress-track {
    min-height: var(--game-progress-height-mobile,18px);
  }
  .game-progress-value {
    font-size: 10.8px;
  }
  .feature-title-link, .game-title-link {
    font-size: 12.5px;
  }
  .carousel-control-icon {
    width: clamp(17px,4.8vw,20px);
    height: clamp(17px,4.8vw,20px);
  }
  .slider-pagination,.featured-slider-pagination {
    max-width: min(220px,62vw);
    gap: 5px;
    margin-top: 8px;
    padding: 4px 7px;
  }
  .slider-pagination button button,.featured-slider-pagination button {
    width: 12px;
    height: 3px;
  }
  .slider-pagination button[data-fnui-is-active="true"] button[data-fnui-is-active="true"],.featured-slider-pagination button[data-fnui-is-active="true"],.slider-pagination button._1dfuy4s2 button._1dfuy4s2,.featured-slider-pagination button._1dfuy4s2 {
    width: 24px;
  }
  .game-dialog.is-pattern-mode {
    width: min(344px,calc(100vw - 30px));
    max-height: calc(100dvh - 54px);
    border-radius: 22px;
  }
  .game-dialog.is-pattern-mode .dialog-card {
    max-height: calc(100dvh - 54px);
  }
  .game-dialog.is-pattern-mode .dialog-body {
    gap: 10px;
    padding: 18px;
  }
  .game-dialog.is-pattern-mode .eyebrow {
    min-height: 22px;
    width: fit-content;
    padding-inline: 9px;
    font-size: 9px;
  }
  .game-dialog.is-pattern-mode .dialog-body h3 {
    max-width: calc(100% - 36px);
    font-size: clamp(22px,7vw,28px);
    line-height: 1.02;
    letter-spacing: -.04em;
  }
  .game-dialog.is-pattern-mode .dialog-body dl {
    display: none;
  }
  .game-dialog.is-pattern-mode .dialog-actions {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-top: 2px;
  }
  .game-dialog.is-pattern-mode .dialog-actions .button {
    min-height: 36px;
    padding-inline: 10px;
    border-radius: 15px;
    font-size: 10.5px;
  }
  .game-dialog.is-pattern-mode .dialog-close {
    top: 10px;
    right: 10px;
    width: 36px;
    height: 36px;
  }
  .game-dialog.is-pattern-mode .dialog-close svg {
    width: 15px;
    height: 15px;
  }
}

.game-pola-card, .winner-card {
  box-shadow: var(--rtpx-card-soft-shadow);
}

@media (max-width:820px),(pointer:coarse) {
  html,html.is-mobile-runtime {
    scroll-behavior: auto;
  }
  body {
    background-attachment: scroll;
    overscroll-behavior-y: contain;
  }
  body:not(.admin-page) {
    background: var(--theme-bg);
  }
  .win-proof-card, .all-wins-card, .game-pola-card {
    content-visibility: visible;
    contain: layout paint;
    transform: none;
    will-change: auto;
  }
  .button, .link-button, .sort-menu__button, .search {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
  .rtp-home-hero__poster {
    transform: none;
    will-change: auto;
  }
  .hero-reflection,[class*="reflection"] {
    filter: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
  .all-wins-media, .game-pola-card-media {
    background-color: var(--theme-container-bg,#363737);
    backface-visibility: hidden;
    transform: none;
  }
  .all-wins-media img, .game-pola-card-media img {
    opacity: 1;
    background-color: var(--theme-container-bg,#363737);
    transition: none;
    transform: none;
    will-change: auto;
  }
}

html[data-rtpx-early-theme="applied"] body:not(.admin-page),html[data-rtpx-theme-ready="true"] body:not(.admin-page) {
  background: var(--theme-bg);
  color: var(--theme-text,#f8f8fa);
}

html:not([data-rtpx-theme-ready="true"]),html:not([data-rtpx-theme-ready="true"]) body:not(.admin-page) {
  background-color: var(--theme-bg,var(--rtpx-fallback-bg));
}

.all-wins-card, .all-wins-card-link, .game-pola-card {
  transform: none;
  filter: none;
  outline-style: solid;
  outline-width: 0;
  outline-color: transparent;
  outline-offset: var(--button-outline-idle,.625rem);
  transition: outline-color .15s ease-out,outline-offset .15s ease-out,outline-width .15s ease-out,border-color .15s ease-out,background-color .15s ease-out,color .15s ease-out,opacity .15s ease-out,box-shadow .15s ease-out;
  will-change: auto;
}

body:not(.admin-page) {
  background-color: var(--theme-bg);
  background: var(--theme-bg);
  color: var(--theme-text,var(--text,#f8f8fa));
  --rtpx-card-bg: linear-gradient(180deg,rgba(255,255,255,.105),rgba(255,255,255,.05)),rgba(var(--theme-container-bg-rgb,18,54,92),.62);
  --rtpx-card-border: rgba(255,255,255,.18);
  --rtpx-card-border-soft: rgba(255,255,255,.115);
}

html[data-rtpx-first-paint-guard="hold"] body:not(.admin-page),html[data-rtpx-first-paint-guard="cached"] body:not(.admin-page) {
  opacity: 0;
  visibility: hidden;
}

html[data-rtpx-first-paint-guard="ready"] body:not(.admin-page) {
  opacity: 1;
  visibility: visible;
}

body:not(.admin-page) img {
  image-rendering: auto;
  filter: none;
}

html[data-rtpx-navigating="true"] :where(main,.page-shell,.jackpot-main,.game-pola-main,.all-wins-main,.guide-main,.promo-main) {
  opacity: .992;
  transform: none;
  filter: none;
  transition: opacity .06s linear;
}

html.page-transition-out body,html.page-transition-out :where(main,.page-shell,.jackpot-main,.game-pola-main,.all-wins-main,.guide-main,.promo-main) {
  opacity: 1;
  transform: none;
  filter: none;
  transition: none;
}

@media (prefers-reduced-motion:reduce) {
  html[data-rtpx-navigating="true"] :where(main,.page-shell,.jackpot-main,.game-pola-main,.all-wins-main,.guide-main,.promo-main) {
    transition: none;
  }
}

body[data-page="home"] [data-pola-inactive="true"] {
  content-visibility: auto;
}



body:not(.admin-page) :is(img[data-pola-cover],img[data-jackpot-image],img[data-jackpot-backdrop],img[data-transfer-image],img[data-dialog-image]) {
  background: linear-gradient(135deg,color-mix(in srgb,var(--theme-text) 5.5%,transparent),color-mix(in srgb,var(--theme-text) 1.5%,transparent)),var(--theme-container-bg,var(--theme-surface,var(--theme-bg)));
  object-fit: cover;
  object-position: center;
  transition: none;
  animation: none;
  filter: none;
  backface-visibility: hidden;
}

body:not(.admin-page) :is(img[data-pola-cover],img[data-jackpot-image],img[data-jackpot-backdrop],img[data-transfer-image],img[data-dialog-image])[src=""],body:not(.admin-page) :is(img[data-pola-cover],img[data-jackpot-image],img[data-jackpot-backdrop],img[data-transfer-image],img[data-dialog-image]):not([src]) {
  opacity: .001;
  visibility: hidden;
}
