/*
 * TERRA ICON theme contract.
 *
 * Components must use semantic tokens from this file instead of theme-specific
 * HEX/RGB values. Dark Gold is the fallback and keeps the existing appearance.
 * Light Gold can already be previewed by setting data-theme="light-gold" on
 * the root html element; the switch and persistence are added in stage C.
 */

:root,
:root[data-theme="dark-gold"] {
    color-scheme: dark;

    /* Page and surfaces. */
    --color-bg-page: #050505;
    --color-bg-soft: #0a0a08;
    --color-surface: #11110f;
    --color-surface-elevated: #191712;
    --color-surface-card-start: rgba(22, 20, 16, .92);
    --color-surface-card-end: rgba(8, 8, 7, .88);
    --color-surface-glass: rgba(255, 255, 255, .02);
    --color-surface-glass-medium: rgba(255, 255, 255, .03);
    --color-surface-glass-hover: rgba(255, 255, 255, .035);
    --color-surface-glass-strong: rgba(255, 255, 255, .045);
    --color-surface-accent-soft: rgba(218, 169, 82, .08);
    --color-surface-accent: rgba(218, 169, 82, .10);

    /* Text. */
    --color-text-primary: #fff8e9;
    --color-text-secondary: #b9a988;
    --color-text-muted: #8c8069;
    --color-text-inverse: #1f1403;
    --color-text-on-accent: #1f1403;
    --color-placeholder: #8c8069;
    --color-disabled-text: #8c8069;

    /* Browser-owned UI. */
    --color-selection-surface: #805414;
    --color-selection-text: #fff8e9;
    --color-autofill-surface: #15130f;

    /* Brand accents. */
    --color-accent: #d9a64f;
    --color-accent-highlight: #ffe0a1;
    --color-accent-strong: #9b641e;
    --color-accent-text: #d9a64f;
    --color-accent-text-strong: #ffe0a1;
    --color-accent-soft: rgba(218, 169, 82, .10);
    --color-accent-softer: rgba(218, 169, 82, .065);
    --color-accent-glow: rgba(218, 169, 82, .18);

    /* Borders and focus. */
    --color-border-subtle: rgba(255, 255, 255, .07);
    --color-border: rgba(218, 169, 82, .28);
    --color-border-strong: rgba(218, 169, 82, .48);
    --color-border-control: rgba(255, 255, 255, .10);
    --color-border-control-hover: rgba(218, 169, 82, .30);
    --color-focus-ring: #ffe0a1;

    /* Buttons and interactive controls. */
    --gradient-button-primary: linear-gradient(135deg, #fff0bd, #d7a24d 48%, #9d641e);
    --shadow-button-primary: 0 10px 28px rgba(218, 169, 82, .22);
    --shadow-button-primary-hover: 0 0 34px rgba(218, 169, 82, .34);
    --color-control-surface: rgba(255, 255, 255, .02);
    --color-control-surface-hover: rgba(218, 169, 82, .075);
    --color-provider-badge-surface: rgba(255, 255, 255, .55);

    /* Status colors. */
    --color-success: #3ee582;
    --color-success-surface: rgba(62, 229, 130, .10);
    --color-success-border: rgba(62, 229, 130, .34);
    --color-warning: #f4cf66;
    --color-warning-surface: rgba(244, 207, 102, .10);
    --color-warning-border: rgba(244, 207, 102, .34);
    --color-danger: #e07183;
    --color-danger-surface: rgba(224, 113, 131, .10);
    --color-danger-border: rgba(224, 113, 131, .34);
    --color-info: #79b8ff;
    --color-info-surface: rgba(121, 184, 255, .10);
    --color-info-border: rgba(121, 184, 255, .34);

    /* Special branded states. */
    --color-special-burgundy: #741f32;
    --color-special-burgundy-text: #f1c36d;
    --color-special-burgundy-border: rgba(181, 83, 101, .38);
    --shadow-special-burgundy: 0 0 13px rgba(116, 31, 50, .62);

    /* Navigation glass shared by header, mobile menu and bottom navigation. */
    --color-nav-surface: rgba(10, 10, 12, .94);
    --color-nav-surface-menu: rgba(9, 9, 11, .96);
    --color-nav-surface-contrast: rgba(5, 5, 7, .98);
    --color-nav-border: rgba(255, 255, 255, .11);
    --color-nav-border-scrolled: rgba(255, 255, 255, .14);
    --color-nav-highlight: rgba(255, 255, 255, .09);
    --color-nav-item-text: rgba(235, 229, 214, .64);
    --color-nav-item-border: rgba(255, 255, 255, .045);
    --color-nav-link-border-hover: rgba(255, 255, 255, .07);
    --color-nav-item-surface: rgba(255, 255, 255, .025);
    --color-nav-item-surface-hover: rgba(255, 255, 255, .045);
    --color-nav-control-surface: rgba(255, 255, 255, .035);
    --color-nav-language-surface: rgba(3, 3, 4, .26);
    --color-nav-active-border: rgba(218, 169, 82, .20);
    --color-nav-active-surface: rgba(218, 169, 82, .065);
    --color-nav-contrast-border: rgba(255, 224, 161, .58);
    --color-bottom-nav-hover-border: rgba(255, 255, 255, .055);
    --color-bottom-nav-active-border: rgba(218, 169, 82, .24);
    --gradient-nav-surface: linear-gradient(135deg, rgba(25, 25, 28, .76), rgba(7, 7, 9, .62));
    --gradient-nav-surface-scrolled: linear-gradient(135deg, rgba(22, 22, 25, .86), rgba(6, 6, 8, .74));
    --gradient-menu-surface: linear-gradient(145deg, rgba(24, 24, 27, .86), rgba(7, 7, 9, .8));
    --gradient-bottom-nav-surface: linear-gradient(135deg, rgba(25, 25, 28, .8), rgba(7, 7, 9, .7));
    --gradient-nav-overlay: radial-gradient(circle at 14% -45%, rgba(255, 255, 255, .13), transparent 42%), linear-gradient(90deg, transparent, rgba(218, 169, 82, .06), transparent);
    --gradient-bottom-nav-overlay: radial-gradient(circle at 50% -80%, rgba(255, 255, 255, .16), transparent 48%), linear-gradient(90deg, transparent, rgba(218, 169, 82, .045), transparent);
    --gradient-nav-accent-line: linear-gradient(90deg, transparent, rgba(255, 224, 161, .4), transparent);
    --gradient-bottom-nav-indicator: linear-gradient(90deg, transparent, #f6d784, transparent);
    --gradient-bottom-nav-active: radial-gradient(circle at 50% 8%, rgba(255, 224, 161, .15), transparent 62%), linear-gradient(180deg, rgba(218, 169, 82, .105), rgba(255, 255, 255, .025));
    --shadow-nav: 0 12px 42px rgba(0, 0, 0, .34), 0 1px 0 rgba(255, 255, 255, .04), inset 0 1px 0 rgba(255, 255, 255, .09), inset 0 -1px 0 rgba(218, 169, 82, .06);
    --shadow-nav-scrolled: 0 16px 48px rgba(0, 0, 0, .46), 0 1px 0 rgba(255, 255, 255, .045), inset 0 1px 0 rgba(255, 255, 255, .1), inset 0 -1px 0 rgba(218, 169, 82, .08);
    --shadow-menu: 0 20px 52px rgba(0, 0, 0, .52), inset 0 1px 0 rgba(255, 255, 255, .08);
    --shadow-bottom-nav: 0 -12px 34px rgba(0, 0, 0, .34), 0 18px 48px rgba(0, 0, 0, .48), 0 0 0 1px rgba(218, 169, 82, .035), inset 0 1px 0 rgba(255, 255, 255, .09), inset 0 -1px 0 rgba(218, 169, 82, .07);
    --shadow-brand-text: 0 0 22px rgba(218, 169, 82, .16);
    --shadow-nav-control-active: 0 3px 12px rgba(0, 0, 0, .2), inset 0 1px 0 rgba(255, 255, 255, .28);
    --shadow-bottom-nav-indicator: 0 0 16px rgba(225, 181, 75, .7);
    --shadow-bottom-nav-active: 0 8px 22px rgba(0, 0, 0, .2), inset 0 1px 0 rgba(255, 255, 255, .075);
    --shadow-bottom-nav-icon: drop-shadow(0 0 8px rgba(218, 169, 82, .28));

    /* Compact notification badges. */
    --color-badge-outline: #050504;
    --color-badge-text: #090806;
    --color-badge-surface: #f4cf66;
    --shadow-badge: 0 0 0 1px rgba(244, 207, 102, .24), 0 0 14px rgba(244, 207, 102, .55);

    /* Page atmosphere, cards, overlays and depth. */
    --background-page: radial-gradient(circle at 20% 10%, rgba(218, 169, 82, .08), transparent 28rem), radial-gradient(circle at 80% 30%, rgba(218, 169, 82, .08), transparent 30rem), var(--color-bg-page);
    --background-card: linear-gradient(180deg, var(--color-surface-card-start), var(--color-surface-card-end));
    --background-card-accent: radial-gradient(circle at 85% 0%, rgba(218, 169, 82, .12), transparent 14rem);
    --background-site-glow: radial-gradient(circle, rgba(218, 169, 82, .16), transparent 65%);
    --color-backdrop: rgba(0, 0, 0, .72);
    --color-image-overlay-soft: rgba(0, 0, 0, .24);
    --color-image-overlay: rgba(5, 5, 5, .75);
    --color-image-surface: #100d0a;
    --color-image-text: #fff8e9;
    --color-image-text-secondary: #b9a988;
    --color-image-accent: #ffe0a1;
    --shadow-accent: 0 0 40px rgba(218, 169, 82, .18);
    --shadow-card: 0 18px 60px rgba(0, 0, 0, .45);
    --shadow-soft: 0 12px 36px rgba(0, 0, 0, .24);
    --filter-logo-watermark: drop-shadow(0 0 30px rgba(218, 169, 82, .28));
    --filter-hero-image: drop-shadow(0 0 32px rgba(218, 169, 82, .22)) drop-shadow(0 18px 32px rgba(0, 0, 0, .55));

    /* Public-page surfaces shared by home, editorial, catalog and archives. */
    --public-surface-hero: radial-gradient(circle at 86% 20%, rgba(212, 175, 55, .15), transparent 31%), linear-gradient(135deg, rgba(16, 15, 12, .99), rgba(4, 4, 4, .99));
    --public-surface-featured: radial-gradient(circle at 92% 8%, rgba(212, 175, 55, .10), transparent 32%), rgba(10, 10, 8, .97);
    --public-surface-subtle: linear-gradient(135deg, rgba(212, 175, 55, .08), rgba(255, 255, 255, .015));
    --public-surface-item: rgba(255, 255, 255, .018);
    --public-surface-item-hover: rgba(212, 175, 55, .08);
    --public-surface-control: rgba(255, 255, 255, .035);
    --public-surface-control-focus: rgba(212, 175, 55, .055);
    --public-surface-sheet: radial-gradient(circle at 12% 0%, rgba(212, 175, 55, .14), transparent 31%), linear-gradient(145deg, rgba(20, 18, 14, .995), rgba(8, 8, 7, .995));
    --public-surface-tabs: rgba(8, 8, 8, .78);
    --public-surface-table-head: rgba(255, 255, 255, .018);
    --public-surface-row-winner: linear-gradient(90deg, rgba(111, 16, 40, .50), rgba(111, 16, 40, .10));
    --public-surface-row-finalist: rgba(212, 175, 55, .055);
    --public-surface-profile: radial-gradient(circle at 76% 14%, rgba(212, 175, 55, .10), transparent 34%), linear-gradient(180deg, rgba(13, 12, 10, .99), rgba(5, 5, 5, .99));
    --public-surface-catalog-card: radial-gradient(circle at 13% 20%, rgba(212, 175, 55, .10), transparent 33%), rgba(9, 9, 8, .96);
    --public-surface-filter-actions: linear-gradient(180deg, rgba(10, 9, 7, 0), rgba(10, 9, 7, .96) 24%);
    --public-surface-editorial: linear-gradient(90deg, rgba(87, 19, 39, .18), transparent 30%, transparent 70%, rgba(87, 19, 39, .18)), rgba(5, 5, 5, .90);
    --public-border-soft: rgba(212, 175, 55, .18);
    --public-border-medium: rgba(212, 175, 55, .28);
    --public-border-strong: rgba(212, 175, 55, .42);
    --public-divider: rgba(255, 255, 255, .08);
    --public-text-rich: #f6efe4;
    --public-text-body: #bcae99;
    --public-text-editorial: #e8d9bd;
    --public-text-soft: rgba(239, 230, 211, .68);
    --public-text-number: rgba(227, 198, 123, .42);
    --public-control-option-text: #f7efd9;
    --public-control-option-surface: #15130f;
    --public-shadow-panel: 0 18px 55px rgba(0, 0, 0, .22);
    --public-shadow-card: 0 14px 34px rgba(0, 0, 0, .25);
    --public-shadow-card-hover: 0 19px 44px rgba(0, 0, 0, .35);
    --public-shadow-sheet: 0 -22px 70px rgba(0, 0, 0, .58);
    --public-shadow-profile: 0 28px 80px rgba(0, 0, 0, .42);

    /* Layout and typography. */
    --radius-xl: 28px;
    --radius-lg: 20px;
    --radius-md: 14px;
    --radius-sm: 10px;
    --font-ui: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-display: Georgia, "Times New Roman", serif;
    --font-body: var(--font-ui);
    --container: 1120px;

    /*
     * Compatibility aliases. Existing page styles keep working while stages
     * D-F migrate them to the semantic contract above.
     */
    --color-black: var(--color-bg-page);
    --color-black-soft: var(--color-bg-soft);
    --color-graphite: var(--color-surface);
    --color-graphite-2: var(--color-surface-elevated);
    --color-line: var(--color-border);
    --color-gold: var(--color-accent);
    --color-gold-light: var(--color-accent-highlight);
    --color-gold-deep: var(--color-accent-strong);
    --color-text: var(--color-text-primary);
    --color-muted: var(--color-text-secondary);
    --color-muted-2: var(--color-text-muted);
    --shadow-gold: var(--shadow-accent);
}

/*
 * Stage E: authenticated workspaces and competition modules.
 *
 * These tokens deliberately live in a separate semantic layer. Existing
 * dashboard, application, Duel and Community Idol styles keep their layout;
 * competition-theme.css only replaces their colour and depth contract.
 */
:root,
:root[data-theme="dark-gold"] {
    --workspace-surface-hero: radial-gradient(circle at 88% 12%, rgba(212, 175, 55, .14), transparent 34%), rgba(8, 8, 7, .96);
    --workspace-surface-panel: rgba(255, 255, 255, .025);
    --workspace-surface-panel-hover: rgba(212, 175, 55, .055);
    --workspace-surface-panel-strong: rgba(10, 10, 9, .94);
    --workspace-surface-accent: rgba(212, 175, 55, .075);
    --workspace-surface-accent-strong: linear-gradient(135deg, rgba(212, 175, 55, .12), rgba(255, 255, 255, .025));
    --workspace-surface-control: rgba(5, 5, 7, .76);
    --workspace-surface-control-readonly: rgba(212, 175, 55, .055);
    --workspace-surface-table-head: rgba(212, 175, 55, .055);
    --workspace-surface-row: linear-gradient(135deg, rgba(255, 255, 255, .026), rgba(255, 255, 255, .008));
    --workspace-surface-row-hover: linear-gradient(135deg, rgba(212, 175, 55, .09), rgba(255, 255, 255, .018));
    --workspace-border-soft: rgba(212, 175, 55, .14);
    --workspace-border: rgba(212, 175, 55, .22);
    --workspace-border-strong: rgba(212, 175, 55, .42);
    --workspace-divider: rgba(255, 255, 255, .08);
    --workspace-shadow-panel: 0 18px 50px rgba(0, 0, 0, .28);
    --workspace-shadow-card: 0 16px 38px rgba(0, 0, 0, .22);
    --workspace-shadow-card-hover: 0 20px 44px rgba(0, 0, 0, .31);
    --workspace-progress-track: rgba(255, 255, 255, .07);
    --workspace-progress-fill: linear-gradient(90deg, #8e5f1e, #d4af37, #fff0bd);
    --workspace-progress-shadow: 0 0 18px rgba(212, 175, 55, .26);
    --workspace-step-surface: #0c0b09;
    --workspace-step-active-text: #211607;
    --workspace-photo-surface: radial-gradient(circle at 50% 12%, rgba(212, 175, 55, .20), #080807 72%);
    --workspace-photo-overlay: linear-gradient(180deg, transparent 58%, rgba(5, 5, 5, .74));
    --workspace-media-control: rgba(0, 0, 0, .72);
    --workspace-vs-surface: radial-gradient(circle, rgba(48, 32, 9, .98), rgba(5, 5, 5, .98));
    --workspace-vs-ring: 0 0 0 7px rgba(5, 5, 5, .82), 0 0 30px rgba(212, 175, 55, .24);
    --workspace-referral-shell: linear-gradient(135deg, rgba(18, 17, 14, .98), rgba(5, 5, 5, .99));
    --workspace-special-surface: linear-gradient(135deg, rgba(105, 14, 42, .92), rgba(52, 7, 24, .94));
    --workspace-special-text: #fff8ee;
    --workspace-special-muted: rgba(255, 239, 191, .78);
    --workspace-neutral-surface: linear-gradient(135deg, rgba(48, 49, 55, .97), rgba(29, 30, 34, .96));
    --workspace-neutral-text: #f3f1ed;
    --workspace-readonly-text: #ffe0a1;
    --workspace-column-text: rgba(214, 199, 160, .72);
    --workspace-accent-number: #fff0bd;
    --workspace-status-idle: rgba(255, 255, 255, .32);
}

:root[data-theme="light-gold"] {
    --workspace-surface-hero: radial-gradient(circle at 88% 12%, rgba(201, 155, 67, .16), transparent 34%), linear-gradient(145deg, rgba(255, 253, 248, .99), rgba(239, 229, 214, .97));
    --workspace-surface-panel: rgba(128, 84, 20, .045);
    --workspace-surface-panel-hover: rgba(128, 84, 20, .095);
    --workspace-surface-panel-strong: rgba(255, 253, 248, .98);
    --workspace-surface-accent: rgba(128, 84, 20, .075);
    --workspace-surface-accent-strong: linear-gradient(135deg, rgba(201, 155, 67, .14), rgba(255, 255, 255, .68));
    --workspace-surface-control: rgba(255, 253, 248, .96);
    --workspace-surface-control-readonly: rgba(128, 84, 20, .075);
    --workspace-surface-table-head: rgba(128, 84, 20, .055);
    --workspace-surface-row: linear-gradient(135deg, rgba(255, 253, 248, .98), rgba(239, 229, 214, .72));
    --workspace-surface-row-hover: linear-gradient(135deg, rgba(201, 155, 67, .15), rgba(255, 253, 248, .92));
    --workspace-border-soft: rgba(128, 84, 20, .18);
    --workspace-border: rgba(128, 84, 20, .28);
    --workspace-border-strong: rgba(128, 84, 20, .48);
    --workspace-divider: rgba(73, 49, 23, .13);
    --workspace-shadow-panel: 0 18px 50px rgba(56, 38, 18, .12);
    --workspace-shadow-card: 0 14px 34px rgba(56, 38, 18, .11);
    --workspace-shadow-card-hover: 0 19px 44px rgba(56, 38, 18, .16);
    --workspace-progress-track: rgba(73, 49, 23, .10);
    --workspace-progress-fill: linear-gradient(90deg, #805414, #c99b43, #ead391);
    --workspace-progress-shadow: 0 0 18px rgba(128, 84, 20, .20);
    --workspace-step-surface: #fffdf8;
    --workspace-step-active-text: #21170a;
    --workspace-photo-surface: radial-gradient(circle at 50% 12%, rgba(212, 175, 55, .20), #100d0a 72%);
    --workspace-photo-overlay: linear-gradient(180deg, transparent 58%, rgba(5, 5, 5, .74));
    --workspace-media-control: rgba(16, 13, 10, .82);
    --workspace-vs-surface: radial-gradient(circle, rgba(82, 55, 17, .98), rgba(16, 13, 10, .99));
    --workspace-vs-ring: 0 0 0 7px rgba(255, 253, 248, .88), 0 0 30px rgba(128, 84, 20, .24);
    --workspace-referral-shell: linear-gradient(145deg, rgba(255, 253, 248, .995), rgba(239, 229, 214, .985));
    --workspace-special-surface: linear-gradient(135deg, rgba(105, 14, 42, .96), rgba(52, 7, 24, .95));
    --workspace-special-text: #fff8ee;
    --workspace-special-muted: rgba(255, 239, 191, .82);
    --workspace-neutral-surface: linear-gradient(135deg, rgba(66, 67, 73, .98), rgba(37, 38, 42, .97));
    --workspace-neutral-text: #f8f5ef;
    --workspace-readonly-text: #68400d;
    --workspace-column-text: #75695c;
    --workspace-accent-number: #68400d;
    --workspace-status-idle: rgba(99, 88, 77, .56);
}

:root[data-theme="light-gold"] {
    color-scheme: light;

    --color-bg-page: #f6f0e6;
    --color-bg-soft: #efe5d6;
    --color-surface: #fffdf8;
    --color-surface-elevated: #fff9ee;
    --color-surface-card-start: rgba(255, 253, 248, .98);
    --color-surface-card-end: rgba(246, 238, 226, .96);
    --color-surface-glass: rgba(72, 49, 25, .025);
    --color-surface-glass-medium: rgba(128, 84, 20, .045);
    --color-surface-glass-hover: rgba(128, 84, 20, .07);
    --color-surface-glass-strong: rgba(128, 84, 20, .09);
    --color-surface-accent-soft: rgba(128, 84, 20, .07);
    --color-surface-accent: rgba(128, 84, 20, .10);

    --color-text-primary: #251e17;
    --color-text-secondary: #63584d;
    --color-text-muted: #706456;
    --color-text-inverse: #fff8e9;
    --color-text-on-accent: #21170a;
    --color-placeholder: #706456;
    --color-disabled-text: #706456;

    --color-selection-surface: #c99b43;
    --color-selection-text: #21170a;
    --color-autofill-surface: #fffdf8;

    --color-accent: #805414;
    --color-accent-highlight: #805414;
    --color-accent-strong: #68400d;
    --color-accent-text: #805414;
    --color-accent-text-strong: #68400d;
    --color-accent-soft: rgba(128, 84, 20, .10);
    --color-accent-softer: rgba(128, 84, 20, .07);
    --color-accent-glow: rgba(128, 84, 20, .14);

    --color-border-subtle: rgba(73, 49, 23, .13);
    --color-border: rgba(128, 84, 20, .28);
    --color-border-strong: rgba(128, 84, 20, .48);
    --color-border-control: rgba(73, 49, 23, .18);
    --color-border-control-hover: rgba(128, 84, 20, .48);
    --color-focus-ring: #8a601e;

    --gradient-button-primary: linear-gradient(135deg, #ead391, #c99b43 48%, #a97624);
    --shadow-button-primary: 0 10px 28px rgba(86, 55, 18, .18);
    --shadow-button-primary-hover: 0 0 0 3px rgba(138, 96, 30, .20), 0 12px 30px rgba(86, 55, 18, .18);
    --color-control-surface: rgba(72, 49, 25, .025);
    --color-control-surface-hover: rgba(128, 84, 20, .10);
    --color-provider-badge-surface: rgba(255, 255, 255, .82);

    --color-success: #176b3a;
    --color-success-surface: rgba(23, 107, 58, .10);
    --color-success-border: rgba(23, 107, 58, .34);
    --color-warning: #805414;
    --color-warning-surface: rgba(128, 84, 20, .10);
    --color-warning-border: rgba(128, 84, 20, .34);
    --color-danger: #9c3045;
    --color-danger-surface: rgba(156, 48, 69, .09);
    --color-danger-border: rgba(156, 48, 69, .34);
    --color-info: #245f99;
    --color-info-surface: rgba(36, 95, 153, .09);
    --color-info-border: rgba(36, 95, 153, .34);

    --color-special-burgundy: #741f32;
    --color-special-burgundy-text: #fff0bd;
    --color-special-burgundy-border: rgba(116, 31, 50, .38);
    --shadow-special-burgundy: 0 8px 20px rgba(86, 34, 45, .18);

    --color-nav-surface: rgba(255, 253, 248, .94);
    --color-nav-surface-menu: rgba(255, 253, 248, .97);
    --color-nav-surface-contrast: rgba(255, 253, 248, .99);
    --color-nav-border: rgba(73, 49, 23, .16);
    --color-nav-border-scrolled: rgba(128, 84, 20, .24);
    --color-nav-highlight: rgba(255, 255, 255, .72);
    --color-nav-item-text: rgba(69, 57, 45, .76);
    --color-nav-item-border: rgba(73, 49, 23, .10);
    --color-nav-link-border-hover: rgba(128, 84, 20, .16);
    --color-nav-item-surface: rgba(128, 84, 20, .035);
    --color-nav-item-surface-hover: rgba(128, 84, 20, .085);
    --color-nav-control-surface: rgba(128, 84, 20, .045);
    --color-nav-language-surface: rgba(72, 49, 25, .055);
    --color-nav-active-border: rgba(128, 84, 20, .28);
    --color-nav-active-surface: rgba(128, 84, 20, .09);
    --color-nav-contrast-border: rgba(128, 84, 20, .58);
    --color-bottom-nav-hover-border: rgba(128, 84, 20, .14);
    --color-bottom-nav-active-border: rgba(128, 84, 20, .30);
    --gradient-nav-surface: linear-gradient(135deg, rgba(255, 253, 248, .90), rgba(239, 229, 214, .82));
    --gradient-nav-surface-scrolled: linear-gradient(135deg, rgba(255, 253, 248, .96), rgba(239, 229, 214, .91));
    --gradient-menu-surface: linear-gradient(145deg, rgba(255, 253, 248, .96), rgba(239, 229, 214, .92));
    --gradient-bottom-nav-surface: linear-gradient(135deg, rgba(255, 253, 248, .95), rgba(239, 229, 214, .88));
    --gradient-nav-overlay: radial-gradient(circle at 14% -45%, rgba(255, 255, 255, .72), transparent 42%), linear-gradient(90deg, transparent, rgba(128, 84, 20, .07), transparent);
    --gradient-bottom-nav-overlay: radial-gradient(circle at 50% -80%, rgba(255, 255, 255, .84), transparent 48%), linear-gradient(90deg, transparent, rgba(128, 84, 20, .06), transparent);
    --gradient-nav-accent-line: linear-gradient(90deg, transparent, rgba(128, 84, 20, .42), transparent);
    --gradient-bottom-nav-indicator: linear-gradient(90deg, transparent, #805414, transparent);
    --gradient-bottom-nav-active: radial-gradient(circle at 50% 8%, rgba(201, 155, 67, .18), transparent 62%), linear-gradient(180deg, rgba(128, 84, 20, .10), rgba(128, 84, 20, .035));
    --shadow-nav: 0 12px 42px rgba(56, 38, 18, .12), 0 1px 0 rgba(255, 255, 255, .72), inset 0 1px 0 rgba(255, 255, 255, .78), inset 0 -1px 0 rgba(128, 84, 20, .07);
    --shadow-nav-scrolled: 0 16px 48px rgba(56, 38, 18, .16), 0 1px 0 rgba(255, 255, 255, .76), inset 0 1px 0 rgba(255, 255, 255, .82), inset 0 -1px 0 rgba(128, 84, 20, .10);
    --shadow-menu: 0 20px 52px rgba(56, 38, 18, .16), inset 0 1px 0 rgba(255, 255, 255, .76);
    --shadow-bottom-nav: 0 -12px 34px rgba(56, 38, 18, .10), 0 18px 48px rgba(56, 38, 18, .14), 0 0 0 1px rgba(128, 84, 20, .05), inset 0 1px 0 rgba(255, 255, 255, .78), inset 0 -1px 0 rgba(128, 84, 20, .08);
    --shadow-brand-text: 0 0 20px rgba(128, 84, 20, .14);
    --shadow-nav-control-active: 0 3px 12px rgba(56, 38, 18, .10), inset 0 1px 0 rgba(255, 255, 255, .72);
    --shadow-bottom-nav-indicator: 0 0 14px rgba(128, 84, 20, .36);
    --shadow-bottom-nav-active: 0 8px 22px rgba(56, 38, 18, .10), inset 0 1px 0 rgba(255, 255, 255, .72);
    --shadow-bottom-nav-icon: drop-shadow(0 0 7px rgba(128, 84, 20, .22));

    --color-badge-outline: #fffdf8;
    --color-badge-text: #21170a;
    --color-badge-surface: #c99b43;
    --shadow-badge: 0 0 0 1px rgba(128, 84, 20, .24), 0 6px 14px rgba(56, 38, 18, .18);

    --background-page: radial-gradient(circle at 20% 10%, rgba(201, 155, 67, .12), transparent 28rem), radial-gradient(circle at 80% 30%, rgba(128, 84, 20, .08), transparent 30rem), var(--color-bg-page);
    --background-card: linear-gradient(180deg, var(--color-surface-card-start), var(--color-surface-card-end));
    --background-card-accent: radial-gradient(circle at 85% 0%, rgba(201, 155, 67, .15), transparent 14rem);
    --background-site-glow: radial-gradient(circle, rgba(201, 155, 67, .17), transparent 65%);
    --color-backdrop: rgba(37, 30, 23, .58);
    --color-image-overlay-soft: rgba(0, 0, 0, .24);
    --color-image-overlay: rgba(5, 5, 5, .75);
    --color-image-surface: #100d0a;
    --color-image-text: #fff8e9;
    --color-image-text-secondary: #d8cbb7;
    --color-image-accent: #ffe0a1;
    --shadow-accent: 0 0 36px rgba(128, 84, 20, .13);
    --shadow-card: 0 18px 50px rgba(56, 38, 18, .12);
    --shadow-soft: 0 12px 36px rgba(56, 38, 18, .10);
    --filter-logo-watermark: drop-shadow(0 0 28px rgba(128, 84, 20, .22));
    --filter-hero-image: drop-shadow(0 0 28px rgba(128, 84, 20, .18)) drop-shadow(0 18px 32px rgba(56, 38, 18, .22));

    /* Public-page surfaces: champagne paper, warm depth and readable gold. */
    --public-surface-hero: radial-gradient(circle at 86% 20%, rgba(201, 155, 67, .17), transparent 31%), linear-gradient(135deg, rgba(255, 253, 248, .99), rgba(239, 229, 214, .98));
    --public-surface-featured: radial-gradient(circle at 92% 8%, rgba(201, 155, 67, .15), transparent 32%), rgba(255, 253, 248, .98);
    --public-surface-subtle: linear-gradient(135deg, rgba(201, 155, 67, .12), rgba(255, 255, 255, .58));
    --public-surface-item: rgba(128, 84, 20, .045);
    --public-surface-item-hover: rgba(128, 84, 20, .10);
    --public-surface-control: rgba(255, 253, 248, .92);
    --public-surface-control-focus: rgba(201, 155, 67, .12);
    --public-surface-sheet: radial-gradient(circle at 12% 0%, rgba(201, 155, 67, .17), transparent 31%), linear-gradient(145deg, rgba(255, 253, 248, .995), rgba(239, 229, 214, .995));
    --public-surface-tabs: rgba(255, 253, 248, .88);
    --public-surface-table-head: rgba(128, 84, 20, .055);
    --public-surface-row-winner: linear-gradient(90deg, rgba(116, 31, 50, .12), rgba(116, 31, 50, .035));
    --public-surface-row-finalist: rgba(201, 155, 67, .11);
    --public-surface-profile: radial-gradient(circle at 76% 14%, rgba(201, 155, 67, .15), transparent 34%), linear-gradient(180deg, rgba(255, 253, 248, .995), rgba(239, 229, 214, .985));
    --public-surface-catalog-card: radial-gradient(circle at 13% 20%, rgba(201, 155, 67, .13), transparent 33%), rgba(255, 253, 248, .98);
    --public-surface-filter-actions: linear-gradient(180deg, rgba(255, 253, 248, 0), rgba(255, 253, 248, .97) 24%);
    --public-surface-editorial: linear-gradient(90deg, rgba(116, 31, 50, .055), transparent 30%, transparent 70%, rgba(116, 31, 50, .055)), rgba(255, 253, 248, .92);
    --public-border-soft: rgba(128, 84, 20, .18);
    --public-border-medium: rgba(128, 84, 20, .30);
    --public-border-strong: rgba(128, 84, 20, .48);
    --public-divider: rgba(73, 49, 23, .13);
    --public-text-rich: #251e17;
    --public-text-body: #63584d;
    --public-text-editorial: #63584d;
    --public-text-soft: rgba(99, 88, 77, .82);
    --public-text-number: rgba(104, 64, 13, .54);
    --public-control-option-text: #251e17;
    --public-control-option-surface: #fffdf8;
    --public-shadow-panel: 0 18px 55px rgba(56, 38, 18, .12);
    --public-shadow-card: 0 14px 34px rgba(56, 38, 18, .12);
    --public-shadow-card-hover: 0 19px 44px rgba(56, 38, 18, .16);
    --public-shadow-sheet: 0 -22px 70px rgba(56, 38, 18, .18);
    --public-shadow-profile: 0 28px 80px rgba(56, 38, 18, .14);
}

/* Stage F: administrative workspace semantics. */
:root,
:root[data-theme="dark-gold"] {
    --admin-surface-shell: linear-gradient(180deg, rgba(22, 20, 16, .94), rgba(8, 8, 7, .92));
    --admin-surface-topbar: radial-gradient(circle at 90% 5%, rgba(218, 169, 82, .12), transparent 34%), linear-gradient(145deg, rgba(20, 18, 14, .98), rgba(7, 7, 6, .98));
    --admin-surface-panel: rgba(255, 255, 255, .025);
    --admin-surface-panel-hover: rgba(218, 169, 82, .07);
    --admin-surface-control: rgba(0, 0, 0, .28);
    --admin-surface-control-focus: rgba(218, 169, 82, .045);
    --admin-surface-table-head: rgba(255, 255, 255, .03);
    --admin-surface-row-hover: rgba(218, 169, 82, .045);
    --admin-surface-row-selected: rgba(218, 169, 82, .075);
    --admin-surface-code: rgba(0, 0, 0, .32);
    --admin-surface-accent: rgba(218, 169, 82, .08);
    --admin-surface-accent-strong: rgba(218, 169, 82, .13);
    --admin-surface-final: radial-gradient(circle at 86% 8%, rgba(218, 169, 82, .14), transparent 34%), linear-gradient(145deg, rgba(74, 8, 28, .46), rgba(8, 7, 7, .96));
    --admin-surface-season: radial-gradient(circle at 92% 12%, rgba(212, 175, 55, .11), transparent 28%), linear-gradient(135deg, rgba(18, 16, 11, .98), rgba(7, 7, 6, .98));
    --admin-surface-thumbnail: radial-gradient(circle, rgba(218, 169, 82, .18), rgba(0, 0, 0, .35));
    --admin-border-soft: rgba(218, 169, 82, .14);
    --admin-border: rgba(218, 169, 82, .24);
    --admin-border-strong: rgba(218, 169, 82, .48);
    --admin-divider: rgba(218, 169, 82, .13);
    --admin-text-heading: #ffe0a1;
    --admin-text-link: #ffe0a1;
    --admin-text-code: #ffe0a1;
    --admin-text-on-gold: #0a0906;
    --admin-neutral-text: #c9c0aa;
    --admin-neutral-surface: rgba(190, 181, 158, .05);
    --admin-neutral-border: rgba(190, 181, 158, .25);
    --admin-shadow-panel: 0 18px 52px rgba(0, 0, 0, .30);
    --admin-shadow-sticky: 0 15px 45px rgba(0, 0, 0, .55);
    --admin-shadow-active: 0 0 26px rgba(212, 175, 55, .08);
}

:root[data-theme="light-gold"] {
    --admin-surface-shell: linear-gradient(180deg, rgba(255, 253, 248, .99), rgba(242, 233, 218, .97));
    --admin-surface-topbar: radial-gradient(circle at 90% 5%, rgba(201, 155, 67, .17), transparent 34%), linear-gradient(145deg, rgba(255, 253, 248, .99), rgba(239, 229, 214, .98));
    --admin-surface-panel: rgba(128, 84, 20, .045);
    --admin-surface-panel-hover: rgba(128, 84, 20, .095);
    --admin-surface-control: rgba(255, 253, 248, .98);
    --admin-surface-control-focus: rgba(201, 155, 67, .12);
    --admin-surface-table-head: rgba(128, 84, 20, .075);
    --admin-surface-row-hover: rgba(128, 84, 20, .065);
    --admin-surface-row-selected: rgba(201, 155, 67, .14);
    --admin-surface-code: rgba(37, 30, 23, .96);
    --admin-surface-accent: rgba(128, 84, 20, .08);
    --admin-surface-accent-strong: rgba(201, 155, 67, .16);
    --admin-surface-final: radial-gradient(circle at 86% 8%, rgba(201, 155, 67, .18), transparent 34%), linear-gradient(145deg, rgba(255, 253, 248, .99), rgba(239, 229, 214, .98));
    --admin-surface-season: radial-gradient(circle at 92% 12%, rgba(201, 155, 67, .16), transparent 28%), linear-gradient(135deg, rgba(255, 253, 248, .99), rgba(239, 229, 214, .98));
    --admin-surface-thumbnail: radial-gradient(circle, rgba(201, 155, 67, .22), rgba(239, 229, 214, .82));
    --admin-border-soft: rgba(128, 84, 20, .18);
    --admin-border: rgba(128, 84, 20, .30);
    --admin-border-strong: rgba(128, 84, 20, .50);
    --admin-divider: rgba(73, 49, 23, .13);
    --admin-text-heading: #68400d;
    --admin-text-link: #68400d;
    --admin-text-code: #fff0bd;
    --admin-text-on-gold: #21170a;
    --admin-neutral-text: #63584d;
    --admin-neutral-surface: rgba(99, 88, 77, .07);
    --admin-neutral-border: rgba(99, 88, 77, .24);
    --admin-shadow-panel: 0 18px 52px rgba(56, 38, 18, .12);
    --admin-shadow-sticky: 0 15px 45px rgba(56, 38, 18, .18);
    --admin-shadow-active: 0 0 0 3px rgba(138, 96, 30, .12), 0 12px 28px rgba(56, 38, 18, .10);
}
