/* V45: shared visual language. Loaded last, including after deferred routes. */
:root {
  --font-body: system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-title: var(--font-body);
  --menu-font: var(--font-body);
  --menu-display: var(--font-body);
  --ui-font: var(--font-body);
  --ui-display: var(--font-body);
  --v45-bg: #11171f;
  --v45-panel: #1a2430;
  --v45-border: rgba(186, 204, 222, .2);
  --v45-muted: #bcc9d7;
  --v45-gold: #ffca68;
}
.ui-v45 { font-family: var(--font-body); }
body.ui-v45 #app .screen.hidden,
body.ui-v45 #app .screen[hidden] { display: none !important; }
.ui-v45 :is(button, input, select, a) { letter-spacing: normal; }
.ui-v45 :is(button, a, input, select):focus-visible {
  outline: 3px solid #fff0bc !important;
  outline-offset: 4px !important;
}
.ui-v45 button:disabled { cursor:var(--bm-cursor-default)!important; }
.runtime-loader-v41__home { display: block; margin: 14px auto 0; min-height: 44px; padding: 8px 16px; border: 1px solid #60758c; border-radius: 8px; background: #243346; color: #fff; cursor:var(--bm-cursor-action)!important; }
body.ui-v45:has(#screenMenu:not(.hidden)) { overflow: hidden; background: var(--v45-bg); }
body.ui-v45:has(#screenMenu:not(.hidden)) :is(.app, #screenMenu) {
  height: 100dvh; width: 100%; overflow: auto; scrollbar-color: #617084 #11171f;
}
#screenMenu .home-hub-v45 {
  display: flex; flex-direction: column; width: 100%; height: auto; min-height: 100dvh;
  padding: 116px max(24px, calc((100vw - 1320px) / 2)) 20px;
  overflow: hidden; gap: 38px; background: #11171f;
}
#screenMenu .home-v12__art { inset: 0; background-position: 66% 36%; filter: none; }
#screenMenu .home-v12__grade {
  background: linear-gradient(90deg, rgba(9,16,25,.96), rgba(9,16,25,.72) 32%, rgba(9,16,25,.06) 76%),
    linear-gradient(180deg, rgba(9,16,25,.15), rgba(9,16,25,.1) 40%, #11171f 77%);
}
#screenMenu .home-v23__scene { display: none; }
#screenMenu .home-hub-v45::after { display: none; }
#screenMenu .home-v12__brand-row[hidden] { display: none; }
body.ui-v45:has(#screenMenu:not(.hidden)) .header {
  top: 0 !important; right: 0 !important; left: 0 !important; width: 100% !important;
  display: flex !important; align-items: center !important; justify-content: space-between !important;
  padding: 16px max(24px, calc((100vw - 1320px) / 2)) !important;
  background: rgba(10,16,24,.9) !important; border-bottom: 1px solid var(--v45-border) !important;
  backdrop-filter: blur(12px) !important; pointer-events: auto !important;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .header__brand { display: flex !important; }
body.ui-v45:has(#screenMenu:not(.hidden)) .header-context { display: none !important; }
body.ui-v45:has(#screenMenu:not(.hidden)) .brand-lockup__word { font: 900 22px/1 var(--font-body) !important; letter-spacing: 0 !important; }
body.ui-v45:has(#screenMenu:not(.hidden)) .brand-lockup__mark { width: 38px !important; height: 38px !important; }
body.ui-v45:has(#screenMenu:not(.hidden)) .header__right {
  padding: 0 !important; gap: 8px !important; border: 0 !important; border-radius: 0 !important;
  background: none !important; box-shadow: none !important; backdrop-filter: none !important;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .menu-utility {
  height: 44px !important; min-height: 44px !important; border-radius: 8px !important;
  background: #202b39 !important; border-color: var(--v45-border) !important; box-shadow: none !important;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .menu-utility--icon { width: 44px !important; min-width: 44px !important; padding: 8px !important; }
body.ui-v45:has(#screenMenu:not(.hidden)) .menu-utility--coins { min-width: 100px !important; padding: 0 12px !important; }
body.ui-v45:has(#screenMenu:not(.hidden)) .menu-utility--reward { display: none !important; }
body.ui-v45:has(#screenMenu:not(.hidden)) .menu-utility__icon { width: 28px !important; height: 28px !important; }
#screenMenu .home-v12__hero {
  position: relative; inset: auto; z-index: 1; width: min(570px, 100%); padding: 12px 0 0;
  border: 0; border-radius: 0; background: none; box-shadow: none; backdrop-filter: none; text-shadow: none;
}
#screenMenu .home-v12__hero::before { display: none; }
#screenMenu .home-v12__season {
  margin-bottom: 14px; padding: 0; min-height: 0; border: 0; border-radius: 0;
  background: none; font: 800 12px/1.5 var(--font-body); letter-spacing: .1em; color: #ffda91;
}
#screenMenu .home-v12__hero h1 { font: 950 clamp(36px, 5.6vw, 76px)/1.1 var(--font-body); letter-spacing: 0; max-width: none; }
#screenMenu .home-v12__hero p { font: 500 clamp(17px, 1.5vw, 21px)/1.5 var(--font-body); color: #e3eaf2; max-width: 34ch; margin: 12px 0 22px; }
#screenMenu .home-v23__continue {
  margin: 0; padding: 16px; min-height: 88px; gap: 14px; border-radius: 8px;
  background: #ffca68; color: #292016; border: 1px solid #ffe0a3; box-shadow: 0 8px 28px rgba(0,0,0,.22);
}
#screenMenu .home-v23__continue-icon { background: rgba(40,30,10,.1); color: #39260b; box-shadow: none; border-radius: 8px; }
#screenMenu .home-v23__continue-copy { gap: 5px; }
#screenMenu .home-v23__continue-copy small { font: 800 11px/1.25 var(--font-body); color: #614619; letter-spacing: .06em; }
#screenMenu .home-v23__continue-copy strong { font: 800 17px/1.3 var(--font-body); color: #292016; }
#screenMenu .home-v23__continue-copy em { font: 600 13px/1.4 var(--font-body); color: #614619; }
#screenMenu .home-v23__continue-arrow { color: #39260b; background: rgba(40,30,10,.06); border-color: rgba(40,30,10,.2); }
.home-journey-v45 { margin-top: 18px; max-width: 570px; }
.home-journey-v45 > div:first-child { display: flex; justify-content: space-between; gap: 12px; font-size: 13px; color: #ccd7e5; }
.home-journey-v45 strong { font-weight: 700; color: #fff; }
.home-journey-v45__track { height: 5px; margin-top: 10px; border-radius: 4px; overflow: hidden; background: rgba(222,232,246,.18); }
.home-journey-v45__track i { display: block; height: 100%; width: var(--journey-progress, 0%); background: #ffca68; border-radius: inherit; transition: width .2s; }
#screenMenu .home-v12__dock {
  position: relative; inset: auto; z-index: 1; margin-top: auto; padding: 0; border: 0; border-radius: 0;
  background: none; box-shadow: none; backdrop-filter: none;
}
#screenMenu .home-v12__dock::before { display: none; }
.home-section-head-v45 { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.home-section-head-v45 h2 { margin: 0; font-size: 22px; font-weight: 800; }
#screenMenu .home-v12__modes { gap: 14px; }
#screenMenu .home-v12__mode { height: 180px !important; min-height: 180px !important; border-radius: 8px !important; box-shadow: none !important; }
#screenMenu .home-v12__thumb { height: 110px; filter: none; }
#screenMenu .home-v12__body { height: 80px; padding: 12px; grid-template-columns: 38px minmax(0,1fr) 20px; gap: 10px; background: #172330; }
#screenMenu .home-v12__mode-icon { width: 38px !important; height: 38px !important; border-radius: 8px !important; box-shadow: none !important; }
#screenMenu .home-v12__mode-copy b { font: 800 19px/1.3 var(--font-body) !important; letter-spacing: 0 !important; text-shadow: none; }
#screenMenu .home-v12__mode-copy small { font: 500 12px/1.4 var(--font-body) !important; white-space: normal !important; color: #bcc9d7 !important; }
#screenMenu .home-v12__mode-arrow { border: 0 !important; width: 20px !important; height: 24px !important; background: none !important; }
#screenMenu .home-v23__mode-status { border-radius: 5px; min-height: 28px; background: #101a26; border-color: rgba(230,240,255,.24); padding: 4px 9px; max-width: 90%; }
#screenMenu .home-v23__mode-status b { font: 700 12px/1.4 var(--font-body); }
#screenMenu .home-v12__secondary { justify-content: flex-start !important; gap: 12px !important; margin-top: 16px !important; }
#screenMenu .home-v12__secondary button { width: 180px !important; max-width: none !important; min-height: 44px !important; height: 44px !important; border-radius: 8px !important; background: #18212c !important; box-shadow: none !important; grid-template-columns: 24px minmax(0,1fr) 20px !important; }
#screenMenu .home-v12__secondary-art { width: 24px !important; height: 24px !important; border: 0 !important; background: none !important; box-shadow: none !important; }
#screenMenu .home-v12__secondary button > span:nth-child(2) { font: 650 13px/1.4 var(--font-body) !important; letter-spacing: 0 !important; }
.home-footer-v45 { display: flex; justify-content: space-between; gap: 14px; margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--v45-border); font-size: 12px; color: #abbccc; }
.home-footer-v45 small { margin-left: 8px; color: #8195ab; }

/* Hubs, collection and dialogs share the same readable scale. */
body.ui-v45:has(:is(#screenCampaign, #screenSurvival, #screenAchievements):not(.hidden)) { background: var(--v45-bg) !important; }
.ui-v45 :is(#screenCampaign, #screenSurvival, #screenAchievements) { overflow-y: auto !important; }
.ui-v45 :is(#screenCampaign, #screenSurvival, #screenAchievements) .campaign-header {
  min-height: 80px !important; padding: 16px clamp(16px, 3vw, 48px) !important;
  background: #141e29 !important; border-bottom: 1px solid var(--v45-border) !important;
  box-shadow: none !important;
}
.ui-v45 .campaign-header__title { font: 800 21px/1.3 var(--font-body) !important; letter-spacing: 0 !important; }
.ui-v45 .mode-header__meta { font: 600 12px/1.5 var(--font-body) !important; color: #bcc9d7 !important; letter-spacing: 0 !important; }
.ui-v45 :is(.campaign-content, .survival-content, .achievements-content) { width: 100% !important; max-width: 1320px !important; margin: 0 auto !important; padding: 24px !important; overflow-y: auto !important; }
.ui-v45 :is(.story-hero-panel, .story-summary-card, .achievements-hub, .achievement-card, .survival-launchpad__hero, .survival-rule-card, .skins-ref-v12__hero-panel, .skins-ref-v12__catalog) {
  background: var(--v45-panel) !important; border-color: var(--v45-border) !important;
  border-radius: 8px !important; box-shadow: none !important;
}
.ui-v45 :is(.story-hero-panel__title, .survival-title, .achievements-hub h3) { font: 850 clamp(25px, 3vw, 38px)/1.2 var(--font-body) !important; letter-spacing: 0 !important; }
.ui-v45 :is(.story-hero-panel__desc, .story-hero-panel__callout-copy p, .survival-desc, .achievements-hub p, .survival-rule-card p) { font: 500 15px/1.65 var(--font-body) !important; color: #c5d2df !important; }
.ui-v45 :is(.story-summary-card small, .story-summary-card span, .story-hero-panel__eyebrow, .survival-intro__eyebrow, .survival-rule-card small, .achievement-card__desc, .achievement-card__target) { font-size: 12px !important; line-height: 1.5 !important; color: #bcc9d7 !important; letter-spacing: 0 !important; }
.ui-v45 .story-hub--story3 .story-summary-card { padding: 14px !important; }
.ui-v45 .story-hub--story3 .story-summary-card strong { font: 800 23px/1.25 var(--font-body) !important; }
.ui-v45 :is(.story-button, .survival-start-btn, .achievement-card__claim) { min-height: 48px !important; border-radius: 8px !important; font: 800 15px/1.4 var(--font-body) !important; letter-spacing: 0 !important; text-shadow: none !important; }
.ui-v45 :is(.story-button--primary, .survival-start-btn) { background: #ffca68 !important; color: #302315 !important; box-shadow: none !important; border-color: #ffda91 !important; }
.ui-v45 .achievement-toolbar { gap: 8px !important; flex-wrap: wrap !important; }
.ui-v45 .achievement-toolbar button { min-height: 44px !important; border-radius: 8px !important; font-size: 13px !important; }
.ui-v45 .achievement-card__name { font: 750 18px/1.4 var(--font-body) !important; letter-spacing: 0 !important; }
.ui-v45 .story-picker-v4 { background: #111b26 !important; border-color: var(--v45-border) !important; border-radius: 8px !important; }
.ui-v45 :is(.story-picker-v4__chapters, .story-picker-v4__missions, .sp4-mission) { background: #1a2430 !important; border-color: var(--v45-border) !important; border-radius: 8px !important; }
.ui-v45 .story-picker-v4 .sp4-mission__name { font: 750 17px/1.35 var(--font-body) !important; }
.ui-v45 .story-picker-v4 :is(.sp4-mission__tag, .sp4-mission__meta, .sp4-mission__head small) { font-size: 12px !important; line-height: 1.4 !important; }
.ui-v45 .skins-ref-v12 { background: #11171f !important; }
.ui-v45 .skins-ref-v12__topbar { background: #141e29 !important; border-color: var(--v45-border) !important; box-shadow: none !important; }
.ui-v45 .skins-ref-v12 :is(h1, h2, h3) { letter-spacing: 0 !important; }
.ui-v45 .skins-ref-v12 :is(.skins-ref-v12__filter, .skins-ref-v12__back) { min-height: 44px !important; border-radius: 8px !important; }
.ui-v45 .ui-dialog { border-radius: 8px !important; background: #1a2430 !important; border-color: #425268 !important; }
.ui-v45 .ui-dialog__title { font: 850 clamp(24px, 3vw, 34px)/1.25 var(--font-body) !important; letter-spacing: 0 !important; }
.ui-v45 .ui-dialog__lead { font: 500 15px/1.6 var(--font-body) !important; color: #c5d2df !important; }
.ui-v45 .ui-dialog :is(input:not([type='checkbox']):not([type='range']), select) { min-height: 48px !important; font-size: 16px !important; border-radius: 8px !important; }
.ui-v45 .ui-dialog button { min-height: 44px; letter-spacing: 0 !important; }
@media (hover:hover) {
}
@media (min-width: 1101px) and (min-height: 850px) {
  #screenMenu .home-hub-v45 { gap: 60px; padding-top: 145px; }
}
@media (max-width: 1100px) {
  #screenMenu .home-v12__modes { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #screenMenu .home-v12__hero { width: min(570px, 80%); }
  #screenMenu .home-hub-v45 { gap: 32px; }
}
@media (max-width: 760px) {
  body.ui-v45:has(#screenMenu:not(.hidden)) .header { padding: 12px 16px !important; }
  body.ui-v45:has(#screenMenu:not(.hidden)) .brand-lockup__word { font-size: 17px !important; }
  body.ui-v45:has(#screenMenu:not(.hidden)) .brand-lockup__mark { width: 30px !important; height: 30px !important; }
  body.ui-v45:has(#screenMenu:not(.hidden)) .menu-utility--fullscreen { display: none !important; }
  body.ui-v45:has(#screenMenu:not(.hidden)) .header__right { gap: 5px !important; }
  body.ui-v45:has(#screenMenu:not(.hidden)) .menu-utility--coins { min-width: 70px !important; padding: 0 8px !important; gap: 5px !important; }
  #screenMenu .home-hub-v45 { padding: 100px 16px 20px; gap: 30px; }
  #screenMenu .home-v12__hero { width: 100%; }
  #screenMenu .home-v12__grade { background: linear-gradient(180deg, rgba(9,16,25,.8), #11171f 48%); }
  #screenMenu .home-v12__art { background-position: 55% 0; background-size: auto 540px; background-repeat: no-repeat; }
  #screenMenu .home-v12__hero h1 { font-size: clamp(32px, 8vw, 55px); }
  .home-footer-v45 { flex-direction: column; gap: 6px; }
  .ui-v45 .campaign-header__identity { flex-wrap: wrap !important; }
  .ui-v45 .campaign-header .brand-lockup--section, .ui-v45 .campaign-header__divider { display: none !important; }
  .ui-v45 :is(.campaign-content, .survival-content, .achievements-content) { padding: 16px !important; }
  .ui-v45 .story-picker-v4__layout { grid-template-columns: 1fr !important; overflow-y: auto !important; }
  .ui-v45 .story-picker-v4__chapters { max-height: 200px !important; }
  .ui-v45 .story-picker-v4__missions { overflow: visible !important; }
  .ui-v45 .story-picker-v4__header { grid-template-columns: minmax(0,1fr) 44px !important; }
  .ui-v45 .story-picker-v4__overall { display: none !important; }
  .ui-v45 .survival-launchpad__hero { grid-template-columns: 1fr !important; padding: 20px !important; }
  .ui-v45 .survival-launchpad__rules { grid-template-columns: 1fr !important; }
  .ui-v45 .achievements-grid { grid-template-columns: 1fr !important; }
  .ui-v45 .skins-ref-v12__layout { grid-template-columns: 1fr !important; height: auto !important; }
  .ui-v45 .skins-ref-v12 { height: auto !important; min-height: 100dvh; overflow-y: auto !important; }
  .ui-v45 .skins-ref-v12__topbar { height: auto !important; min-height: 80px !important; flex-wrap: wrap !important; }
  .ui-v45 .skins-ref-v12__hero-panel, .ui-v45 .skins-ref-v12__catalog { min-height: 0 !important; height: auto !important; }
}
@media (max-width: 480px) {
  #screenMenu .home-v12__modes { grid-template-columns: 1fr; }
  #screenMenu .home-v12__mode { height: 170px !important; min-height: 170px !important; }
  #screenMenu .home-v12__secondary button { width: calc(50% - 6px) !important; padding: 0 10px !important; gap: 6px !important; }
  .ui-v45 .mode-header__meta { display: none !important; }
}


/* V46 critical repair: header utilities must never disappear or depend on bitmap assets. */
body.ui-v45:has(#screenMenu:not(.hidden)) .menu-utility__icon[data-ui-icon] { display:inline-flex !important; width:28px !important; height:28px !important; flex:0 0 28px !important; color:#eaf6ff !important; }
body.ui-v45:has(#screenMenu:not(.hidden)) .header-currency-icon[data-ui-icon] { width:20px !important; height:20px !important; }

/* ======================================================================
   V47 SKINS RECOVERY — isolate the collection from the generic V45 hub.
   The skins screen owns its header/layout; the generic campaign shell must
   never reserve space or override its fixed viewport grid.
   ====================================================================== */
.screen--skins:not(.hidden) > .campaign-header{display:none!important}
.screen--skins:not(.hidden){height:100dvh!important;min-height:100dvh!important;overflow:hidden!important;padding:0!important}
.screen--skins:not(.hidden) > .skins-content{height:100dvh!important;min-height:0!important;overflow:hidden!important;padding:16px!important}
.screen--skins:not(.hidden) .skins-ref-v12{height:100%!important;min-height:0!important;overflow:hidden!important;display:grid!important;grid-template-rows:72px minmax(0,1fr)!important;gap:14px!important;background:transparent!important}
.screen--skins:not(.hidden) .skins-ref-v12__layout{height:100%!important;min-height:0!important;overflow:hidden!important;display:grid!important;grid-template-columns:minmax(390px,.88fr) minmax(610px,1.32fr)!important;grid-template-rows:minmax(0,1fr)!important;gap:14px!important}
.screen--skins:not(.hidden) .skins-ref-v12__hero-panel,
.screen--skins:not(.hidden) .skins-ref-v12__catalog{height:100%!important;min-height:0!important;overflow:hidden!important}
@media (max-width:1050px){
  .screen--skins:not(.hidden){height:auto!important;min-height:100dvh!important;overflow:auto!important}
  .screen--skins:not(.hidden) > .skins-content{height:auto!important;min-height:100dvh!important;overflow:visible!important;padding:10px!important}
  .screen--skins:not(.hidden) .skins-ref-v12{height:auto!important;min-height:100dvh!important;overflow:visible!important;grid-template-rows:auto auto!important}
  .screen--skins:not(.hidden) .skins-ref-v12__layout{height:auto!important;overflow:visible!important;grid-template-columns:1fr!important;grid-template-rows:auto auto!important}
  .screen--skins:not(.hidden) .skins-ref-v12__hero-panel{height:auto!important;min-height:700px!important}
  .screen--skins:not(.hidden) .skins-ref-v12__catalog{height:auto!important;min-height:760px!important}
}


/* V50 HEADER CONTROLS — currency alignment, language switch and interaction polish. */
body.ui-v45 .header-language{
  --lang-h:44px;
  --lang-flag-w:26px;
  --lang-track-w:38px;
  appearance:none;
  -webkit-appearance:none;
  display:grid;
  grid-template-columns:var(--lang-flag-w) var(--lang-track-w) var(--lang-flag-w);
  align-items:center;
  justify-content:center;
  gap:6px;
  width:114px;
  min-width:114px;
  height:var(--lang-h);
  min-height:var(--lang-h);
  margin:0;
  padding:0 7px;
  border:1px solid var(--v45-border);
  border-radius:8px;
  background:#202b39;
  color:#eaf6ff;
  box-shadow:none;
  cursor:var(--bm-cursor-action)!important;
  user-select:none;
  -webkit-tap-highlight-color:transparent;
  transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease;
}
body.ui-v45 .header-language__flag{
  display:grid;
  place-items:center;
  width:26px;
  height:20px;
  padding:2px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:5px;
  background:rgba(3,9,18,.48);
  opacity:.48;
  transform:scale(.92);
  transition:opacity .16s ease,transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
body.ui-v45 .header-language__flag svg{
  display:block;
  width:22px;
  height:14px;
  border-radius:2px;
  overflow:hidden;
}
body.ui-v45 .header-language__track{
  position:relative;
  display:block;
  width:38px;
  height:20px;
  border:1px solid rgba(128,176,214,.28);
  border-radius:999px;
  background:#0c1520;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.45);
}
body.ui-v45 .header-language__thumb{
  position:absolute;
  top:3px;
  left:3px;
  width:12px;
  height:12px;
  border-radius:50%;
  background:#76ddff;
  box-shadow:0 0 0 2px rgba(118,221,255,.12),0 1px 4px rgba(0,0,0,.45);
  transition:transform .18s cubic-bezier(.2,.8,.2,1),background-color .18s ease;
}
body.ui-v45 .header-language[data-language="ru"] .header-language__flag--ru,
body.ui-v45 .header-language[data-language="en"] .header-language__flag--en{
  opacity:1;
  transform:scale(1);
  border-color:rgba(118,221,255,.46);
  box-shadow:0 0 0 2px rgba(118,221,255,.08);
}
body.ui-v45 .header-language[data-language="en"] .header-language__thumb{
  transform:translateX(18px);
  background:#ffcf67;
  box-shadow:0 0 0 2px rgba(255,207,103,.12),0 1px 4px rgba(0,0,0,.45);
}
body.ui-v45:has(#screenMenu:not(.hidden)) .menu-utility--coins{
  justify-content:center!important;
  align-items:center!important;
  gap:8px!important;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .header-currency-icon--coins{
  display:grid!important;
  place-items:center!important;
  width:22px!important;
  height:22px!important;
  flex:0 0 22px!important;
  margin:0!important;
  padding:0!important;
  line-height:1!important;
  transform:none!important;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .header-currency-icon--coins>.ui-icon{
  display:block!important;
  width:22px!important;
  height:22px!important;
  margin:0!important;
  vertical-align:middle!important;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .coins__value{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:22px!important;
  margin:0!important;
  line-height:1!important;
  font-variant-numeric:tabular-nums;
}
body.ui-v45:has(#screenMenu:not(.hidden)) :is(#soundToggle,#btnMenuSettings,#fullscreenToggle,.header-language),
#screenMenu .home-v12__secondary :is(#btnContactDev,#btnPromoCodes){
  cursor:var(--bm-cursor-action)!important;
}
@media (hover:hover) and (pointer:fine){
  body.ui-v45 .header-language:hover{
    background:#263547;
    border-color:rgba(121,217,255,.48);
  }
}
body.ui-v45 .header-language:focus-visible{
  outline:2px solid #79d9ff;
  outline-offset:2px;
}
body.ui-v45 .header-language:active .header-language__track{transform:scale(.96)}

@media (max-width:1180px){
  body.ui-v45:has(#screenMenu:not(.hidden)) .header{padding-left:18px!important;padding-right:18px!important}
  body.ui-v45:has(#screenMenu:not(.hidden)) .header__right{gap:6px!important}
  body.ui-v45 .header-language{width:108px;min-width:108px;gap:4px;padding-inline:6px}
}
@media (max-width:980px){
  body.ui-v45:has(#screenMenu:not(.hidden)) .menu-utility--coins{min-width:86px!important;padding:0 9px!important;gap:6px!important}
  body.ui-v45 .header-language{width:104px;min-width:104px}
}
@media (max-width:840px){
  body.ui-v45:has(#screenMenu:not(.hidden)) .brand-lockup__word{display:none!important}
  body.ui-v45:has(#screenMenu:not(.hidden)) .header{padding-left:12px!important;padding-right:12px!important}
  body.ui-v45 .header-language{--lang-flag-w:24px;--lang-track-w:34px;width:98px;min-width:98px;gap:3px;padding-inline:5px}
  body.ui-v45 .header-language__track{width:34px}
  body.ui-v45 .header-language[data-language="en"] .header-language__thumb{transform:translateX(14px)}
}

/* ======================================================================
   V53 DAILY REWARD CARD — reward CTA lives inside the scrollable home
   scene. It keeps the same visual anchor under the header but scrolls away
   naturally with the main screen instead of following the viewport.
   ====================================================================== */
body.ui-v45 .daily-reward-float{
  display:none;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float{
  position:absolute;
  z-index:4;
  top:84px;
  right:max(24px,calc((100vw - 1320px)/2));
  display:grid;
  grid-template-columns:50px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  width:min(340px,calc(100vw - 48px));
  min-height:74px;
  padding:10px 11px 10px 12px;
  overflow:hidden;
  border:1px solid rgba(255,128,207,.52);
  border-radius:14px;
  background:
    radial-gradient(circle at 10% 22%,rgba(255,83,195,.24),transparent 34%),
    radial-gradient(circle at 88% 0%,rgba(66,210,255,.12),transparent 38%),
    linear-gradient(112deg,rgba(65,22,83,.98),rgba(34,28,64,.98) 56%,rgba(21,42,62,.98));
  color:#fff;
  box-shadow:0 14px 34px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.10);
  backdrop-filter:blur(14px) saturate(125%);
  -webkit-backdrop-filter:blur(14px) saturate(125%);
  text-align:left;
  cursor:var(--bm-cursor-action)!important;
  isolation:isolate;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,filter .16s ease;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float::before{
  content:'';
  position:absolute;
  z-index:-1;
  inset:0;
  background:
    linear-gradient(90deg,rgba(255,255,255,.05),transparent 34%),
    radial-gradient(circle at 17% 42%,rgba(255,112,211,.18),transparent 38%);
  pointer-events:none;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float::after{
  content:'';
  position:absolute;
  top:-55%;
  bottom:-55%;
  left:-35%;
  width:22%;
  transform:skewX(-18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);
  opacity:0;
  pointer-events:none;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__icon{
  display:grid;
  place-items:center;
  width:50px;
  height:50px;
  border:1px solid rgba(255,173,226,.44);
  border-radius:13px;
  background:
    radial-gradient(circle at 72% 18%,rgba(105,232,255,.22),transparent 30%),
    linear-gradient(145deg,rgba(143,42,151,.72),rgba(77,31,118,.82));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 7px 18px rgba(11,5,29,.32),0 0 18px rgba(255,73,189,.10);
}
body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__gift{
  display:block;
  width:40px;
  height:40px;
  overflow:visible;
  filter:drop-shadow(0 4px 6px rgba(12,4,24,.34));
}
body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__spark{
  transform-box:fill-box;
  transform-origin:center;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__copy{
  display:flex;
  flex-direction:column;
  min-width:0;
  gap:3px;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__copy small{
  overflow:hidden;
  color:#f1b9e4;
  font:850 9px/1.1 var(--font-body);
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
  text-overflow:ellipsis;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__copy strong{
  overflow:hidden;
  color:#fff;
  font:900 14px/1.15 var(--font-body);
  white-space:nowrap;
  text-overflow:ellipsis;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__copy em{
  overflow:hidden;
  color:#d3dce8;
  font:650 10px/1.15 var(--font-body);
  font-style:normal;
  white-space:nowrap;
  text-overflow:ellipsis;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__action{
  display:grid;
  place-items:center;
  min-width:68px;
  min-height:34px;
  padding:0 10px;
  border:1px solid rgba(255,218,133,.42);
  border-radius:9px;
  background:linear-gradient(180deg,rgba(255,210,112,.17),rgba(255,174,71,.09));
  color:#ffe19a;
  font:900 10px/1 var(--font-body);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  text-transform:uppercase;
  white-space:nowrap;
}
body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float.is-ready{
  border-color:rgba(255,164,219,.78);
  box-shadow:0 16px 38px rgba(0,0,0,.34),0 0 24px rgba(255,74,187,.14),0 0 0 1px rgba(255,110,206,.10),inset 0 1px 0 rgba(255,255,255,.14);
}
body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float.is-ready .daily-reward-float__action{
  border-color:rgba(255,230,151,.88);
  background:linear-gradient(180deg,#ffe079,#ffbd4e);
  color:#35220a;
  box-shadow:0 5px 14px rgba(255,177,55,.18),inset 0 1px 0 rgba(255,255,255,.45);
}
@media (hover:hover) and (pointer:fine){
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float:hover{
    transform:translateY(-2px);
    border-color:rgba(255,151,222,.72);
    box-shadow:0 18px 42px rgba(0,0,0,.38),0 0 0 1px rgba(255,110,206,.10),inset 0 1px 0 rgba(255,255,255,.13);
    filter:brightness(1.04);
  }
}
body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float:active{
  transform:translateY(0) scale(.985);
}
body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float:focus-visible{
  outline:3px solid #fff0bc!important;
  outline-offset:3px!important;
}
@media (prefers-reduced-motion:no-preference){
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float.is-ready::after{
    animation:dailyRewardSheenV51 5.6s ease-in-out infinite;
  }
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float.is-ready .daily-reward-float__icon{
    animation:dailyRewardGiftV53 4.2s ease-in-out infinite;
  }
}
@keyframes dailyRewardSheenV51{
  0%,72%{left:-35%;opacity:0}
  76%{opacity:.85}
  88%{left:118%;opacity:.55}
  92%,100%{left:118%;opacity:0}
}
@keyframes dailyRewardGiftV53{
  0%,74%,100%{transform:translateY(0) rotate(0) scale(1)}
  80%{transform:translateY(-2px) rotate(-2deg) scale(1.035)}
  86%{transform:translateY(0) rotate(2deg) scale(1.02)}
  92%{transform:translateY(-1px) rotate(0) scale(1)}
}
@media (prefers-reduced-motion:no-preference){
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float.is-ready .daily-reward-float__spark--one{animation:dailyRewardSparkV53 2.4s ease-in-out infinite}
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float.is-ready .daily-reward-float__spark--two{animation:dailyRewardSparkV53 2.4s .55s ease-in-out infinite}
}
@keyframes dailyRewardSparkV53{
  0%,55%,100%{opacity:.45;transform:scale(.75)}
  72%{opacity:1;transform:scale(1.2)}
}

/* V51: reward is no longer a header utility. Keep the header dedicated to
   currency, language, sound, settings and fullscreen. */
body.ui-v45:has(#screenMenu:not(.hidden)) .header__right .menu-utility--reward{
  display:none!important;
}
body.ui-v45:has(#screenMenu:not(.hidden)) #btnMenuSettings .menu-utility__icon>.ui-icon{
  width:25px!important;
  height:25px!important;
}

@media (max-width:1180px){
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float{
    right:18px;
    top:82px;
    width:312px;
  }
}
@media (max-width:980px){
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float{
    top:78px;
    width:292px;
    grid-template-columns:42px minmax(0,1fr) auto;
    min-height:64px;
    gap:9px;
    padding:8px 9px;
  }
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__icon{width:42px;height:42px}
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__gift{width:34px;height:34px}
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__copy strong{font-size:13px}
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__action{min-width:60px;padding-inline:7px}
}
@media (max-width:760px){
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float{
    top:68px;
    right:12px;
    width:250px;
    grid-template-columns:40px minmax(0,1fr);
    min-height:58px;
    padding:8px 10px;
  }
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__icon{width:40px;height:40px}
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__gift{width:33px;height:33px}
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__action{display:none}
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__copy small{font-size:8px}
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__copy strong{font-size:12px}
}
@media (max-width:520px){
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float{
    right:10px;
    width:58px;
    min-width:58px;
    grid-template-columns:1fr;
    place-items:center;
    padding:9px;
  }
  body.ui-v45:has(#screenMenu:not(.hidden)) .daily-reward-float__copy{display:none}
}

/* ========================================================================
   V55 — Daily Rewards / 7-day login streak
   A self-contained reward surface: readable at 1365×768, responsive down to
   compact widths, and intentionally more celebratory than utility modals.
   ======================================================================== */
#dailyRewardsModal.ui-modal--rewards{
  padding:clamp(14px,2.2vw,32px)!important;
}
#dailyRewardsModal .daily-rewards-overlay{
  background:
    radial-gradient(circle at 20% 15%,rgba(82,116,255,.18),transparent 34%),
    radial-gradient(circle at 82% 72%,rgba(255,70,190,.18),transparent 35%),
    rgba(2,6,17,.84)!important;
  backdrop-filter:blur(18px) saturate(125%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(125%)!important;
}
#dailyRewardsModal .daily-rewards-v55{
  --reward-gold:#ffd35d;
  --reward-gold-2:#ff9f43;
  --reward-pink:#ff5fc8;
  --reward-violet:#9a72ff;
  --reward-cyan:#6be8ff;
  position:relative!important;
  width:min(960px,calc(100vw - 28px))!important;
  max-width:960px!important;
  max-height:min(92dvh,780px)!important;
  padding:clamp(20px,2.1vw,30px)!important;
  overflow:auto!important;
  isolation:isolate!important;
  border:1px solid rgba(162,132,255,.42)!important;
  border-radius:28px!important;
  background:
    linear-gradient(180deg,rgba(14,22,50,.98),rgba(5,10,27,.99))!important;
  box-shadow:
    0 34px 100px rgba(0,0,0,.62),
    0 0 0 1px rgba(255,255,255,.04) inset,
    0 0 70px rgba(132,78,255,.13)!important;
  scrollbar-width:thin;
  scrollbar-color:rgba(154,114,255,.42) transparent;
}
#dailyRewardsModal .daily-rewards-v55::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  z-index:-1;
  background:linear-gradient(90deg,var(--reward-cyan),var(--reward-violet) 35%,var(--reward-pink) 67%,var(--reward-gold));
  box-shadow:0 0 24px rgba(168,108,255,.46);
}
#dailyRewardsModal .daily-rewards-v55__aurora{
  position:absolute;
  inset:0;
  z-index:-2;
  overflow:hidden;
  border-radius:inherit;
  pointer-events:none;
}
#dailyRewardsModal .daily-rewards-v55__aurora::before,
#dailyRewardsModal .daily-rewards-v55__aurora::after{
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  border-radius:50%;
  filter:blur(18px);
  opacity:.17;
}
#dailyRewardsModal .daily-rewards-v55__aurora::before{right:-150px;top:-210px;background:radial-gradient(circle,var(--reward-pink),transparent 66%)}
#dailyRewardsModal .daily-rewards-v55__aurora::after{left:-190px;bottom:-230px;background:radial-gradient(circle,var(--reward-cyan),transparent 66%)}

#dailyRewardsModal .daily-rewards-header{
  display:grid!important;
  grid-template-columns:70px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:16px!important;
  margin:0 0 16px!important;
  padding:0 54px 0 0!important;
}
#dailyRewardsModal .daily-rewards-header__emblem{
  position:relative;
  width:64px;
  height:64px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,204,92,.38);
  border-radius:20px;
  color:var(--reward-gold);
  background:
    radial-gradient(circle at 32% 24%,rgba(255,255,255,.22),transparent 22%),
    linear-gradient(145deg,rgba(255,196,76,.22),rgba(255,77,190,.14) 55%,rgba(121,85,255,.18));
  box-shadow:0 14px 34px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.14);
}
#dailyRewardsModal .daily-rewards-header__emblem .ui-icon{width:34px!important;height:34px!important;color:#ffd35d!important;filter:drop-shadow(0 0 12px rgba(255,196,74,.45))}
#dailyRewardsModal .daily-rewards-header__emblem-glow{
  position:absolute;inset:8px;border-radius:15px;background:radial-gradient(circle,rgba(255,210,93,.18),transparent 70%);pointer-events:none;
}
#dailyRewardsModal .daily-rewards-header__copy{min-width:0}
#dailyRewardsModal .daily-rewards-header__eyebrow{
  display:block;
  margin:0 0 6px;
  color:#c5b8ff;
  font:1000 10px/1 var(--ui-display)!important;
  letter-spacing:.18em;
}
#dailyRewardsModal .daily-rewards-title{
  margin:0!important;
  color:#fff!important;
  font:1000 clamp(26px,2.5vw,38px)/.98 var(--ui-font)!important;
  letter-spacing:-.045em!important;
}
#dailyRewardsModal .daily-rewards-header__copy p{
  margin:7px 0 0;
  color:#9fb0c9;
  font:800 13px/1.35 var(--ui-font);
}
#dailyRewardsModal .daily-rewards-streak{
  min-width:108px;
  padding:10px 13px 9px;
  text-align:right;
  border:1px solid rgba(107,232,255,.17);
  border-radius:16px;
  background:rgba(7,20,43,.72);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
#dailyRewardsModal .daily-rewards-streak small{display:block;margin-bottom:4px;color:#7f94ad;font:1000 8px/1 var(--ui-display);letter-spacing:.11em}
#dailyRewardsModal .daily-rewards-streak strong{display:flex;justify-content:flex-end;align-items:baseline;gap:4px;color:#fff;font:1000 25px/1 var(--ui-font)}
#dailyRewardsModal .daily-rewards-streak em{color:#71859f;font:900 12px/1 var(--ui-font);font-style:normal}
#dailyRewardsModal .daily-rewards-close{top:18px!important;right:18px!important}

#dailyRewardsModal .daily-rewards-progress{
  position:relative;
  height:5px;
  margin:0 0 15px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.055);
  box-shadow:inset 0 1px 2px rgba(0,0,0,.35);
}
#dailyRewardsModal .daily-rewards-progress::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 calc(14.285% - 1px),rgba(255,255,255,.11) calc(14.285% - 1px) 14.285%);pointer-events:none}
#dailyRewardsModal .daily-rewards-progress i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--reward-cyan),var(--reward-violet),var(--reward-pink),var(--reward-gold));box-shadow:0 0 14px rgba(172,108,255,.65);transition:width .5s cubic-bezier(.2,.8,.2,1)}

#dailyRewardsModal .daily-rewards-grid{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:9px!important;
  margin:0 0 14px!important;
}
#dailyRewardsModal .daily-reward-day{
  position:relative!important;
  min-width:0!important;
  min-height:128px!important;
  padding:11px 10px 10px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  overflow:hidden!important;
  opacity:1!important;
  transform:none!important;
  border:1px solid rgba(140,184,255,.13)!important;
  border-radius:16px!important;
  background:
    radial-gradient(circle at 50% 30%,rgba(89,150,255,.10),transparent 52%),
    linear-gradient(180deg,rgba(18,33,66,.74),rgba(8,17,37,.82))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
  transition:border-color .2s ease,background .2s ease,filter .2s ease,box-shadow .2s ease!important;
}
#dailyRewardsModal .daily-reward-day::before{content:"";position:absolute;inset:auto 12% 0;height:1px;background:linear-gradient(90deg,transparent,rgba(107,232,255,.35),transparent);opacity:.5}
#dailyRewardsModal .daily-reward-day__top{position:absolute;top:9px;left:10px;right:9px;display:flex;align-items:center;justify-content:space-between;gap:6px}
#dailyRewardsModal .daily-reward-day__top>span{color:#8498b1;font:1000 8px/1 var(--ui-display);letter-spacing:.09em}
#dailyRewardsModal .daily-reward-day__state{width:17px;height:17px;display:grid;place-items:center;border-radius:50%;color:#09192a;background:transparent;font:1000 10px/1 var(--ui-font);font-style:normal}
#dailyRewardsModal .daily-reward-day__coin{
  width:44px;height:44px;margin-top:11px;display:grid;place-items:center;border-radius:50%;
  color:var(--reward-gold)!important;
  background:radial-gradient(circle at 35% 28%,#fff1a7 0 7%,#ffd45f 8% 24%,#d98b21 68%,#8d5010 100%);
  border:2px solid rgba(255,229,139,.75);
  box-shadow:0 8px 18px rgba(0,0,0,.30),0 0 18px rgba(255,188,61,.13),inset 0 0 0 3px rgba(105,57,6,.25);
}
#dailyRewardsModal .daily-reward-day__coin .ui-icon{width:24px!important;height:24px!important;color:#7b430c!important;stroke-width:2.1!important;filter:none!important}
#dailyRewardsModal .daily-reward-day__amount{margin-top:5px;color:#fff4c5!important;font:1000 18px/1 var(--ui-font)!important;letter-spacing:-.02em}
#dailyRewardsModal .daily-reward-day>small{color:#a28b61;font:1000 8px/1 var(--ui-display);letter-spacing:.12em}
#dailyRewardsModal .daily-reward-day--locked{filter:saturate(.58) brightness(.74)!important}
#dailyRewardsModal .daily-reward-day--claimed{border-color:rgba(91,225,164,.23)!important;background:linear-gradient(180deg,rgba(39,117,91,.13),rgba(7,25,31,.76))!important}
#dailyRewardsModal .daily-reward-day--claimed .daily-reward-day__state{color:#052217;background:#6fe7a9;box-shadow:0 0 12px rgba(111,231,169,.32)}
#dailyRewardsModal .daily-reward-day--current{
  border-color:rgba(255,204,89,.72)!important;
  background:
    radial-gradient(circle at 50% 30%,rgba(255,200,78,.20),transparent 54%),
    linear-gradient(180deg,rgba(90,61,34,.46),rgba(22,24,42,.90))!important;
  box-shadow:0 0 0 1px rgba(255,205,91,.10),0 10px 28px rgba(0,0,0,.26),0 0 24px rgba(255,184,63,.09)!important;
}
#dailyRewardsModal .daily-reward-day--current .daily-reward-day__top>span{color:#ffd66d!important}
#dailyRewardsModal .daily-reward-day--current:not(.daily-reward-day--claimed) .daily-reward-day__state{background:#ffd15d;color:#5b3408;box-shadow:0 0 12px rgba(255,205,83,.34)}

#dailyRewardsModal .daily-reward-day--jackpot{
  grid-column:1/-1!important;
  min-height:104px!important;
  padding:14px 18px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto 22px!important;
  align-items:center!important;
  gap:18px!important;
  text-align:left!important;
  border-color:rgba(255,177,71,.42)!important;
  background:
    radial-gradient(circle at 78% 50%,rgba(255,206,83,.17),transparent 25%),
    radial-gradient(circle at 15% 0%,rgba(255,80,192,.15),transparent 32%),
    linear-gradient(105deg,rgba(68,35,105,.68),rgba(32,27,62,.88) 50%,rgba(77,49,27,.62))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 10px 28px rgba(0,0,0,.20)!important;
}
#dailyRewardsModal .daily-reward-day--jackpot::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 28%,rgba(255,255,255,.08) 42%,transparent 56%);transform:translateX(-120%)}
#dailyRewardsModal .daily-reward-day__jackpot-copy{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
#dailyRewardsModal .daily-reward-day__jackpot-kicker{display:flex;align-items:center;gap:6px;color:#ffd56b;font:1000 9px/1 var(--ui-display);letter-spacing:.12em}
#dailyRewardsModal .daily-reward-day__jackpot-kicker .ui-icon{width:15px!important;height:15px!important;color:#ffd45d!important}
#dailyRewardsModal .daily-reward-day__jackpot-copy>strong{color:#fff;font:1000 18px/1.05 var(--ui-font);letter-spacing:-.02em}
#dailyRewardsModal .daily-reward-day__jackpot-copy>small{color:#aeb8ca;font:800 11px/1.2 var(--ui-font)}
#dailyRewardsModal .daily-reward-day__jackpot-reward{display:flex;align-items:center;gap:11px;min-width:154px}
#dailyRewardsModal .daily-reward-day__coin--jackpot{width:54px;height:54px;margin:0;box-shadow:0 8px 22px rgba(0,0,0,.32),0 0 28px rgba(255,190,54,.25),inset 0 0 0 3px rgba(105,57,6,.25)}
#dailyRewardsModal .daily-reward-day__coin--jackpot .ui-icon{width:30px!important;height:30px!important}
#dailyRewardsModal .daily-reward-day__jackpot-reward>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
#dailyRewardsModal .daily-reward-day__jackpot-reward .daily-reward-day__amount{margin:0;color:#ffe693!important;font-size:27px!important}
#dailyRewardsModal .daily-reward-day__jackpot-reward small{color:#d5a949;font:1000 9px/1 var(--ui-display);letter-spacing:.12em}
#dailyRewardsModal .daily-reward-day--jackpot>.daily-reward-day__state{position:static;width:20px;height:20px}
#dailyRewardsModal .daily-reward-day--jackpot.daily-reward-day--current{border-color:#ffd05b!important;box-shadow:0 0 0 1px rgba(255,210,92,.13),0 0 30px rgba(255,170,53,.12),inset 0 1px 0 rgba(255,255,255,.08)!important}
#dailyRewardsModal .daily-reward-day--jackpot.daily-reward-day--current::after{animation:dailyJackpotShineV55 3.8s ease-in-out infinite}

#dailyRewardsModal .daily-rewards-current{
  margin:0 0 12px!important;
  padding:12px 14px!important;
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  text-align:left!important;
  border:1px solid rgba(139,183,255,.14)!important;
  border-radius:17px!important;
  background:linear-gradient(90deg,rgba(23,39,73,.62),rgba(12,23,48,.70))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
#dailyRewardsModal .daily-rewards-current__icon{width:46px;height:46px;display:grid;place-items:center;border:1px solid rgba(255,198,80,.25);border-radius:14px;background:rgba(255,184,61,.08);color:#ffd35d!important}
#dailyRewardsModal .daily-rewards-current__icon .ui-icon{width:25px!important;height:25px!important;color:#ffd35d!important}
#dailyRewardsModal .daily-rewards-current__copy{min-width:0;display:flex;flex-direction:column;gap:3px}
#dailyRewardsModal .daily-rewards-current__copy>small{color:#8fa3bd;font:1000 8px/1 var(--ui-display);letter-spacing:.12em}
#dailyRewardsModal .daily-rewards-current__copy>strong{color:#fff0b4!important;font:1000 17px/1.05 var(--ui-font)!important}
#dailyRewardsModal .daily-rewards-current__copy>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#aebbd0;font:800 11px/1.2 var(--ui-font)}
#dailyRewardsModal .daily-rewards-countdown{min-width:168px;padding:8px 11px;border-left:1px solid rgba(139,183,255,.12);text-align:right}
#dailyRewardsModal .daily-rewards-countdown[hidden]{display:none!important}
#dailyRewardsModal .daily-rewards-countdown small{display:block;margin-bottom:4px;color:#7f93ac;font:1000 7px/1 var(--ui-display);letter-spacing:.1em}
#dailyRewardsModal .daily-rewards-countdown strong{color:#7cecff;font:1000 20px/1 var(--ui-display);letter-spacing:.035em;font-variant-numeric:tabular-nums}

#dailyRewardsModal .daily-rewards-claim{
  width:100%!important;
  min-height:52px!important;
  padding:0 18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  border:1px solid rgba(255,216,113,.68)!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,#ffd86a,#f4a932)!important;
  color:#352006!important;
  box-shadow:0 12px 26px rgba(0,0,0,.26),0 0 24px rgba(255,178,54,.12),inset 0 1px 0 rgba(255,255,255,.42)!important;
  font:1000 13px/1 var(--ui-font)!important;
  cursor:var(--bm-cursor-action)!important;
  transition:filter .16s ease,box-shadow .16s ease,border-color .16s ease!important;
}
#dailyRewardsModal .daily-rewards-claim__icon{width:22px;height:22px;display:grid;place-items:center}
#dailyRewardsModal .daily-rewards-claim__icon .ui-icon{width:21px!important;height:21px!important;color:#6b3c09!important}
#dailyRewardsModal .daily-rewards-claim--jackpot{background:linear-gradient(90deg,#ffb33f,#ffd968 48%,#ff9ecf)!important;border-color:#ffe79d!important;box-shadow:0 12px 28px rgba(0,0,0,.28),0 0 34px rgba(255,177,52,.22),inset 0 1px 0 rgba(255,255,255,.5)!important}
#dailyRewardsModal .daily-rewards-claim:disabled{opacity:.56!important;cursor:var(--bm-cursor-default)!important;filter:saturate(.5)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important}
@media (hover:hover) and (pointer:fine){#dailyRewardsModal .daily-rewards-claim:not(:disabled):hover{filter:brightness(1.07)!important;box-shadow:0 14px 30px rgba(0,0,0,.28),0 0 30px rgba(255,185,55,.20),inset 0 1px 0 rgba(255,255,255,.5)!important}}

#dailyRewardsModal .daily-rewards-celebration{
  position:absolute;
  inset:0;
  z-index:30;
  display:grid;
  place-content:center;
  justify-items:center;
  pointer-events:none;
  opacity:0;
  visibility:hidden;
  border-radius:inherit;
  background:radial-gradient(circle at 50% 48%,rgba(255,207,91,.22),rgba(20,10,38,.80) 42%,rgba(5,8,21,.92) 72%);
}
#dailyRewardsModal.is-rewarding .daily-rewards-celebration{opacity:1;visibility:visible;animation:dailyRewardOverlayV55 1.45s ease both}
#dailyRewardsModal .daily-rewards-celebration__burst{position:absolute;left:50%;top:50%;width:270px;height:270px;border-radius:50%;transform:translate(-50%,-50%);background:repeating-conic-gradient(from 0deg,rgba(255,221,112,.38) 0 4deg,transparent 4deg 18deg);mask-image:radial-gradient(circle,transparent 0 28%,#000 29% 70%,transparent 71%);opacity:.5}
#dailyRewardsModal.is-rewarding .daily-rewards-celebration__burst{animation:dailyRewardBurstV55 1.2s ease-out both}
#dailyRewardsModal .daily-rewards-celebration__coin{width:86px;height:86px;display:grid;place-items:center;border-radius:50%;color:#7b430c;background:radial-gradient(circle at 34% 26%,#fff7c8 0 6%,#ffda68 7% 27%,#d98b21 68%,#8d5010 100%);border:3px solid #ffe49a;box-shadow:0 16px 36px rgba(0,0,0,.35),0 0 46px rgba(255,199,65,.38),inset 0 0 0 5px rgba(105,57,6,.22)}
#dailyRewardsModal .daily-rewards-celebration__coin .ui-icon{width:48px!important;height:48px!important;color:#75410d!important;stroke-width:2!important}
#dailyRewardsModal.is-rewarding .daily-rewards-celebration__coin{animation:dailyRewardCoinV55 1.05s cubic-bezier(.16,.9,.3,1.2) both}
#dailyRewardsModal .daily-rewards-celebration>strong{margin-top:13px;color:#fff1a6;font:1000 38px/1 var(--ui-font);text-shadow:0 0 24px rgba(255,197,66,.38);font-variant-numeric:tabular-nums}
#dailyRewardsModal .daily-rewards-celebration>span{margin-top:5px;color:#d7c58c;font:1000 9px/1 var(--ui-display);letter-spacing:.18em}
#dailyRewardsModal .daily-rewards-celebration>i{position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:2px;background:hsl(calc(var(--i) * 42 + 25) 90% 68%);box-shadow:0 0 10px currentColor;opacity:0}
#dailyRewardsModal.is-rewarding .daily-rewards-celebration>i{animation:dailyRewardParticleV55 1s calc(var(--i) * 28ms) ease-out both}
#dailyRewardsModal .daily-reward-day.is-claiming{animation:dailyRewardCardClaimV55 .75s ease both}

@keyframes dailyRewardOverlayV55{0%{opacity:0}12%,78%{opacity:1}100%{opacity:0}}
@keyframes dailyRewardBurstV55{0%{transform:translate(-50%,-50%) scale(.35) rotate(-18deg);opacity:0}30%{opacity:.65}100%{transform:translate(-50%,-50%) scale(1.45) rotate(16deg);opacity:0}}
@keyframes dailyRewardCoinV55{0%{transform:scale(.25) rotate(-18deg);opacity:0}35%{transform:scale(1.15) rotate(7deg);opacity:1}65%{transform:scale(.96) rotate(-3deg)}100%{transform:scale(1) rotate(0);opacity:1}}
@keyframes dailyRewardParticleV55{0%{opacity:0;transform:translate(-50%,-50%) rotate(calc(var(--i)*45deg)) translateY(-30px) scale(.4)}20%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) rotate(calc(var(--i)*45deg)) translateY(-155px) scale(1.15)}}
@keyframes dailyRewardCardClaimV55{0%,100%{transform:scale(1)}35%{transform:scale(1.06);box-shadow:0 0 32px rgba(255,202,83,.35)}65%{transform:scale(.98)}}
@keyframes dailyJackpotShineV55{0%,58%{transform:translateX(-120%)}78%,100%{transform:translateX(120%)}}

@media (max-height:760px) and (min-width:901px){
  #dailyRewardsModal .daily-rewards-v55{max-height:94dvh!important;padding:20px 22px!important}
  #dailyRewardsModal .daily-rewards-header{grid-template-columns:56px minmax(0,1fr) auto!important;gap:12px!important;margin-bottom:11px!important}
  #dailyRewardsModal .daily-rewards-header__emblem{width:52px;height:52px;border-radius:16px}
  #dailyRewardsModal .daily-rewards-header__emblem .ui-icon{width:28px!important;height:28px!important}
  #dailyRewardsModal .daily-rewards-title{font-size:28px!important}
  #dailyRewardsModal .daily-rewards-header__copy p{margin-top:4px;font-size:11px}
  #dailyRewardsModal .daily-rewards-progress{margin-bottom:10px}
  #dailyRewardsModal .daily-reward-day{min-height:105px!important}
  #dailyRewardsModal .daily-reward-day__coin{width:37px;height:37px;margin-top:8px}
  #dailyRewardsModal .daily-reward-day__coin .ui-icon{width:20px!important;height:20px!important}
  #dailyRewardsModal .daily-reward-day__amount{font-size:16px!important}
  #dailyRewardsModal .daily-reward-day--jackpot{min-height:84px!important;padding:10px 15px!important}
  #dailyRewardsModal .daily-reward-day__coin--jackpot{width:46px;height:46px}
  #dailyRewardsModal .daily-rewards-current{padding:9px 12px!important;margin-bottom:9px!important}
  #dailyRewardsModal .daily-rewards-claim{min-height:46px!important}
}

@media (max-width:900px){
  #dailyRewardsModal .daily-rewards-v55{width:min(720px,calc(100vw - 24px))!important}
  #dailyRewardsModal .daily-rewards-header{grid-template-columns:58px minmax(0,1fr)!important;padding-right:48px!important}
  #dailyRewardsModal .daily-rewards-streak{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;text-align:left;padding:8px 11px}
  #dailyRewardsModal .daily-rewards-streak small{margin:0}
  #dailyRewardsModal .daily-rewards-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  #dailyRewardsModal .daily-reward-day--jackpot{grid-column:1/-1!important}
}
@media (max-width:620px){
  #dailyRewardsModal.ui-modal--rewards{padding:8px!important}
  #dailyRewardsModal .daily-rewards-v55{width:100%!important;max-height:calc(100dvh - 16px)!important;padding:18px 14px!important;border-radius:22px!important}
  #dailyRewardsModal .daily-rewards-header{grid-template-columns:48px minmax(0,1fr)!important;gap:10px!important;padding-right:42px!important;margin-bottom:12px!important}
  #dailyRewardsModal .daily-rewards-header__emblem{width:46px;height:46px;border-radius:14px}
  #dailyRewardsModal .daily-rewards-header__emblem .ui-icon{width:25px!important;height:25px!important}
  #dailyRewardsModal .daily-rewards-title{font-size:24px!important}
  #dailyRewardsModal .daily-rewards-header__copy p{font-size:10px;line-height:1.3}
  #dailyRewardsModal .daily-rewards-close{top:12px!important;right:12px!important;width:36px!important;height:36px!important}
  #dailyRewardsModal .daily-rewards-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  #dailyRewardsModal .daily-reward-day{min-height:102px!important}
  #dailyRewardsModal .daily-reward-day--jackpot{grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;min-height:96px!important}
  #dailyRewardsModal .daily-reward-day--jackpot>.daily-reward-day__state{display:none}
  #dailyRewardsModal .daily-reward-day__jackpot-copy>strong{font-size:14px}
  #dailyRewardsModal .daily-reward-day__jackpot-copy>small{font-size:9px}
  #dailyRewardsModal .daily-reward-day__jackpot-reward{min-width:128px;gap:7px}
  #dailyRewardsModal .daily-reward-day__coin--jackpot{width:44px;height:44px}
  #dailyRewardsModal .daily-reward-day__jackpot-reward .daily-reward-day__amount{font-size:22px!important}
  #dailyRewardsModal .daily-rewards-current{grid-template-columns:40px minmax(0,1fr)!important;gap:9px!important}
  #dailyRewardsModal .daily-rewards-current__icon{width:40px;height:40px}
  #dailyRewardsModal .daily-rewards-current__copy>span{white-space:normal;font-size:10px}
  #dailyRewardsModal .daily-rewards-countdown{grid-column:1/-1;min-width:0;padding:9px 0 0;border-left:0;border-top:1px solid rgba(139,183,255,.12);text-align:left}
  #dailyRewardsModal .daily-rewards-countdown strong{font-size:18px}
}

@media (prefers-reduced-motion:reduce){
  #dailyRewardsModal *,#dailyRewardsModal *::before,#dailyRewardsModal *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}
}

/* =========================================================
   PROMO CODES V56 — SECRET VAULT / REWARD FEEDBACK
   Isolated from legacy promo-card rules by #promoModal scope.
   ========================================================= */
#promoModal.ui-modal--promo{
  padding:18px!important;
  overflow:auto!important;
  background:transparent!important;
}
#promoModal .promo-modal__overlay{
  background:
    radial-gradient(circle at 16% 18%,rgba(61,210,255,.14),transparent 31%),
    radial-gradient(circle at 83% 78%,rgba(202,91,255,.15),transparent 34%),
    linear-gradient(135deg,rgba(3,8,20,.91),rgba(11,7,27,.94))!important;
  backdrop-filter:blur(13px) saturate(1.15)!important;
  -webkit-backdrop-filter:blur(13px) saturate(1.15)!important;
}
#promoModal .promo-card--v56{
  --promo-cyan:#5ee8ff;
  --promo-violet:#b57cff;
  --promo-pink:#ff6fcf;
  --promo-gold:#ffd668;
  position:relative!important;
  z-index:2!important;
  width:min(760px,calc(100vw - 36px))!important;
  max-width:760px!important;
  max-height:calc(100dvh - 36px)!important;
  padding:26px!important;
  overflow:auto!important;
  border:1px solid rgba(121,210,255,.34)!important;
  outline:0!important;
  border-radius:28px!important;
  background:
    linear-gradient(180deg,rgba(19,31,49,.98),rgba(11,19,34,.99))!important;
  box-shadow:
    0 34px 100px rgba(0,0,0,.62),
    0 0 0 1px rgba(143,101,255,.10),
    0 0 48px rgba(56,173,255,.08),
    inset 0 1px 0 rgba(255,255,255,.09)!important;
  text-align:left!important;
  isolation:isolate;
  scrollbar-width:thin;
  scrollbar-color:rgba(113,203,255,.35) transparent;
}
#promoModal .promo-card--v56::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-2!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  background:
    radial-gradient(circle at 7% 0%,rgba(66,222,255,.16),transparent 30%),
    radial-gradient(circle at 98% 12%,rgba(255,91,208,.13),transparent 28%),
    linear-gradient(115deg,transparent 0 44%,rgba(255,255,255,.025) 44% 45%,transparent 45% 100%)!important;
}
#promoModal .promo-card--v56::after{
  content:"";
  position:absolute;
  inset:1px;
  z-index:-1;
  pointer-events:none;
  border-radius:27px;
  background:linear-gradient(90deg,rgba(93,229,255,.15),transparent 22%,transparent 77%,rgba(193,99,255,.12));
  opacity:.65;
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  mask-composite:exclude;
  padding:1px;
}
#promoModal .promo-v56__ambient{position:absolute;inset:0;z-index:-1;overflow:hidden;border-radius:inherit;pointer-events:none}
#promoModal .promo-v56__ambient i{position:absolute;width:170px;height:170px;border-radius:50%;filter:blur(44px);opacity:.14}
#promoModal .promo-v56__ambient i:nth-child(1){left:-70px;top:-65px;background:#36dcff}
#promoModal .promo-v56__ambient i:nth-child(2){right:-70px;top:50px;background:#d45cff}
#promoModal .promo-v56__ambient i:nth-child(3){left:42%;bottom:-125px;background:#ffb347;opacity:.09}

#promoModal .promo-card__close{
  top:16px!important;right:16px!important;z-index:40!important;
  width:40px!important;height:40px!important;
  border:1px solid rgba(154,203,235,.24)!important;
  border-radius:13px!important;
  background:rgba(12,24,39,.78)!important;
  color:#bcd1e4!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;
  font:800 20px/1 var(--ui-font)!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important;
}
@media (hover:hover) and (pointer:fine){#promoModal .promo-card__close:hover{background:rgba(37,57,78,.92)!important;border-color:rgba(117,224,255,.5)!important;color:#fff!important;transform:translateY(-1px)}}

#promoModal .promo-v56__header{
  position:relative;z-index:2;
  display:grid!important;
  grid-template-columns:74px minmax(0,1fr) 116px!important;
  align-items:center!important;
  gap:16px!important;
  padding:0 50px 19px 0!important;
  margin:0 0 17px!important;
  border-bottom:1px solid rgba(125,185,226,.12)!important;
}
#promoModal .promo-card__ticket.promo-v56__emblem{
  position:relative!important;
  width:72px!important;height:72px!important;
  margin:0!important;
  display:grid!important;place-items:center!important;
  border:1px solid rgba(112,230,255,.44)!important;
  border-radius:22px!important;
  background:
    radial-gradient(circle at 35% 26%,rgba(255,255,255,.20),transparent 23%),
    linear-gradient(145deg,#3cd9ff 0%,#7d75ff 48%,#ff65c9 100%)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.28),0 0 30px rgba(79,213,255,.15),inset 0 1px 0 rgba(255,255,255,.30)!important;
  color:#fff!important;
}
#promoModal .promo-v56__emblem-ring{position:absolute;inset:8px;border:1px solid rgba(255,255,255,.25);border-radius:16px;box-shadow:inset 0 0 14px rgba(255,255,255,.08)}
#promoModal .promo-v56__emblem>[data-ui-icon]{display:grid;place-items:center;position:relative;z-index:2}
#promoModal .promo-v56__emblem .ui-icon{width:34px!important;height:34px!important;color:#fff!important;filter:drop-shadow(0 2px 5px rgba(32,17,74,.42))}
#promoModal .promo-v56__spark{position:absolute;width:7px;height:7px;border-radius:2px;background:#fff3a3;box-shadow:0 0 10px #ffd76b;transform:rotate(45deg)}
#promoModal .promo-v56__spark--a{right:7px;top:8px}
#promoModal .promo-v56__spark--b{left:8px;bottom:9px;width:5px;height:5px;background:#c7fbff;box-shadow:0 0 9px #6beeff}
#promoModal .promo-v56__heading{min-width:0}
#promoModal .promo-card__eyebrow{margin:0 0 6px!important;color:#77e8ff!important;font:1000 9px/1 var(--ui-display)!important;letter-spacing:.18em!important;text-align:left!important}
#promoModal .promo-card__title{margin:0!important;color:#fff!important;font:1000 clamp(28px,3.2vw,38px)/.95 var(--ui-display)!important;letter-spacing:.015em!important;text-shadow:0 3px 20px rgba(87,207,255,.12)!important;text-align:left!important}
#promoModal .promo-card__text{max-width:48ch!important;margin:8px 0 0!important;color:#9db0c5!important;font:700 12px/1.45 var(--ui-font)!important;text-align:left!important}
#promoModal .promo-v56__rule{min-width:112px;padding:11px 9px;display:grid;grid-template-columns:22px 1fr;align-items:center;gap:2px 7px;border:1px solid rgba(255,210,98,.24);border-radius:14px;background:linear-gradient(180deg,rgba(255,203,81,.10),rgba(255,171,55,.045));box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
#promoModal .promo-v56__rule>span{grid-row:1/3;display:grid;place-items:center;width:22px;height:22px}
#promoModal .promo-v56__rule .ui-icon{width:20px!important;height:20px!important;color:#ffd463!important}
#promoModal .promo-v56__rule b{color:#ffe29a;font:1000 10px/1 var(--ui-display);letter-spacing:.05em}
#promoModal .promo-v56__rule small{color:#9e8f68;font:900 7px/1 var(--ui-display);letter-spacing:.06em}

#promoModal .promo-v56__vault{
  position:relative;z-index:2;
  padding:18px!important;
  border:1px solid rgba(104,193,238,.18)!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,rgba(7,18,33,.82),rgba(8,15,28,.92))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 16px 38px rgba(0,0,0,.18)!important;
  overflow:hidden;
}
#promoModal .promo-v56__vault::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,#54dfff 30%,#a578ff 65%,transparent);opacity:.65}
#promoModal .promo-v56__vault-glow{position:absolute;width:220px;height:110px;right:-80px;top:-65px;border-radius:50%;background:#8b6cff;filter:blur(50px);opacity:.10;pointer-events:none}
#promoModal .promo-form{position:relative;z-index:2;margin:0!important;text-align:left!important}
#promoModal .promo-v56__label-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 2px 8px}
#promoModal .promo-form__label{margin:0!important;color:#d7e7f4!important;font:1000 9px/1 var(--ui-display)!important;letter-spacing:.12em!important}
#promoModal .promo-v56__format{color:#657c91;font:900 8px/1 var(--ui-display);letter-spacing:.08em}
#promoModal .promo-form__row{display:grid!important;grid-template-columns:minmax(0,1fr) 180px!important;gap:10px!important;align-items:stretch!important}
#promoModal .promo-v56__input-shell{position:relative;min-width:0;height:58px}
#promoModal .promo-v56__input-icon{position:absolute;left:15px;top:50%;z-index:2;width:25px;height:25px;display:grid;place-items:center;transform:translateY(-50%);pointer-events:none}
#promoModal .promo-v56__input-icon .ui-icon{width:23px!important;height:23px!important;color:#65dcff!important}
#promoModal .promo-form__input{
  width:100%!important;height:58px!important;min-height:58px!important;
  padding:0 46px 0 51px!important;
  border:1px solid rgba(110,190,235,.32)!important;
  outline:0!important;
  border-radius:15px!important;
  color:#f3f9ff!important;
  background:rgba(4,13,25,.92)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 0 0 0 rgba(80,220,255,0)!important;
  font:1000 15px/1 var(--ui-font)!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
#promoModal .promo-form__input::placeholder{color:#536779!important;opacity:1!important}
#promoModal .promo-form__input:focus{border-color:#62e4ff!important;box-shadow:0 0 0 3px rgba(73,213,255,.12),inset 0 1px 0 rgba(255,255,255,.05)!important;background:#061629!important}
#promoModal .promo-form__input[aria-invalid="true"]{border-color:#ff718f!important;box-shadow:0 0 0 3px rgba(255,85,123,.11)!important}
#promoModal .promo-v56__input-state{position:absolute;right:16px;top:50%;width:9px;height:9px;border-radius:50%;transform:translateY(-50%);background:#2d536b;box-shadow:0 0 0 4px rgba(45,83,107,.12);pointer-events:none;transition:background .2s ease,box-shadow .2s ease}
#promoModal.is-promo-success .promo-v56__input-state{background:#5ff0aa;box-shadow:0 0 0 4px rgba(95,240,170,.12),0 0 12px rgba(95,240,170,.35)}
#promoModal .promo-form__submit{
  width:100%!important;min-width:0!important;height:58px!important;min-height:58px!important;
  padding:0 17px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
  border:1px solid rgba(255,221,122,.72)!important;outline:0!important;border-radius:15px!important;
  color:#2d2008!important;background:linear-gradient(180deg,#ffe078,#f6b73f)!important;
  box-shadow:0 9px 22px rgba(0,0,0,.25),0 0 22px rgba(255,185,63,.09),inset 0 1px 0 rgba(255,255,255,.52)!important;
  font:1000 10px/1 var(--ui-display)!important;letter-spacing:.035em!important;
  cursor:var(--bm-cursor-action)!important;transition:filter .16s ease,transform .16s ease,box-shadow .16s ease!important;
}
#promoModal .promo-form__submit .ui-icon{width:20px!important;height:20px!important;color:#5f4309!important;stroke-width:2.2!important}
#promoModal .promo-form__submit b{font:inherit!important}
#promoModal .promo-form__submit:disabled{cursor:var(--bm-cursor-wait)!important;filter:saturate(.55)!important;opacity:.72!important;transform:none!important}
@media (hover:hover) and (pointer:fine){#promoModal .promo-form__submit:not(:disabled):hover{filter:brightness(1.06)!important;transform:translateY(-1px)!important;box-shadow:0 12px 25px rgba(0,0,0,.28),0 0 28px rgba(255,190,63,.14),inset 0 1px 0 rgba(255,255,255,.56)!important}}
#promoModal .promo-form__submit:not(:disabled):active{transform:translateY(1px)!important}

#promoModal .promo-result{position:relative!important;z-index:2!important;min-height:0!important;margin:12px 0 0!important;border-radius:15px!important;overflow:hidden!important}
#promoModal .promo-result:empty{display:none!important}
#promoModal .promo-result:not(:empty){display:grid!important;grid-template-columns:38px minmax(0,1fr) auto!important;align-items:center!important;gap:11px!important;padding:11px 13px!important;border:1px solid!important}
#promoModal .promo-result__icon{width:36px;height:36px;display:grid;place-items:center;border-radius:11px}
#promoModal .promo-result__icon .ui-icon{width:21px!important;height:21px!important}
#promoModal .promo-result__copy{min-width:0;display:grid;gap:3px}
#promoModal .promo-result__copy strong{font:1000 10px/1.15 var(--ui-display)!important;letter-spacing:.05em!important}
#promoModal .promo-result__copy small{color:#9eafbf;font:700 11px/1.35 var(--ui-font)!important}
#promoModal .promo-result em{display:flex;align-items:center;gap:5px;padding:7px 9px;border-radius:10px;font:1000 13px/1 var(--ui-font);font-style:normal;font-variant-numeric:tabular-nums;white-space:nowrap}
#promoModal .promo-result em .ui-icon{width:17px!important;height:17px!important}
#promoModal .promo-result--success:not(:empty){color:#87f8bf!important;background:linear-gradient(90deg,rgba(40,194,125,.12),rgba(20,82,65,.10))!important;border-color:rgba(92,238,167,.28)!important}
#promoModal .promo-result--success .promo-result__icon{background:rgba(70,224,151,.12);border:1px solid rgba(93,239,169,.24)}
#promoModal .promo-result--success .promo-result__icon .ui-icon{color:#69efa9!important}
#promoModal .promo-result--success em{color:#ffe08a;background:rgba(255,198,71,.08);border:1px solid rgba(255,211,98,.15)}
#promoModal .promo-result--error:not(:empty){color:#ff9bb0!important;background:linear-gradient(90deg,rgba(255,74,113,.12),rgba(93,24,49,.10))!important;border-color:rgba(255,101,134,.28)!important}
#promoModal .promo-result--error .promo-result__icon{background:rgba(255,91,126,.12);border:1px solid rgba(255,110,142,.22)}
#promoModal .promo-result--error .promo-result__icon .ui-icon{color:#ff7d98!important}

#promoModal .promo-v56__benefits{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:15px}
#promoModal .promo-v56__benefits>span{min-width:0;min-height:60px;display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:12px 14px;border:1px solid rgba(112,213,255,.28);border-radius:14px;background:linear-gradient(180deg,rgba(24,54,78,.84),rgba(11,29,48,.80));color:#eef8ff;box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 6px 16px rgba(0,0,0,.12)}
#promoModal .promo-v56__benefits i{flex:0 0 31px;width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:rgba(78,207,255,.13);border:1px solid rgba(103,220,255,.24);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 0 14px rgba(69,208,255,.07)}
#promoModal .promo-v56__benefits .ui-icon{width:21px!important;height:21px!important;color:#8be9ff!important;stroke-width:2.2!important}
#promoModal .promo-v56__benefits b{min-width:0;overflow:visible;text-overflow:clip;white-space:normal;font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;font-size:13.5px;font-weight:700;line-height:1.3;letter-spacing:.005em;text-align:left;color:#f1f8ff;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}

#promoModal .promo-v56__celebration{position:absolute;inset:0;z-index:35;display:grid;place-content:center;justify-items:center;pointer-events:none;opacity:0;visibility:hidden;border-radius:inherit;background:radial-gradient(circle at 50% 46%,rgba(103,224,255,.20),rgba(64,34,118,.78) 38%,rgba(5,11,23,.94) 72%)}
#promoModal.is-promo-redeeming .promo-v56__celebration{opacity:1;visibility:visible;animation:promoOverlayV56 1.28s ease both}
#promoModal .promo-v56__celebration-burst{position:absolute;left:50%;top:48%;width:300px;height:300px;border-radius:50%;transform:translate(-50%,-50%);background:repeating-conic-gradient(from 0deg,rgba(112,232,255,.36) 0 4deg,transparent 4deg 16deg,rgba(255,206,95,.24) 16deg 19deg,transparent 19deg 31deg);mask-image:radial-gradient(circle,transparent 0 27%,#000 28% 70%,transparent 71%);opacity:.5}
#promoModal.is-promo-redeeming .promo-v56__celebration-burst{animation:promoBurstV56 1.12s ease-out both}
#promoModal .promo-v56__celebration-ticket{width:94px;height:94px;display:grid;place-items:center;border-radius:28px;border:2px solid rgba(255,255,255,.62);background:linear-gradient(145deg,#43e4ff,#8a70ff 48%,#ff6acb);box-shadow:0 18px 44px rgba(0,0,0,.36),0 0 52px rgba(92,220,255,.28),inset 0 1px 0 rgba(255,255,255,.42)}
#promoModal .promo-v56__celebration-ticket .ui-icon{width:50px!important;height:50px!important;color:#fff!important;filter:drop-shadow(0 3px 6px rgba(38,17,81,.4))}
#promoModal.is-promo-redeeming .promo-v56__celebration-ticket{animation:promoTicketV56 1.02s cubic-bezier(.16,.9,.3,1.2) both}
#promoModal .promo-v56__celebration>strong{margin-top:17px;color:#fff;font:1000 24px/1 var(--ui-display);letter-spacing:.045em;text-shadow:0 0 24px rgba(98,221,255,.34)}
#promoModal .promo-v56__celebration>span{margin-top:8px;color:#ffe28c;font:1000 18px/1 var(--ui-font);font-variant-numeric:tabular-nums;text-shadow:0 0 18px rgba(255,200,69,.22)}
#promoModal .promo-v56__celebration>i{position:absolute;left:50%;top:48%;width:8px;height:8px;border-radius:2px;background:hsl(calc(var(--i)*38 + 34) 92% 69%);box-shadow:0 0 10px currentColor;opacity:0}
#promoModal.is-promo-redeeming .promo-v56__celebration>i{animation:promoParticleV56 .95s calc(var(--i)*34ms) ease-out both}
#promoModal.is-promo-error .promo-card--v56{animation:promoErrorV56 .42s ease both}
#promoModal.is-promo-success .promo-v56__vault{border-color:rgba(87,234,164,.24)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 0 28px rgba(58,211,146,.06)!important}

@keyframes promoOverlayV56{0%{opacity:0}12%,80%{opacity:1}100%{opacity:0}}
@keyframes promoBurstV56{0%{transform:translate(-50%,-50%) scale(.28) rotate(-16deg);opacity:0}28%{opacity:.65}100%{transform:translate(-50%,-50%) scale(1.45) rotate(18deg);opacity:0}}
@keyframes promoTicketV56{0%{transform:scale(.22) rotate(-18deg);opacity:0}34%{transform:scale(1.16) rotate(7deg);opacity:1}68%{transform:scale(.96) rotate(-3deg)}100%{transform:scale(1);opacity:1}}
@keyframes promoParticleV56{0%{opacity:0;transform:translate(-50%,-50%) rotate(calc(var(--i)*45deg)) translateY(-34px) scale(.4)}20%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) rotate(calc(var(--i)*45deg)) translateY(-165px) scale(1.2)}}
@keyframes promoErrorV56{0%,100%{transform:translateX(0)}22%{transform:translateX(-7px)}44%{transform:translateX(6px)}66%{transform:translateX(-4px)}82%{transform:translateX(2px)}}

@media (max-height:700px) and (min-width:761px){
  #promoModal .promo-card--v56{padding:20px 22px!important}
  #promoModal .promo-v56__header{grid-template-columns:62px minmax(0,1fr) 108px!important;gap:13px!important;padding-bottom:13px!important;margin-bottom:12px!important}
  #promoModal .promo-card__ticket.promo-v56__emblem{width:60px!important;height:60px!important;border-radius:18px!important}
  #promoModal .promo-v56__emblem .ui-icon{width:29px!important;height:29px!important}
  #promoModal .promo-card__title{font-size:30px!important}
  #promoModal .promo-card__text{margin-top:5px!important;font-size:11px!important}
  #promoModal .promo-v56__vault{padding:14px!important}
  #promoModal .promo-v56__input-shell,#promoModal .promo-form__input,#promoModal .promo-form__submit{height:52px!important;min-height:52px!important}
  #promoModal .promo-v56__benefits{margin-top:10px;gap:8px}
  #promoModal .promo-v56__benefits>span{min-height:54px;padding:10px 12px;gap:10px}
  #promoModal .promo-v56__benefits i{flex-basis:28px;width:28px;height:28px}
  #promoModal .promo-v56__benefits .ui-icon{width:19px!important;height:19px!important}
  #promoModal .promo-v56__benefits b{font-size:12.5px;line-height:1.25}
}
@media (max-width:760px){
  #promoModal.ui-modal--promo{padding:10px!important}
  #promoModal .promo-card--v56{width:min(620px,calc(100vw - 20px))!important;max-height:calc(100dvh - 20px)!important;padding:20px!important;border-radius:23px!important}
  #promoModal .promo-v56__header{grid-template-columns:58px minmax(0,1fr)!important;gap:12px!important;padding:0 42px 15px 0!important}
  #promoModal .promo-card__ticket.promo-v56__emblem{width:56px!important;height:56px!important;border-radius:17px!important}
  #promoModal .promo-v56__emblem .ui-icon{width:28px!important;height:28px!important}
  #promoModal .promo-card__title{font-size:29px!important}
  #promoModal .promo-card__text{font-size:11px!important}
  #promoModal .promo-v56__rule{grid-column:1/-1;display:flex;align-items:center;justify-content:flex-start;min-width:0;padding:8px 10px}
  #promoModal .promo-v56__rule>span{grid-row:auto;width:18px;height:18px}
  #promoModal .promo-v56__rule .ui-icon{width:17px!important;height:17px!important}
  #promoModal .promo-v56__rule small{margin-left:auto}
  #promoModal .promo-form__row{grid-template-columns:1fr!important}
  #promoModal .promo-form__submit{height:52px!important;min-height:52px!important}
  #promoModal .promo-v56__benefits{grid-template-columns:1fr 1fr;gap:8px}
  #promoModal .promo-v56__benefits>span{justify-content:flex-start;min-height:56px;padding:11px 13px}
  #promoModal .promo-v56__benefits b{font-size:13px;line-height:1.3}
  #promoModal .promo-v56__benefits>span:last-child{grid-column:1/-1}
}
@media (max-width:480px){
  #promoModal .promo-card--v56{width:100%!important;padding:17px 13px!important;border-radius:20px!important}
  #promoModal .promo-card__close{top:10px!important;right:10px!important;width:36px!important;height:36px!important}
  #promoModal .promo-v56__header{grid-template-columns:50px minmax(0,1fr)!important;gap:10px!important;padding:0 36px 13px 0!important;margin-bottom:12px!important}
  #promoModal .promo-card__ticket.promo-v56__emblem{width:48px!important;height:48px!important;border-radius:15px!important}
  #promoModal .promo-v56__emblem .ui-icon{width:24px!important;height:24px!important}
  #promoModal .promo-card__eyebrow{font-size:7px!important;margin-bottom:4px!important}
  #promoModal .promo-card__title{font-size:24px!important}
  #promoModal .promo-card__text{grid-column:1/-1;margin-top:7px!important;font-size:10px!important;line-height:1.35!important}
  #promoModal .promo-v56__rule{grid-column:1/-1;margin-top:2px}
  #promoModal .promo-v56__vault{padding:12px!important;border-radius:16px!important}
  #promoModal .promo-v56__label-row{align-items:flex-end}
  #promoModal .promo-v56__format{font-size:7px}
  #promoModal .promo-v56__input-shell,#promoModal .promo-form__input{height:54px!important;min-height:54px!important}
  #promoModal .promo-form__input{padding-left:46px!important;font-size:13px!important}
  #promoModal .promo-v56__input-icon{left:13px}
  #promoModal .promo-result:not(:empty){grid-template-columns:34px minmax(0,1fr)!important;padding:10px!important}
  #promoModal .promo-result em{grid-column:2;justify-self:start;margin-top:3px}
  #promoModal .promo-v56__benefits{display:grid;grid-template-columns:1fr;gap:7px;margin-top:10px}
  #promoModal .promo-v56__benefits>span,#promoModal .promo-v56__benefits>span:last-child{grid-column:auto;min-height:54px;justify-content:flex-start;padding:10px 12px}
  #promoModal .promo-v56__benefits i{flex-basis:28px;width:28px;height:28px}
  #promoModal .promo-v56__benefits b{font-size:13px;line-height:1.3}
  #promoModal .promo-v56__celebration-ticket{width:78px;height:78px;border-radius:23px}
  #promoModal .promo-v56__celebration-ticket .ui-icon{width:42px!important;height:42px!important}
  #promoModal .promo-v56__celebration>strong{font-size:20px}
  #promoModal .promo-v56__celebration>span{font-size:16px}
}
@media (prefers-reduced-motion:reduce){
  #promoModal *,#promoModal *::before,#promoModal *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}
}
