.event-appearance-scope {
    --event-user-accent: #6c63ff;
    --event-user-accent-2: #a78bfa;
    --event-user-accent-rgb: 108, 99, 255;
    --event-user-accent-contrast: #ffffff;
    --event-user-canvas: transparent;
    --event-background-image: none;
    --event-background-overlay: rgba(5, 10, 20, 0.64);
    --event-background-fade: rgba(5, 10, 20, 0.98);
    position: relative;
    isolation: isolate;
    transition: background 0.25s ease;
}

.event-appearance-scope.event-bg-midnight {
    --event-user-canvas:
        radial-gradient(circle at 12% 8%, rgba(79, 70, 229, 0.2), transparent 27%),
        radial-gradient(circle at 88% 28%, rgba(14, 165, 233, 0.1), transparent 24%),
        linear-gradient(180deg, #090d20 0%, #11162c 52%, #090d1b 100%);
}

.event-appearance-scope.event-bg-ocean {
    --event-user-canvas:
        radial-gradient(circle at 85% 10%, rgba(34, 211, 238, 0.18), transparent 29%),
        radial-gradient(circle at 10% 45%, rgba(37, 99, 235, 0.16), transparent 28%),
        linear-gradient(180deg, #071827 0%, #0b2636 52%, #081622 100%);
}

.event-appearance-scope.event-bg-warm {
    --event-user-canvas:
        radial-gradient(circle at 78% 8%, rgba(251, 146, 60, 0.18), transparent 28%),
        radial-gradient(circle at 12% 48%, rgba(244, 63, 94, 0.1), transparent 27%),
        linear-gradient(180deg, #231412 0%, #2a1b1a 52%, #181111 100%);
}

.event-appearance-scope.event-bg-paper {
    --event-user-canvas:
        linear-gradient(rgba(255, 255, 255, 0.018) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.018) 1px, transparent 1px),
        linear-gradient(180deg, #22231f 0%, #292a25 52%, #1d1e1b 100%);
    background-size: 26px 26px, 26px 26px, auto !important;
}

body.events-showevent-page .sp-page-wrap.event-appearance-scope:not(.event-bg-default),
.project-appearance-preview__page.event-appearance-scope {
    --project-accent: var(--event-user-accent);
    --project-accent-2: var(--event-user-accent-2);
    --project-accent-rgb: var(--event-user-accent-rgb);
    background: var(--event-user-canvas) !important;
}

.project-appearance-preview__page.event-appearance-scope.event-bg-default {
    --event-user-canvas: linear-gradient(180deg, #15192e 0%, #0e1222 100%);
}

.event-appearance-scope.event-accent-violet {
    --event-user-accent: #417df0;
    --event-user-accent-2: #9dc2ff;
    --event-user-accent-rgb: 65, 125, 240;
    --event-user-accent-contrast: #ffffff;
}

.project-appearance-modal:has(#eventAppearanceForm) .project-choice-accent-violet .project-appearance-choice__swatch {
    background: #417df0;
}

.event-appearance-scope.event-accent-ocean {
    --event-user-accent: #1677ff;
    --event-user-accent-2: #38d8ff;
    --event-user-accent-rgb: 22, 119, 255;
    --event-user-accent-contrast: #ffffff;
}

.event-appearance-scope.event-accent-mint {
    --event-user-accent: #0f9f78;
    --event-user-accent-2: #57e5b7;
    --event-user-accent-rgb: 15, 159, 120;
    --event-user-accent-contrast: #041c15;
}

.event-appearance-scope.event-accent-coral {
    --event-user-accent: #e6574f;
    --event-user-accent-2: #ff9b75;
    --event-user-accent-rgb: 230, 87, 79;
    --event-user-accent-contrast: #2b0907;
}

.event-appearance-scope.event-accent-amber {
    --event-user-accent: #c57b00;
    --event-user-accent-2: #ffd166;
    --event-user-accent-rgb: 197, 123, 0;
    --event-user-accent-contrast: #271600;
}

.event-appearance-scope .event-hero-kicker,
.event-appearance-scope .event-info-kicker,
.event-appearance-scope .event-side-kicker,
.event-appearance-scope .event-owner-kicker,
.event-appearance-scope .event-countdown-kicker,
.event-appearance-scope .ach-panel-kicker,
.event-appearance-scope .evc-section-kicker,
.event-appearance-scope .gamejam-brief-kicker,
.event-appearance-scope .event-award-public-kicker {
    color: var(--event-user-accent-2) !important;
}

.event-appearance-scope .event-hero-kicker,
.event-appearance-scope .event-phase-step.is-active,
.event-appearance-scope .event-info-meta-item,
.event-appearance-scope .event-side-stat {
    border-color: rgba(var(--event-user-accent-rgb), 0.28) !important;
}

.event-appearance-scope .event-phase-step.is-active,
.event-appearance-scope .event-hero-kicker {
    background: rgba(var(--event-user-accent-rgb), 0.11) !important;
}

.event-appearance-scope .event-media-gallery .sp-project-gallery__thumb.is-active {
    border-color: var(--event-user-accent) !important;
    box-shadow: 0 0 0 2px rgba(var(--event-user-accent-rgb), 0.16) !important;
}

.event-appearance-scope .event-media-gallery .sp-project-gallery__nav:hover {
    border-color: rgba(var(--event-user-accent-rgb), 0.58) !important;
    background: var(--event-user-accent) !important;
}

.event-appearance-scope .tab-menu {
    scrollbar-color: rgba(var(--event-user-accent-rgb), 0.62) rgba(var(--event-user-accent-rgb), 0.08);
}

.event-appearance-scope .tab-link.active {
    border-color: transparent !important;
    color: var(--event-user-accent-contrast) !important;
    background: linear-gradient(135deg, var(--event-user-accent), var(--event-user-accent-2)) !important;
    box-shadow: 0 10px 24px rgba(var(--event-user-accent-rgb), 0.22);
}

.event-appearance-scope .tab-link.active i {
    color: inherit !important;
}

.event-appearance-scope .tab-link:not(.active):hover {
    color: var(--event-user-accent-2) !important;
    background: rgba(var(--event-user-accent-rgb), 0.1) !important;
}

html[data-theme="light"] .event-appearance-scope .tab-link:not(.active):hover {
    color: var(--event-user-accent) !important;
}

.event-media-fit-cover .sp-project-gallery__stage img,
.project-appearance-preview__page.event-media-fit-cover .project-appearance-preview__media img {
    object-fit: cover !important;
}

.event-media-fit-contain .sp-project-gallery__stage img,
.project-appearance-preview__page.event-media-fit-contain .project-appearance-preview__media img {
    object-fit: contain !important;
    background: rgba(4, 7, 16, 0.92);
}

html[data-theme="light"] .event-appearance-scope.event-bg-midnight,
.preview-theme-light.event-appearance-scope.event-bg-midnight {
    --event-user-canvas:
        radial-gradient(circle at 12% 8%, rgba(99, 102, 241, 0.14), transparent 27%),
        radial-gradient(circle at 88% 28%, rgba(14, 165, 233, 0.08), transparent 24%),
        linear-gradient(180deg, #eef1ff 0%, #e7ebfa 52%, #f5f7ff 100%);
}

html[data-theme="light"] .event-appearance-scope.event-bg-ocean,
.preview-theme-light.event-appearance-scope.event-bg-ocean {
    --event-user-canvas:
        radial-gradient(circle at 85% 10%, rgba(6, 182, 212, 0.15), transparent 29%),
        radial-gradient(circle at 10% 45%, rgba(37, 99, 235, 0.1), transparent 28%),
        linear-gradient(180deg, #edfaff 0%, #e5f5fa 52%, #f4fbfd 100%);
}

html[data-theme="light"] .event-appearance-scope.event-bg-warm,
.preview-theme-light.event-appearance-scope.event-bg-warm {
    --event-user-canvas:
        radial-gradient(circle at 78% 8%, rgba(251, 146, 60, 0.14), transparent 28%),
        radial-gradient(circle at 12% 48%, rgba(244, 63, 94, 0.07), transparent 27%),
        linear-gradient(180deg, #fff7ed 0%, #fdf0e8 52%, #fffaf5 100%);
}

html[data-theme="light"] .event-appearance-scope.event-bg-paper,
.preview-theme-light.event-appearance-scope.event-bg-paper {
    --event-user-canvas:
        linear-gradient(rgba(120, 113, 90, 0.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(120, 113, 90, 0.055) 1px, transparent 1px),
        linear-gradient(180deg, #faf7ef 0%, #f4f0e5 52%, #fdfbf6 100%);
}

.preview-theme-light.event-appearance-scope.event-bg-default {
    --event-user-canvas: linear-gradient(180deg, #ffffff 0%, #f3f6fb 100%);
}

body.events-showevent-page .sp-page-wrap.event-appearance-scope.event-has-background-image,
.project-appearance-preview__page.event-appearance-scope.event-has-background-image {
    background: var(--event-user-canvas) !important;
}

body.events-showevent-page .sp-page-wrap.event-appearance-scope.event-has-background-image::before,
.project-appearance-preview__page.event-appearance-scope.event-has-background-image::before {
    z-index: 0;
    content: "";
    pointer-events: none;
    background-image:
        linear-gradient(180deg, var(--event-background-overlay) 0%, var(--event-background-overlay) 58%, var(--event-background-fade) 100%),
        var(--event-background-image);
    background-repeat: no-repeat, no-repeat;
    background-position: center, center center;
}

body.events-showevent-page .sp-page-wrap.event-appearance-scope.event-has-background-image.event-background-fit-cover::before {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100vh;
    height: 100dvh;
    background-size: cover, cover;
}

body.events-showevent-page .sp-page-wrap.event-appearance-scope.event-has-background-image.event-background-fit-contain::before {
    position: absolute;
    inset: 0 0 auto;
    height: clamp(560px, 68vw, 980px);
    background-size: cover, contain;
}

body.events-showevent-page .sp-page-wrap.event-appearance-scope.event-has-background-image > *,
.project-appearance-preview__page.event-appearance-scope.event-has-background-image > * {
    position: relative;
    z-index: 1;
}

.project-appearance-preview__page.event-appearance-scope.event-has-background-image::before {
    position: absolute;
    inset: 0;
    width: auto;
    height: 100%;
    border-radius: inherit;
}

.project-appearance-preview__page.event-appearance-scope.event-has-background-image.event-background-fit-cover::before {
    background-size: cover, cover;
}

.project-appearance-preview__page.event-appearance-scope.event-has-background-image.event-background-fit-contain::before {
    background-size: cover, contain;
}

.event-appearance-scope.event-overlay-soft {
    --event-background-overlay: rgba(5, 10, 20, 0.44);
}

.event-appearance-scope.event-overlay-balanced {
    --event-background-overlay: rgba(5, 10, 20, 0.64);
}

.event-appearance-scope.event-overlay-strong {
    --event-background-overlay: rgba(5, 10, 20, 0.8);
}

html[data-theme="light"] .event-appearance-scope.event-has-background-image.event-overlay-soft,
.preview-theme-light.event-appearance-scope.event-has-background-image.event-overlay-soft {
    --event-background-overlay: rgba(244, 248, 252, 0.2);
    --event-background-fade: rgba(244, 248, 252, 0.98);
}

html[data-theme="light"] .event-appearance-scope.event-has-background-image.event-overlay-balanced,
.preview-theme-light.event-appearance-scope.event-has-background-image.event-overlay-balanced {
    --event-background-overlay: rgba(244, 248, 252, 0.38);
    --event-background-fade: rgba(244, 248, 252, 0.98);
}

html[data-theme="light"] .event-appearance-scope.event-has-background-image.event-overlay-strong,
.preview-theme-light.event-appearance-scope.event-has-background-image.event-overlay-strong {
    --event-background-overlay: rgba(244, 248, 252, 0.56);
    --event-background-fade: rgba(244, 248, 252, 0.99);
}

.event-appearance-scope.event-background-position-top::before {
    background-position: center, center top;
}

.event-appearance-scope.event-background-position-center::before {
    background-position: center, center center;
}

.event-appearance-scope.event-background-position-bottom::before {
    background-position: center, center bottom;
}

body.events-showevent-page #footer-4 {
    position: relative;
    z-index: 2;
    color: var(--dark-text) !important;
    background-color: var(--dark-bg) !important;
}

html[data-theme="light"] body.events-showevent-page #footer-4 {
    background-color: var(--dark-card) !important;
}

@media (prefers-reduced-motion: reduce) {
    .event-appearance-scope {
        transition: none;
    }
}
