/* Shared community outlines, surface tint and static glow for the five 69S
 * Gecko presets. Dark retains the approved beta.9 gold palette and geometry;
 * Light, Rose, Sunset and Lime use their own configured accent. CSS follows
 * the native preset class; every rule also requires verified paid entitlement.
 */
body:where(.ssc-theme-premium):is(.gc-preset--69s_dark, .gc-theme--dark):not(.gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) {
    --ssc-accent: #d4af55;
    --ssc-accent-light: #ffe189;
    --ssc-accent-line: rgba(212, 175, 85, .88);
    --ssc-accent-soft: rgba(212, 175, 85, .28);
    --ssc-accent-glow: rgba(212, 175, 85, .18);
    --ssc-accent-sheen: linear-gradient(145deg, rgba(160, 108, 24, .22) 0%, rgba(160, 108, 24, .06) 45%, rgba(160, 108, 24, 0) 85%);
    --COLOR--PRIMARY: #d4af55;
    --COLOR--PRIMARY--SHADE: #b89540;
    --COLOR--PRIMARY--LIGHT: #ffe189;
    --COLOR--PRIMARY--DARK: #e3bc62;
    --COLOR--PRIMARY--ULTRALIGHT: #373020;
    --COLOR--LINK: #f0d48d;
    --COLOR--LINK-HOVER: #ffe9b0;
    --COLOR--LINK-FOCUS: #ffe9b0;
    --c-ps-btn-action-bg: #d4af55;
    --c-ps-btn-action-bg-hover: #ffe189;
    --c-ps-btn-action-color: #211b0f;
    --c-ps-btn-action-color-hover: #211b0f;
    --c-ps-postbox-icons-active-color: #ffe189;
    --c-ps-postbox-type-icons-active-color: #ffe189;
    --ssc-accent-foreground: #ffe189;
    --ssc-edge-highlight: rgba(255, 225, 137, .2);
    --ssc-heading-glow: rgba(212, 175, 85, .2);
    --ssc-header-glow: rgba(212, 175, 85, .1);
    --ssc-panel-shadow: rgba(0, 0, 0, .2);
    --ssc-menu-shadow: rgba(0, 0, 0, .35);
    --ssc-button-sheen: linear-gradient(135deg, rgba(255, 240, 179, .55), rgba(255, 240, 179, 0) 75%);
}

/* Light presets inherit their own live Gecko accent. A darker shade is used
 * for headings/focus so the bright Rose, Sunset and Lime colors remain legible
 * on white surfaces. These rules do not write or replace Gecko preset options.
 */
body:where(.ssc-theme-premium):is(.gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) {
    --ssc-accent: var(--COLOR--PRIMARY);
    --ssc-accent-light: var(--COLOR--PRIMARY--LIGHT);
    --ssc-accent-foreground: color-mix(in srgb, var(--ssc-accent) 50%, black);
    --ssc-accent-line: color-mix(in srgb, var(--ssc-accent) 88%, transparent);
    --ssc-accent-soft: color-mix(in srgb, var(--ssc-accent) 28%, transparent);
    --ssc-accent-glow: color-mix(in srgb, var(--ssc-accent) 18%, transparent);
    --ssc-accent-sheen: linear-gradient(145deg, color-mix(in srgb, var(--ssc-accent) 12%, transparent) 0%, color-mix(in srgb, var(--ssc-accent) 4%, transparent) 45%, transparent 85%);
    --ssc-edge-highlight: color-mix(in srgb, var(--ssc-accent) 20%, transparent);
    --ssc-heading-glow: color-mix(in srgb, var(--ssc-accent) 10%, transparent);
    --ssc-header-glow: color-mix(in srgb, var(--ssc-accent) 10%, transparent);
    --ssc-panel-shadow: rgba(0, 0, 0, .06);
    --ssc-menu-shadow: rgba(0, 0, 0, .14);
    --ssc-button-sheen: linear-gradient(135deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, 0) 75%);
    --c-ps-btn-action-color: #111;
    --c-ps-btn-action-color-hover: #111;
}

/* Light's blue button uses its deeper blue for readable white text. */
body:where(.ssc-theme-premium).gc-preset--gecko_light_copy:not(.wp-admin) {
    --c-ps-btn-action-bg: var(--COLOR--PRIMARY--DARK);
    --c-ps-btn-action-bg-hover: var(--COLOR--PRIMARY--DARK);
    --c-ps-btn-action-color: #fff;
    --c-ps-btn-action-color-hover: #fff;
}

/* Main community surfaces. An outer ring adds no width or layout shift.
 * Do not clip overflow: native privacy menus, reactions and popovers need it.
 */
body:where(.ssc-theme-premium):is(.gc-preset--69s_dark, .gc-theme--dark, .gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) :is(
    .widget, .gc-widget, .ps-post, .ps-postbox, .ps-focus,
    .ps-member, .ps-group, .ps-navbar
):not(.gc-header *, .gc-header__sidebar *, .gc-sticky__bar *) {
    box-shadow: inset 0 1px 0 var(--ssc-edge-highlight),
        0 0 0 1px var(--ssc-accent-line),
        0 0 20px var(--ssc-accent-glow),
        0 6px 20px var(--ssc-panel-shadow);
}

/* Tint the panel's own background. Media and profile-cover elements are not
 * selected; intentional Gecko gradient widgets retain their chosen background.
 */
