/* Peach Coast — coral + apricot + sea-salt teal site-wide theme */
:root {
  color-scheme: light;
  --coast-950: #472633;
  --coast-900: #663044;
  --coast-700: #a54f5f;
  --coast-primary: #ed6f63;
  --coast-secondary: #f4a261;
  --coast-accent: #28aeb1;
  --coast-accent-soft: #dff6f3;
  --coast-cream: #fff3e9;
  --coast-paper: rgba(255, 255, 255, .8);
  --coast-line: rgba(165, 79, 95, .2);
  --coast-text: #4b2f3c;
  --coast-muted: #7b6570;
}

html { background: #fff4ec; }
body {
  background:
    radial-gradient(circle at 10% 4%, rgba(244, 162, 97, .26), transparent 34%),
    radial-gradient(circle at 90% 14%, rgba(40, 174, 177, .16), transparent 38%),
    radial-gradient(circle at 48% 96%, rgba(237, 111, 99, .13), transparent 40%),
    linear-gradient(155deg, #fffaf5 0%, var(--coast-cream) 52%, var(--coast-accent-soft) 100%) !important;
  color: var(--coast-text) !important;
}
::selection { background: #ffd0bd; color: var(--coast-950); }

.topbar,
.detail-bar,
.legal-bar {
  background: rgba(102, 48, 68, .96) !important;
  border-color: rgba(255, 255, 255, .14) !important;
  box-shadow: 0 4px 20px rgba(71, 38, 51, .22) !important;
}
.topbar-logo,
.detail-bar-title,
.legal-bar-title {
  color: #fff8f2 !important;
  text-shadow: none !important;
}
.hamburger-btn,
.detail-back,
.legal-back {
  background: rgba(255, 255, 255, .13) !important;
  color: #fff !important;
  border-color: rgba(255, 255, 255, .24) !important;
  box-shadow: none !important;
}
.hamburger-menu {
  background: rgba(102, 48, 68, .98) !important;
  box-shadow: 0 12px 30px rgba(71, 38, 51, .3) !important;
}
.hamburger-item {
  color: #ffe9df !important;
  border-color: rgba(255, 255, 255, .1) !important;
}
.hamburger-item.active { color: #8ce2de !important; }
.hamburger-backdrop { background: rgba(71, 38, 51, .4) !important; }

.search-bar-wrap {
  background: transparent !important;
  border-color: transparent !important;
}
.search-input {
  background: rgba(255, 255, 255, .86) !important;
  color: var(--coast-text) !important;
  border: 1px solid var(--coast-line) !important;
  box-shadow: 0 6px 18px rgba(134, 75, 84, .1) !important;
}
.search-input:focus {
  border-color: rgba(40, 174, 177, .55) !important;
  box-shadow: 0 0 0 3px rgba(40, 174, 177, .12), 0 6px 18px rgba(134, 75, 84, .1) !important;
}
.search-input::placeholder { color: #a1848f; }

.sec-label,
.filter-title,
.legal-pg-title,
.legal-sec-h2,
.sec-title-text,
.related-title,
.glow-feat-title,
.sun-badge-name,
.rname,
.mag-nm {
  color: var(--coast-text) !important;
  text-shadow: none !important;
}
.sec-more,
.filter-back,
.not-found button,
.sun-badge-cat,
.legal-page a {
  color: #168d90 !important;
}
.sec-cnt,
.filter-cnt,
.empty-msg,
.site-footer,
.feat-desc,
.rtag,
.rdesc,
.kcard-nm,
.agcard-nm,
.gcard-nm,
.twcard-nm,
.tgcard-nm,
.twcard-desc,
.tgcard-desc,
.avcard-nm,
.mag-desc,
.glow-feat-desc,
.ring-nm,
.sun-badge-desc,
.promo-text,
.rel-nm,
.not-found,
.legal-pg-date,
.legal-sec-body,
.legal-sec p,
.legal-sec li {
  color: var(--coast-muted) !important;
}

.glow-feat {
  background:
    radial-gradient(circle at 28% 24%, rgba(244, 162, 97, .26), transparent 56%),
    linear-gradient(135deg, rgba(255, 255, 255, .84), rgba(240, 252, 250, .74)) !important;
  border: 1px solid var(--coast-line) !important;
  box-shadow: 0 12px 30px rgba(134, 75, 84, .11) !important;
}
.sun-badge-item,
.about-section,
.howplay-section,
.legal-intro-sec,
.legal-sec {
  background: var(--coast-paper) !important;
  border-color: var(--coast-line) !important;
  box-shadow: 0 8px 24px rgba(134, 75, 84, .09) !important;
}
.mag-row,
.ritem { border-color: rgba(165, 79, 95, .15) !important; }

.feat-badge,
.spot-badge,
.adv-badge,
.banner-badge,
.glow-feat-badge,
.poster-cat-badge {
  background: linear-gradient(135deg, var(--coast-primary), var(--coast-secondary)) !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(237, 111, 99, .24) !important;
}
.more-btn,
.loadmore-btn,
.play-btn,
.totop-btn {
  background: linear-gradient(135deg, var(--coast-primary), var(--coast-secondary)) !important;
  color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 7px 20px rgba(197, 87, 78, .24) !important;
}
.loading-ring {
  border-color: rgba(237, 111, 99, .18) !important;
  border-top-color: var(--coast-accent) !important;
  box-shadow: 0 0 12px rgba(40, 174, 177, .2) !important;
}
.rnum { color: #a88a94 !important; }
.rnum.rn-1 { color: var(--coast-primary) !important; text-shadow: none !important; }
.rnum.rn-2 { color: var(--coast-secondary) !important; }
.rnum.rn-3 { color: var(--coast-accent) !important; text-shadow: none !important; }
.rplay { color: var(--coast-accent) !important; text-shadow: none !important; }

.kcard-img,
.agcard-img,
.gcard-img,
.twcard-img,
.tgcard-img,
.rthumb,
.rel-img,
.gid-icon {
  border-color: rgba(237, 111, 99, .22) !important;
  box-shadow: 0 5px 14px rgba(134, 75, 84, .12) !important;
}
.spot-card,
.adv-hero {
  border-color: rgba(40, 174, 177, .28) !important;
  box-shadow: 0 8px 22px rgba(71, 38, 51, .15) !important;
}
.spot-card::after,
.adv-hero::after { background: linear-gradient(transparent, rgba(71, 38, 51, .9)) !important; }
.ring-img {
  border-image: linear-gradient(135deg, var(--coast-primary), var(--coast-secondary), var(--coast-accent)) 1 !important;
}
.sun-badge-icon {
  background: radial-gradient(circle, #a3ece6, var(--coast-accent)) !important;
  color: #164d52 !important;
}
.glow-feat-img { box-shadow: 0 7px 20px rgba(237, 111, 99, .2) !important; }

.game-poster::after { background: linear-gradient(transparent 52%, rgba(71, 38, 51, .92)) !important; }
.gid-name {
  color: #fff !important;
  text-shadow: 0 2px 7px rgba(71, 38, 51, .58) !important;
}
.gid-tag {
  background: rgba(255, 255, 255, .82) !important;
  color: var(--coast-text) !important;
  border-color: rgba(255, 255, 255, .76) !important;
}
.gid-tag-free {
  background: rgba(40, 174, 177, .88) !important;
  color: #fff !important;
  border-color: transparent !important;
}
.about-body,
.howplay-body,
.legal-intro-sec { color: #694e5b !important; }
.legal-pg-icon { filter: drop-shadow(0 5px 12px rgba(237, 111, 99, .25)) !important; }

body.play-shell {
  background: var(--coast-950) !important;
  color: #fff8f2 !important;
}
.play-shell {
  --c-nav: rgba(102, 48, 68, .98);
  --c-text: #fff8f2;
  --c-grad-s: #ed6f63;
  --c-grad-e: #f4a261;
}
.play-shell .navbar {
  border-color: rgba(255, 255, 255, .12) !important;
  box-shadow: 0 3px 16px rgba(71, 38, 51, .34) !important;
}
.play-shell .nav-back { background: rgba(255, 255, 255, .14) !important; }
.play-shell .nav-back:hover { background: rgba(255, 255, 255, .23) !important; }
.play-shell .nav-back:active { background: rgba(40, 174, 177, .3) !important; }
.play-shell .ga-wrap { background: #2d1821 !important; }
.play-shell .goback { box-shadow: 0 5px 18px rgba(237, 111, 99, .38) !important; }

.topbar-logo {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
}
.site-logo-icon {
  display: block;
  width: 26px;
  height: 26px;
  object-fit: contain;
  flex: 0 0 26px;
}
