/* SafeCasino day/night theme layer. Loaded after site.min.css. */
:root{
  --theme-night-bg:#090611;
  --theme-night-shell:#100a18;
  --theme-night-surface:#181020;
  --theme-night-surface-2:#21162c;
  --theme-night-surface-3:#2b1b39;
  --theme-night-line:#ffffff1f;
  --theme-night-text:#f7f1fb;
  --theme-night-muted:#d8cedf;
  --theme-night-purple:#cfa9e9;
  --theme-night-gold:#ffd856;
}

.ui-theme-toggle{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  flex:0 0 76px;
  width:76px;
  height:44px;
  margin:0;
  padding:5px;
  overflow:hidden;
  border:1px solid #d8b85d;
  border-radius:9px;
  background:#4a3321;
  box-shadow:inset 0 1px 0 #fff0b72b,0 5px 14px #2b1c1238;
  color:#fff;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
}
.theme-toggle__option{
  position:relative;
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:6px;
  color:#d4bd7d;
  transition:background-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.theme-toggle__option svg{
  display:block;
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.8;
}
html:not([data-theme="dark"]) .theme-toggle__option--day{
  background:linear-gradient(180deg,#f1d46f,#c7962c);
  box-shadow:inset 0 1px 0 #fff8d780,0 3px 8px #5b3b1745;
  color:#49331a;
}
html[data-theme="dark"] .ui-theme-toggle{
  border-color:#755b3c;
  background:#17101e;
  box-shadow:inset 0 1px 0 #ffffff12,0 5px 14px #0008;
}
html[data-theme="dark"] .theme-toggle__option--night{
  background:linear-gradient(180deg,#7f5d2c,#4d351e);
  box-shadow:inset 0 1px 0 #ffe9a73d,0 3px 8px #0007;
  color:#ffe7a0;
}
html[data-theme="dark"] .theme-toggle__option--day{color:#9d8768}
.ui-theme-toggle:hover .theme-toggle__option[aria-hidden="true"]{transform:translateY(-1px)}
.ui-theme-toggle:focus-visible{
  outline:3px solid var(--safe-yellow,#edc957);
  outline-offset:3px;
}
.site-nav:has(.ui-theme-toggle) .ui-theme-toggle{
  margin-left:auto;
}
.site-nav:has(.ui-theme-toggle) .site-auth{
  margin-left:0!important;
}

/* Night palette: keep image-led Hero, bonus and app banners intact. */
html[data-theme="dark"] body{
  background:var(--theme-night-bg)!important;
  color:var(--theme-night-text)!important;
}
html[data-theme="dark"] .site-pin-content{
  background:var(--theme-night-shell)!important;
}
html[data-theme="dark"] .site-pin-content>.site-pin-section:not(.cashback-section),
html[data-theme="dark"] .site-pin-content>.site-content-section:not(.cashback-section){
  border-color:var(--theme-night-line)!important;
  background:
    radial-gradient(circle at 100% 0,#62378120,transparent 20rem),
    linear-gradient(145deg,var(--theme-night-surface),#120c19)!important;
  box-shadow:0 12px 30px #0005!important;
  color:var(--theme-night-text)!important;
}
html[data-theme="dark"] #content .site-pin-content>:is(.site-pin-section,.site-content-section):not(.cashback-section) h2:not(:where(.site-hero h2,.site-bonus-banner-section h2,.site-offer-banner h2,.site-home-app-banner h2)){
  color:var(--theme-night-purple)!important;
  text-shadow:0 2px 12px #0007!important;
}
html[data-theme="dark"] .site-pin-content>.site-pin-section p,
html[data-theme="dark"] .site-pin-content>.site-content-section p,
html[data-theme="dark"] .site-pin-content>.site-pin-section li,
html[data-theme="dark"] .site-pin-content>.site-content-section li{
  color:var(--theme-night-muted)!important;
}
html[data-theme="dark"] .site-pin-content>.site-pin-section>h3,
html[data-theme="dark"] .site-pin-content>.site-content-section>h3{
  border-color:var(--theme-night-line)!important;
  background:#ffffff0a!important;
  color:#fff!important;
  box-shadow:none!important;
}
html[data-theme="dark"] .site-pin-content>.site-pin-section>h3+p,
html[data-theme="dark"] .site-pin-content>.site-content-section>h3+p{
  border-color:var(--theme-night-line)!important;
  background:#0d0912!important;
  color:var(--theme-night-muted)!important;
}
html[data-theme="dark"] .site-pin-content>.site-pin-section li,
html[data-theme="dark"] .site-pin-content>.site-content-section li,
html[data-theme="dark"] .site-pin-list li{
  border-color:var(--theme-night-line)!important;
  background:#ffffff09!important;
}

html[data-theme="dark"] .site-table-wrap,
html[data-theme="dark"] .ui-table-scroll{
  border-color:#473357!important;
  background:#100b16!important;
}
html[data-theme="dark"] table{background:#100b16!important}
html[data-theme="dark"] th,
html[data-theme="dark"] .site-pin-section th,
html[data-theme="dark"] .site-content-section th,
html[data-theme="dark"] .site-table-wrap th,
html[data-theme="dark"] .ui-table-scroll th{
  border-color:#5a3c6f!important;
  background:#4b2762!important;
  color:#fff!important;
}
html[data-theme="dark"] td,
html[data-theme="dark"] .site-pin-section td,
html[data-theme="dark"] .site-content-section td,
html[data-theme="dark"] .site-table-wrap td,
html[data-theme="dark"] .ui-table-scroll td{
  border-color:#ffffff14!important;
  background:#17101f!important;
  color:#eee7f3!important;
}
html[data-theme="dark"] tbody tr:nth-child(even) td{
  background:#21162c!important;
  color:#f4eef7!important;
}

html[data-theme="dark"] .site-pin-content>.bonus-details-section .bonus-rules-panel{
  border-color:#6f4a84!important;
  background:#130c1b!important;
  box-shadow:0 14px 30px #0006!important;
}
html[data-theme="dark"] .site-pin-content>.bonus-details-section .bonus-rules-list{
  background:#130c1b!important;
}
html[data-theme="dark"] .site-pin-content>.bonus-details-section .bonus-rules-list li{
  border-color:#ffffff26!important;
  background:linear-gradient(145deg,#2a1b36,#21152c)!important;
  box-shadow:0 7px 16px #0004!important;
  color:#f7f1fb!important;
}

html[data-theme="dark"] :is(.card,.feature-card,.pros-cons-card,.bonus-detail-card,.site-review-card,.expert-summary-card,.expert-summary-meta p){
  border-color:var(--theme-night-line)!important;
  background:linear-gradient(145deg,var(--theme-night-surface-2),#120c18)!important;
  color:var(--theme-night-text)!important;
  box-shadow:none!important;
}
html[data-theme="dark"] :is(.card,.feature-card,.pros-cons-card,.bonus-detail-card,.site-review-card,.expert-summary-card,.expert-summary-meta p) :is(p,span,strong,h3){
  color:var(--theme-night-muted)!important;
}
html[data-theme="dark"] :is(.site-review-card,.expert-summary-card) strong,
html[data-theme="dark"] :is(.site-review-card,.expert-summary-card) h3{
  color:#fff!important;
}
html[data-theme="dark"] .site-reviews-heading,
html[data-theme="dark"] .expert-summary-heading{
  border-color:var(--theme-night-line)!important;
  background:linear-gradient(145deg,#281736,#17101f)!important;
}
html[data-theme="dark"] .site-pin-content>.site-reviews-section>.reviews-summary{
  border-color:#ffffff26!important;
  background:linear-gradient(145deg,#2a1b36,#21152c)!important;
  box-shadow:0 7px 16px #0004!important;
  color:#f7f1fb!important;
}
html[data-theme="dark"] .site-pin-content>.expert-summary-section{
  border-color:#67457b!important;
  background:
    radial-gradient(circle at 92% 12%,#9b5fc229,transparent 18rem),
    linear-gradient(145deg,#1d1227,#100a17)!important;
  box-shadow:0 18px 42px #0007!important;
}
html[data-theme="dark"] .site-pin-content>.expert-summary-section .expert-summary-heading h2{
  color:#d7acef!important;
}
html[data-theme="dark"] .site-pin-content>.expert-summary-section .expert-author-line p{
  color:#ded3e5!important;
}
html[data-theme="dark"] .site-pin-content>.expert-summary-section .expert-author-line p strong{
  color:#fff!important;
}
html[data-theme="dark"] .site-pin-content>.expert-summary-section .expert-summary-copy{
  border-color:#ffffff26!important;
  background:linear-gradient(145deg,#2a1b36,#21152c)!important;
  box-shadow:0 10px 24px #0004!important;
  color:#f7f1fb!important;
}
html[data-theme="dark"] .site-pin-content>.expert-summary-section .expert-summary-meta p{
  border-color:#ffffff26!important;
  background:linear-gradient(145deg,#2a1b36,#21152c)!important;
  color:#f7f1fb!important;
}
html[data-theme="dark"] .site-pin-content>.expert-summary-section .expert-summary-meta p span{
  color:#bfaeca!important;
}
html[data-theme="dark"] .site-pin-content>.expert-summary-section .expert-summary-meta p strong{
  color:#fff!important;
}
html[data-theme="dark"] .site-reviews-track{
  scrollbar-color:#7b4c98 #120c18;
}
html[data-theme="dark"] .site-faq-section,
html[data-theme="dark"] .site-faq-section details{
  border-color:var(--theme-night-line)!important;
  background:var(--theme-night-surface)!important;
  color:var(--theme-night-text)!important;
}
html[data-theme="dark"] .site-faq-section summary{
  color:#fff!important;
}
html[data-theme="dark"] .site-faq-section details p{
  color:var(--theme-night-muted)!important;
}

html[data-theme="dark"] .site-pin-sidebar{
  border-color:#3b2848!important;
  background:#0d0912!important;
}
html[data-theme="dark"] :is(.site-safe-aside-menu,.site-safe-aside-extras,.site-safe-aside-app,.site-pin-side-nav){
  border-color:var(--theme-night-line)!important;
  background:#120c18!important;
  color:var(--theme-night-text)!important;
}
html[data-theme="dark"] :is(.site-safe-aside-links a,.site-safe-aside-language,.site-pin-side-links a,.site-safe-aside-app small,.site-safe-aside-app strong){
  color:var(--theme-night-muted)!important;
}
html[data-theme="dark"] :is(.site-safe-aside-links a,.site-pin-side-links a):hover{
  background:#ffffff0d!important;
  color:#fff!important;
}
html[data-theme="dark"] .site-pin-side-nav.ui-mobile-nav-mounted{
  background:#120c18!important;
}
html[data-theme="dark"] .site-pin-side-nav-toggle{
  background:#351b4f!important;
  color:#fff!important;
}

html[data-theme="dark"] .site-footer{
  border-color:#ffffff17!important;
  background:#08050d!important;
  color:var(--theme-night-muted)!important;
}
html[data-theme="dark"] .site-footer :is(a,p,strong){
  color:var(--theme-night-muted)!important;
}
html[data-theme="dark"] .site-footer a:hover{color:#fff!important}
html[data-theme="dark"] .site-cookies-container{
  border-color:#705083!important;
  background:#171020f5!important;
  color:#fff!important;
}

@media (max-width:480px){
  .ui-theme-toggle{
    flex-basis:68px;
    width:68px;
    height:42px;
    padding:5px 4px;
  }
  .theme-toggle__option{width:29px;height:30px}
  .theme-toggle__option svg{width:15px;height:15px}
  .site-nav:has(.ui-theme-toggle){gap:10px!important}
}
@media (prefers-reduced-motion:reduce){
  .theme-toggle__option{transition:none}
}

/* High-specificity night layer after the warm Portugal reskin. */
html[data-theme="dark"] #content .site-pin-content{
  background:var(--theme-night-shell)!important;
}
html[data-theme="dark"] #content .site-pin-content>.site-pin-section:not(.site-hero):not(.site-home-app-banner):not(.site-bonus-banner-section):not(.cashback-section),
html[data-theme="dark"] #content .site-pin-content>.site-content-section:not(.site-hero):not(.site-home-app-banner):not(.site-bonus-banner-section):not(.cashback-section){
  border-color:#4b3a55!important;
  background:
    radial-gradient(circle at 100% 0,#8d5aad1c,transparent 22rem),
    linear-gradient(150deg,#201629 0%,#15101b 100%)!important;
  box-shadow:0 12px 30px #0007!important;
  color:#f7f1fb!important;
}
html[data-theme="dark"] #content .site-pin-content>.site-pin-section:not(.site-hero) :is(p,li),
html[data-theme="dark"] #content .site-pin-content>.site-content-section:not(.site-hero) :is(p,li){
  color:#e5dce9!important;
}
html[data-theme="dark"] #content .site-pin-content>.site-pin-section h2,
html[data-theme="dark"] #content .site-pin-content>.site-content-section h2{
  color:#f1c7ff!important;
  text-shadow:0 2px 10px #0009!important;
}
html[data-theme="dark"] #content .site-pin-content>.site-pin-section>h3,
html[data-theme="dark"] #content .site-pin-content>.site-content-section>h3{
  border-color:#4b3a55!important;
  background:#2b1e34!important;
  color:#fff8ff!important;
}
html[data-theme="dark"] #content .site-pin-content>.site-pin-section>h3+p,
html[data-theme="dark"] #content .site-pin-content>.site-content-section>h3+p{
  border-color:#4b3a55!important;
  background:#17101e!important;
  color:#e5dce9!important;
}
html[data-theme="dark"] #content .site-pin-content :is(.site-pin-list,.site-content-section,.site-pin-section) li{
  border-color:#493753!important;
  background:#ffffff0a!important;
  color:#e5dce9!important;
}

html[data-theme="dark"] #content .site-pin-content :is(.site-table-wrap,.ui-table-scroll){
  border-color:#574363!important;
  background:#130d19!important;
}
html[data-theme="dark"] #content .site-pin-content :is(.site-pin-section,.site-content-section,.site-table-wrap,.ui-table-scroll) th,
html[data-theme="dark"] #content .site-pin-content>.site-pin-section[data-content-order] th{
  border-color:#76548a!important;
  background:linear-gradient(110deg,#5c3370,#432550)!important;
  color:#fff!important;
}
html[data-theme="dark"] #content .site-pin-content :is(.site-pin-section,.site-content-section,.site-table-wrap,.ui-table-scroll) td{
  border-color:#ffffff16!important;
  background:#191120!important;
  color:#f0e9f3!important;
}
html[data-theme="dark"] #content .site-pin-content tbody tr:nth-child(even) td{
  background:#25182e!important;
  color:#f5eef8!important;
}

html[data-theme="dark"] #content .site-pin-content>.site-faq-section,
html[data-theme="dark"] #content .site-pin-content>.site-faq-section details{
  border-color:#4b3a55!important;
  background:#191120!important;
  color:#f7f1fb!important;
}
html[data-theme="dark"] #content .site-pin-content>.site-faq-section summary{
  background:#21162a!important;
  color:#fff!important;
}
html[data-theme="dark"] #content .site-pin-content>.site-faq-section summary:after{
  background:#68417a!important;
  color:#fff!important;
}
html[data-theme="dark"] #content .site-pin-content>.site-faq-section details[open] summary{
  background:#35203f!important;
  color:#f5d4ff!important;
}
html[data-theme="dark"] #content .site-pin-content>.site-faq-section details p{color:#e5dce9!important}

html[data-theme="dark"] #content :is(.feature-card,.platform-choice-card,.pros-cons-card,.card,.author-card,.site-review-card,.expert-summary-card,.bonus-detail-card,.app-install-card,.site-install-guide){
  border-color:#4b3a55!important;
  background:linear-gradient(150deg,#25182e,#17101e)!important;
  color:#f7f1fb!important;
  box-shadow:0 9px 24px #0006!important;
}
html[data-theme="dark"] #content :is(.feature-card,.platform-choice-card,.pros-cons-card,.card,.author-card,.site-review-card,.expert-summary-card,.bonus-detail-card,.app-install-card,.site-install-guide) :is(h3,p,li,span,strong){
  color:#e9e0ed!important;
}
html[data-theme="dark"] #content :is(.feature-card,.platform-choice-card,.pros-cons-card,.card,.author-card,.site-review-card,.expert-summary-card,.bonus-detail-card,.app-install-card,.site-install-guide) h3{
  color:#fff!important;
}
html[data-theme="dark"] #content .site-install-eyebrow{color:#e7c56f!important}

html[data-theme="dark"] .site-footer.site-footer--minimal{
  border-top-color:#4b3a55!important;
  background:#0c0810!important;
}
html[data-theme="dark"] .site-footer.site-footer--minimal :is(a,p){color:#ddd2e2!important}

/* Keep the two app-download CTAs equal and their labels optically centred. */
.site-app-page-download-banner .site-home-app-banner-actions{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
  width:min(100%,720px)!important;
  max-width:720px!important;
  align-self:flex-start!important;
  justify-content:stretch!important;
  justify-items:stretch!important;
}
.site-app-page-download-banner .site-home-app-banner-actions>.site-store-btn{
  width:100%!important;
  max-width:none!important;
  justify-self:stretch!important;
}
.site-store-btn .site-store-label{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  text-align:center!important;
}
.site-store-btn .site-store-label>span{
  display:block!important;
  width:100%!important;
  text-align:center!important;
}
@media (max-width:760px){
  .site-app-page-download-banner .site-home-app-banner-actions{
    grid-template-columns:minmax(0,1fr)!important;
    width:min(100%,320px)!important;
    align-self:center!important;
  }
}

/* Readable legal documents without changing typography elsewhere on the site. */
.site-legal-page .site-pin-content{
  font-family:Inter,Arial,sans-serif!important;
}
.site-legal-page .site-pin-content>.site-legal-section{
  margin-bottom:18px!important;
  padding:clamp(22px,3vw,34px)!important;
  border:1px solid #e3cf8f!important;
  border-radius:12px!important;
  background:#fffdf3!important;
  color:#342a1c!important;
  box-shadow:0 8px 22px rgba(47,31,18,.08)!important;
}
.site-legal-page .site-legal-section :is(p,li){
  color:#342a1c!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:16px!important;
  font-weight:400!important;
  line-height:1.75!important;
  letter-spacing:0!important;
}
.site-legal-page .site-legal-section h1,
.site-legal-page .site-legal-section h2{
  color:#4c285e!important;
  font-family:"Riffic",Roboto,Arial,sans-serif!important;
  letter-spacing:0!important;
  margin-bottom:20px!important;
}
.site-legal-page .site-legal-section h1{
  font-size:clamp(34px,4vw,50px)!important;
  line-height:1.08!important;
}
.site-legal-page .site-legal-section h2{
  font-size:clamp(25px,2.5vw,34px)!important;
  line-height:1.18!important;
}
.site-legal-page .site-legal-section h3{
  color:#4a3524!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:20px!important;
  line-height:1.3!important;
  margin-bottom:20px!important;
}
.site-legal-page .site-legal-section a{
  color:#70257d!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}
.site-legal-page .site-legal-section li+li{
  margin-top:8px!important;
}

html[data-theme="dark"] .site-legal-page .site-pin-content>.site-legal-section{
  border-color:#574363!important;
  background:#191120!important;
  color:#eee7f1!important;
  box-shadow:0 8px 22px rgba(0,0,0,.35)!important;
}
html[data-theme="dark"] .site-legal-page .site-legal-section :is(p,li){
  color:#eee7f1!important;
}
html[data-theme="dark"] .site-legal-page .site-legal-section :is(h1,h2,h3){
  color:#f5d4ff!important;
}
html[data-theme="dark"] .site-legal-page .site-legal-section a{
  color:#f0b6ff!important;
}

@media (max-width:760px){
  .site-legal-page .site-pin-content>.site-legal-section{
    padding:20px 17px!important;
  }
  .site-legal-page .site-legal-section :is(p,li){
    font-size:16px!important;
    line-height:1.7!important;
  }
  .site-legal-page .site-legal-section h1{
    font-size:clamp(30px,9vw,38px)!important;
  }
  .site-legal-page .site-legal-section h2{
    font-size:clamp(24px,7vw,30px)!important;
  }
}