body:where(.ssc-theme-premium):is(.gc-preset--69s_dark, .gc-theme--dark, .gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) :is(
    .widget, .gc-widget, .ps-post, .ps-postbox,
    .ps-member, .ps-group, .ps-navbar
):not(.gc-header *, .gc-header__sidebar *, .gc-sticky__bar *, .gc-widget--gradient) {
    background-image: var(--ssc-accent-sheen);
}

/* Profile information has an opaque native surface below its separate cover. */
body:where(.ssc-theme-premium):is(.gc-preset--69s_dark, .gc-theme--dark, .gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) .ps-focus__info {
    background-image: var(--ssc-accent-sheen);
}

body:where(.ssc-theme-premium):is(.gc-preset--69s_dark, .gc-theme--dark, .gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) :is(
    .gc-widget__title, .widgettitle, .widget-title, .ps-modal__title
) {
    color: var(--ssc-accent-foreground);
    text-shadow: 0 0 14px var(--ssc-heading-glow);
}

body:where(.ssc-theme-premium):is(.gc-preset--69s_dark, .gc-theme--dark, .gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) .gc-header {
    box-shadow: inset 0 -1px 0 var(--ssc-accent-line), 0 3px 16px var(--ssc-header-glow);
}

/* Floating menus keep their native positioning, display and stacking order. */
body:where(.ssc-theme-premium):is(.gc-preset--69s_dark, .gc-theme--dark, .gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) :is(
    .gc-dropdown, .gc-header__menu .sub-menu, .ps-dropdown__menu,
    .pso-dropdown__menu, .ps-modal, .ps-hovercard
) {
    background-image: var(--ssc-accent-sheen);
    box-shadow: inset 0 1px 0 var(--ssc-edge-highlight),
        0 0 0 1px var(--ssc-accent-line),
        0 0 18px var(--ssc-accent-glow),
        0 8px 28px var(--ssc-menu-shadow);
}

body:where(.ssc-theme-premium):is(.gc-preset--69s_dark, .gc-theme--dark, .gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) :is(.ps-tabs, .ps-focus__menu) {
    --tabs-icon-color--active: var(--ssc-accent-foreground);
    --tabs-text-color--active: var(--ssc-accent-foreground);
    --color-indicator: var(--ssc-accent);
}

/* Secondary controls use a quiet outline; status/danger colors stay native. */
body:where(.ssc-theme-premium):is(.gc-preset--69s_dark, .gc-theme--dark, .gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) .ps-btn {
    --border: var(--ssc-accent-soft);
}

body:where(.ssc-theme-premium):is(.gc-preset--69s_dark, .gc-theme--dark, .gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) :is(.wps-add-ring, .wps-rect-add, .wps-dropzone) {
    border-color: var(--ssc-accent-line);
}

body:where(.ssc-theme-premium):is(.gc-preset--69s_dark, .gc-theme--dark, .gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) :is(.ps-btn--action, .gc-btn, .gc-scroll__to-top) {
    background-image: var(--ssc-button-sheen);
    box-shadow: inset 0 0 0 1px var(--ssc-accent-light), 0 0 14px var(--ssc-accent-glow);
}

/* Native focus outlines are otherwise removed on some PeepSo/Gecko buttons. */
body:where(.ssc-theme-premium):is(.gc-preset--69s_dark, .gc-theme--dark, .gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) :is(
    .peepso a, .peepso button, .gc-widget a, .widget a,
    .gc-header a, .gc-header button, .gc-btn, .ps-btn,
    .ps-modal a, .ps-modal button, .ps-input, .ps-select, .ps-textarea
):focus-visible {
    outline: 2px solid var(--ssc-accent-foreground);
    outline-offset: 3px;
}

/* Omit decorative rings and sheen in print. */
@media print {
    body:where(.ssc-theme-premium):is(.gc-preset--69s_dark, .gc-theme--dark, .gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) :is(
        .widget, .gc-widget, .ps-post, .ps-postbox, .ps-focus,
        .ps-member, .ps-group, .ps-navbar, .gc-header,
        .gc-dropdown, .gc-header__menu .sub-menu, .ps-dropdown__menu,
        .pso-dropdown__menu, .ps-modal, .ps-hovercard, .ps-btn--action,
        .gc-btn, .gc-scroll__to-top
    ) {
        box-shadow: none;
    }
    body:where(.ssc-theme-premium):is(.gc-preset--69s_dark, .gc-theme--dark, .gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) :is(
        .widget, .gc-widget, .ps-post, .ps-postbox, .ps-member, .ps-group,
        .ps-navbar, .ps-focus__info, .gc-dropdown, .gc-header__menu .sub-menu,
        .ps-dropdown__menu, .pso-dropdown__menu, .ps-modal, .ps-hovercard,
        .ps-btn--action, .gc-btn, .gc-scroll__to-top
    ):not(.gc-header__sidebar *, .gc-sticky__bar *, .gc-widget--gradient) {
        background-image: none;
    }
    body:where(.ssc-theme-premium):is(.gc-preset--69s_dark, .gc-theme--dark, .gc-preset--gecko_light_copy, .gc-preset--69s_rose, .gc-preset--69s_sunset, .gc-preset--69s_lime_green):not(.wp-admin) :is(
        .gc-widget__title, .widgettitle, .widget-title, .ps-modal__title
    ) {
        text-shadow: none;
    }
}
