/* Temporary October 31 theme; activation and expiry live in halloween-2026.js. */
.ps-halloween-greeting {
    display: none;
}

html.ps-halloween {
    --ps-primary: #352044;
    --ps-primary-dark: #24152f;
    --ps-accent: #704080;
}

.ps-halloween .ps-halloween-greeting {
    align-items: center;
    background: #2b1936;
    border-bottom: 2px solid #ee943e;
    color: #fff0dc;
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    justify-content: center;
    padding: 10px 16px;
    text-align: center;
    font-size: 14px;
}

.ps-halloween-greeting strong {
    color: #ffbd78;
}

.ps-halloween .main-header.navbar,
.ps-halloween .dark-mode .main-header.navbar {
    background: linear-gradient(110deg, #24152f, #583265);
    border-bottom-color: #ee943e;
}

.ps-halloween .ps-home-hero,
.ps-halloween .ps-page-header {
    background:
        radial-gradient(circle at 85% 12%, rgba(255, 164, 67, .28), transparent 32%),
        linear-gradient(135deg, #24152f, #583265);
    box-shadow: 0 14px 30px rgba(44, 22, 55, .18);
}

.ps-halloween .ps-home-hero::after {
    background-image: radial-gradient(circle, #ffd7a3 1px, transparent 2px);
    background-size: 38px 38px;
    opacity: .22;
}

.ps-halloween .ps-home-hero .ps-home-kicker,
.ps-halloween .ps-page-header .ps-home-kicker,
.ps-halloween .ps-schedule-header .ps-home-kicker {
    color: #ffd2a0;
}

.ps-halloween .ps-home-hero p {
    color: #f0e3f5;
}

.ps-halloween .ps-home-actions .btn-success {
    background: #f2a04b;
    border-color: #f2a04b;
    color: #28172e;
    box-shadow: 0 8px 20px rgba(242, 160, 75, .2);
}

.ps-halloween .ps-home-actions .btn-success:hover,
.ps-halloween .ps-home-actions .btn-success:focus {
    background: #ffc17d;
    border-color: #ffc17d;
    color: #28172e;
}

.ps-halloween .main-footer,
.ps-halloween .dark-mode .main-footer {
    border-top: 2px solid #ee943e;
}

@media (max-width: 575.98px) {
    .ps-halloween .ps-halloween-greeting {
        flex-wrap: nowrap;
        gap: 8px;
        font-size: 12px;
    }
}

/* Standalone splash and claim pages share a moonlit seasonal treatment. */
.ps-halloween .ps-seasonal-landing {
    --ps-blue-dark: #281633;
    --ps-blue-mid: #492653;
    --ps-blue-light: #673975;
    --ps-bg-dark: #140e20;
    --ps-card-dark: #2c1c39;
    --ps-orange: #ffb766;
    --ps-orange-strong: #ef923c;
    background:
        radial-gradient(circle at 90% 150px, #ffe4ab 0 27px, #ffc97c33 28px 45px, transparent 46px),
        radial-gradient(ellipse at top left, #593366, #140e20 70%);
    background-color: #140e20;
    color: #fff;
    min-height: 100vh;
}

.ps-halloween .ps-seasonal-landing .hero-card {
    background:
        radial-gradient(circle at 95% 8%, #ffb76622, transparent 35%),
        linear-gradient(135deg, #573164, #24152f 70%);
    border: 1px solid #ee943e88;
    box-shadow: 0 20px 50px #0006, inset 0 3px #ffb766;
}

.ps-halloween .ps-seasonal-landing .card.promo-card {
    background: linear-gradient(180deg, #34213f, #201529);
    border-color: #c68f6355;
}

.ps-halloween .ps-seasonal-landing .btn-promo,
.ps-halloween .ps-seasonal-landing .ps-splash-cta,
.ps-halloween .ps-seasonal-landing .ps-showcase-cta {
    background: linear-gradient(135deg, #ffc578, #f09a45);
    color: #28172e;
    box-shadow: 0 8px 28px #f09a4544;
}

.ps-halloween .ps-seasonal-landing .ps-splash-hero::before {
    background:
        radial-gradient(circle at 85% 16%, #ffe4ab 0 32px, #ffc97c22 33px 52px, transparent 53px),
        linear-gradient(90deg, #24152ff5, #48245288),
        linear-gradient(180deg, #24152f33, #140e20cc);
}

.ps-halloween .ps-seasonal-landing .ps-splash-hero::after {
    background-image:
        radial-gradient(circle, #ffe4ab 1px, transparent 2px),
        radial-gradient(circle, #fff0dc 1px, transparent 2px);
    background-size: 113px 137px, 191px 173px;
    background-position: 13px 21px, 61px 37px;
    content: "";
    inset: 0;
    opacity: .4;
    pointer-events: none;
    position: absolute;
}

.ps-halloween .ps-seasonal-landing .ps-showcase-shell {
    background: linear-gradient(135deg, #34213fee, #201529ee);
    border-color: #ee943e88;
}

.ps-halloween .ps-seasonal-landing .sp-1-bg {
    background: radial-gradient(ellipse at top, #593366, #140e20 75%);
}

@media (prefers-reduced-motion: reduce) {
    .ps-halloween .ps-seasonal-landing .prize-pulse {
        animation: none;
    }
}
