/* Project Horizon: black and gold palette, adapted from the supplied reference. */
:root {
    --bg: #0b0b0c;
    --surface: #1c1c1f;
    --surface-hover: #252421;
    --border: rgba(176, 141, 87, .24);
    --border-hover: rgba(176, 141, 87, .55);
    --text: #f4ecdf;
    --text-muted: #c0b4a3;
    --accent-pink: #b08d57;
    --accent-green: #b08d57;
    --accent-yellow: #d6b67a;
    --accent-blue: #b08d57;
    --blur: blur(18px) saturate(110%);
    --radius: 18px;
}

body { background: #0b0b0c; }
body::before {
    background: radial-gradient(ellipse 75% 46% at 50% -10%, rgba(176,141,87,.13), transparent 72%),
                radial-gradient(ellipse 58% 42% at 90% 76%, rgba(118,88,48,.06), transparent 70%);
    animation: none;
}

.site-header { border-color: rgba(176,141,87,.28); }
.logo { color: #d6b67a; text-shadow: 0 2px 24px rgba(176,141,87,.2); }
.logo:hover { transform: none; text-shadow: 0 2px 30px rgba(176,141,87,.34); }
.horizon-mark { border: 1px solid rgba(176,141,87,.4); box-shadow: 0 5px 20px rgba(0,0,0,.32); }

.btn, #gameSearch, .settings-box input {
    background: #1c1c1f;
    border-color: rgba(176,141,87,.24);
    box-shadow: inset 0 1px 0 rgba(233,223,204,.05);
}
.btn:hover, #gameSearch:focus, .settings-box input:focus {
    background: #252421;
    border-color: rgba(214,182,122,.62);
    box-shadow: 0 0 0 3px rgba(176,141,87,.12);
}
.btn-pink, .btn-yellow { color: #e9dfcc; border-color: rgba(176,141,87,.4); }
.btn-pink:hover, .btn-yellow:hover { background: rgba(176,141,87,.14); border-color: #b08d57; }

.hero {
    margin-top: 20px;
    border: 1px solid rgba(176,141,87,.19);
    border-radius: 26px;
    background: linear-gradient(145deg, rgba(35,32,28,.8), rgba(15,15,16,.82) 62%);
    box-shadow: inset 0 1px 0 rgba(233,223,204,.05), 0 18px 54px rgba(0,0,0,.21);
}
.hero-orb { display: none; }
.hero-title {
    background: linear-gradient(105deg, #f3e8d6 15%, #d6b67a 55%, #f3e8d6 90%);
    -webkit-background-clip: text;
    background-clip: text;
    filter: none;
}
.hero-sub { color: #c9bca8; }
#gameSearch::placeholder { color: #9f9381; }
.section-label-line, .marquee-wrap { border-color: rgba(176,141,87,.25); }
.section-label-line { background: rgba(176,141,87,.25); }
.section-label-text { color: #d6b67a !important; }
.section-label-sub { color: #a89b88; }
.marquee-item, .marquee-item > span { color: #cfb98f !important; opacity: .9; }
.marquee-dot { background: #b08d57; }

.featured-card, .game-card, .panel {
    background: linear-gradient(160deg, #212123, #181819 70%);
    border: 1px solid rgba(176,141,87,.23);
    box-shadow: inset 0 1px 0 rgba(233,223,204,.05), 0 12px 32px rgba(0,0,0,.24) !important;
}
.featured-card::before, .game-card::before {
    background: linear-gradient(150deg, rgba(233,223,204,.05), transparent 45%);
}
.featured-card:hover, .game-card:hover {
    transform: translateY(-4px);
    background: linear-gradient(160deg, #292723, #1b1a1a 70%);
    border-color: rgba(214,182,122,.65) !important;
    box-shadow: inset 0 1px 0 rgba(233,223,204,.08), 0 22px 48px rgba(0,0,0,.34), 0 0 0 1px rgba(176,141,87,.14) !important;
}
.featured-card:hover::before { background: linear-gradient(150deg, rgba(233,223,204,.07), transparent 55%) !important; border: 0 !important; }
.featured-card img, .featured-card-barry img, .game-card img { opacity: 1; }
.featured-card-body, .game-info { background: linear-gradient(180deg, rgba(28,28,31,.98), rgba(24,24,25,1)); }
.featured-badge, .recommend-badge, .game-play-icon {
    background: rgba(176,141,87,.15) !important;
    color: #e9dfcc !important;
    border-color: rgba(176,141,87,.42) !important;
}
.featured-title, .game-title { color: #f4ecdf; }
.featured-arrow { background: rgba(176,141,87,.16); color: #e9dfcc; }
.featured-card:hover .featured-arrow { background: rgba(176,141,87,.28); }
.game-play { color: #bba783; }
.game-card:hover .game-play { color: #e9dfcc; }

.blooket-banner {
    background: linear-gradient(110deg, #24211d, #171719 75%);
    border-color: rgba(176,141,87,.38);
    box-shadow: inset 0 1px 0 rgba(233,223,204,.06), 0 12px 32px rgba(0,0,0,.24);
}
.blooket-banner::before { background: linear-gradient(90deg, rgba(176,141,87,.11), transparent 66%); }
.blooket-banner:hover { background: linear-gradient(110deg, #2b261e, #1c1b1b 75%); border-color: #b08d57; box-shadow: 0 16px 38px rgba(0,0,0,.3); }
.blooket-banner .featured-badge { color: #e9dfcc !important; }
.blooket-price { color: #e9dfcc; text-shadow: none; }
.blooket-cta, .blooket-banner:hover .blooket-cta { background: rgba(176,141,87,.2); border-color: rgba(176,141,87,.42); }

.panel { border-radius: 18px; }
.panel-title { color: #d6b67a; }
.panel a { color: #e3c792; }
.panel a:hover { color: #f2dfb8; }
.footer-divider { background: rgba(176,141,87,.28); }
#cookiePopup, .settings-box { background: #1c1c1f; border-color: rgba(176,141,87,.42); }
#cookiePopup button, .settings-box .settings-btns button.btn-save { background: #b08d57; color: #0b0b0c; }
#cookiePopup button:hover, .settings-box .settings-btns button.btn-save:hover { background: #d6b67a; }

@media (prefers-reduced-motion: reduce) {
    .marquee-track, .game-card { animation: none; }
}
