/* Shared colors for Core-owned UI. These variables grant no membership effects.
   Resolve on body so changing Gecko's preset updates already-open components. */
body:not(.wp-admin) {
    --ssc-ui-surface:var(--COLOR--APP, var(--PS-COLOR--APP, #fff));
    --ssc-ui-field:var(--COLOR--APP--LIGHTGRAY, var(--ssc-ui-surface));
    --ssc-ui-text:var(--COLOR--TEXT, var(--PS-COLOR--TEXT, #494954));
    --ssc-ui-accent:var(--ssc-accent, var(--COLOR--PRIMARY, #6271eb));
    --ssc-ui-heading:var(--ssc-accent-foreground, color-mix(in srgb, var(--ssc-ui-accent) 50%, var(--ssc-ui-text)));
    --ssc-ui-link:var(--ssc-ui-heading);
    --ssc-ui-muted:color-mix(in srgb, var(--ssc-ui-text) 80%, var(--ssc-ui-surface));
    --ssc-ui-border:color-mix(in srgb, var(--ssc-ui-text) 65%, var(--ssc-ui-surface));
    --ssc-ui-divider:color-mix(in srgb, var(--ssc-ui-text) 20%, var(--ssc-ui-surface));
    --ssc-ui-button:var(--COLOR--PRIMARY--DARK, #4e5bc5);
    --ssc-ui-button-hover:color-mix(in srgb, var(--ssc-ui-button) 90%, #000);
    --ssc-ui-button-text:#fff;
    --ssc-ui-sheen:linear-gradient(145deg, color-mix(in srgb, var(--ssc-ui-accent) 8%, transparent), transparent 75%);
    --ssc-ui-scheme:light;
}
body:not(.wp-admin):is(.gc-preset--gecko_light_copy,.gc-preset--69s_rose,.gc-preset--69s_sunset,.gc-preset--69s_lime_green) {
    --ssc-ui-heading:color-mix(in srgb, var(--ssc-ui-accent) 50%, #000);
}
body:not(.wp-admin):is(.gc-preset--69s_dark,.gc-preset--69s_rose,.gc-preset--69s_sunset,.gc-preset--69s_lime_green),
body:not(.wp-admin).gc-theme--dark:not(.gc-preset--gecko_light_copy):not(.gc-preset--69s_rose):not(.gc-preset--69s_sunset):not(.gc-preset--69s_lime_green) {
    --ssc-ui-button:var(--ssc-ui-accent);
    --ssc-ui-button-hover:color-mix(in srgb, var(--ssc-ui-accent) 85%, #fff);
    --ssc-ui-button-text:#211b0f;
}
body:not(.wp-admin).gc-preset--69s_dark,
body:not(.wp-admin).gc-theme--dark:not(.gc-preset--gecko_light_copy):not(.gc-preset--69s_rose):not(.gc-preset--69s_sunset):not(.gc-preset--69s_lime_green) {
    --ssc-ui-scheme:dark;
}
/* Native PMPro account/billing cards use the same semantic palette as checkout.
   Variables preserve native markup, form behavior and status colors. */
body:not(.wp-admin) .pmpro {
    --pmpro--color--base:var(--ssc-ui-surface);
    --pmpro--color--base-2:var(--ssc-ui-field);
    --pmpro--color--contrast:var(--ssc-ui-text);
    --pmpro--color--border:var(--ssc-ui-border);
    --pmpro--color--border--variation:var(--ssc-ui-accent);
    --pmpro--color--accent:var(--ssc-ui-heading);
    --pmpro--color--accent--variation:var(--ssc-ui-link);
    color-scheme:var(--ssc-ui-scheme);
}
@media (forced-colors:active) {
    body:not(.wp-admin) {
        --ssc-ui-surface:Canvas;
        --ssc-ui-field:Field;
        --ssc-ui-text:CanvasText;
        --ssc-ui-heading:CanvasText;
        --ssc-ui-link:LinkText;
        --ssc-ui-muted:CanvasText;
        --ssc-ui-border:ButtonBorder;
        --ssc-ui-divider:ButtonBorder;
        --ssc-ui-button:ButtonFace;
        --ssc-ui-button-hover:ButtonFace;
        --ssc-ui-button-text:ButtonText;
        --ssc-ui-sheen:none;
    }
}

/* Native account/billing printouts stay legible without printed backgrounds. */
@media print {
    body:not(.wp-admin) .pmpro {
        --pmpro--color--base:#fff;
        --pmpro--color--base-2:#fff;
        --pmpro--color--contrast:#111;
        --pmpro--color--border:#777;
        --pmpro--color--border--variation:#777;
        --pmpro--color--accent:#111;
        --pmpro--color--accent--variation:#111;
        color:#111;
        color-scheme:light;
    }
}
