/* 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;
}

.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 #ffffff24;
  border-radius:9px;
  background:#0d2946;
  box-shadow:inset 0 1px 0 #ffffff17,0 5px 14px #03132438;
  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:#9fb4c7;
  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,#35d0b0,#17a78c);
  box-shadow:inset 0 1px 0 #ffffff52,0 3px 8px #001f1a40;
  color:#fff;
}
html[data-theme="dark"] .theme-toggle{
  border-color:#ffffff1c;
  background:#060a12;
  box-shadow:inset 0 1px 0 #ffffff10,0 5px 14px #0008;
}
html[data-theme="dark"] .theme-toggle__option--night{
  background:linear-gradient(180deg,#31486e,#20324f);
  box-shadow:inset 0 1px 0 #ffffff26,0 3px 8px #0007;
  color:#f4f7ff;
}
html[data-theme="dark"] .theme-toggle__option--day{color:#66798e}
.theme-toggle:hover .theme-toggle__option[aria-hidden="true"]{transform:translateY(-1px)}
.theme-toggle:focus-visible{
  outline:3px solid var(--safe-mint-light,#65d5b7);
  outline-offset:3px;
}
.nav:has(.theme-toggle) .theme-toggle{
  margin-left:auto;
}
.nav:has(.theme-toggle) .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"] .pin-content{
  background:var(--theme-night-shell)!important;
}
html[data-theme="dark"] .pin-content>.pin-section:not(.cashback-section),
html[data-theme="dark"] .pin-content>.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 .pin-content>:is(.pin-section,.content-section):not(.cashback-section) h2:not(:where(.hero h2,.bonus-banner-section h2,.offer-banner h2,.home-app-banner h2)){
  color:var(--theme-night-purple)!important;
  text-shadow:0 2px 12px #0007!important;
}
html[data-theme="dark"] .pin-content>.pin-section p,
html[data-theme="dark"] .pin-content>.content-section p,
html[data-theme="dark"] .pin-content>.pin-section li,
html[data-theme="dark"] .pin-content>.content-section li{
  color:var(--theme-night-muted)!important;
}
html[data-theme="dark"] .pin-content>.pin-section>h3,
html[data-theme="dark"] .pin-content>.content-section>h3{
  border-color:var(--theme-night-line)!important;
  background:#ffffff0a!important;
  color:#fff!important;
  box-shadow:none!important;
}
html[data-theme="dark"] .pin-content>.pin-section>h3+p,
html[data-theme="dark"] .pin-content>.content-section>h3+p{
  border-color:var(--theme-night-line)!important;
  background:#0d0912!important;
  color:var(--theme-night-muted)!important;
}
html[data-theme="dark"] .pin-content>.pin-section li,
html[data-theme="dark"] .pin-content>.content-section li,
html[data-theme="dark"] .pin-list li{
  border-color:var(--theme-night-line)!important;
  background:#ffffff09!important;
}

html[data-theme="dark"] .table-wrap,
html[data-theme="dark"] .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"] .pin-section th,
html[data-theme="dark"] .content-section th,
html[data-theme="dark"] .table-wrap th,
html[data-theme="dark"] .table-scroll th{
  border-color:#5a3c6f!important;
  background:#4b2762!important;
  color:#fff!important;
}
html[data-theme="dark"] td,
html[data-theme="dark"] .pin-section td,
html[data-theme="dark"] .content-section td,
html[data-theme="dark"] .table-wrap td,
html[data-theme="dark"] .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"] .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"] .pin-content>.bonus-details-section .bonus-rules-list{
  background:#130c1b!important;
}
html[data-theme="dark"] .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,.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,.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(.review-card,.expert-summary-card) strong,
html[data-theme="dark"] :is(.review-card,.expert-summary-card) h3{
  color:#fff!important;
}
html[data-theme="dark"] .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"] .pin-content>.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"] .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"] .pin-content>.expert-summary-section .expert-summary-heading h2{
  color:#d7acef!important;
}
html[data-theme="dark"] .pin-content>.expert-summary-section .expert-author-line p{
  color:#ded3e5!important;
}
html[data-theme="dark"] .pin-content>.expert-summary-section .expert-author-line p strong{
  color:#fff!important;
}
html[data-theme="dark"] .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"] .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"] .pin-content>.expert-summary-section .expert-summary-meta p span{
  color:#bfaeca!important;
}
html[data-theme="dark"] .pin-content>.expert-summary-section .expert-summary-meta p strong{
  color:#fff!important;
}
html[data-theme="dark"] .reviews-track{
  scrollbar-color:#7b4c98 #120c18;
}
html[data-theme="dark"] .faq-section,
html[data-theme="dark"] .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"] .faq-section summary{
  color:#fff!important;
}
html[data-theme="dark"] .faq-section details p{
  color:var(--theme-night-muted)!important;
}

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

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

@media (max-width:480px){
  .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}
  .nav:has(.theme-toggle){gap:10px!important}
}
@media (prefers-reduced-motion:reduce){
  .theme-toggle__option{transition:none}
}
