/* Seasonal controls start hidden; theme.js reveals the current month's holidays and today's birthdays. */
body .header-actions .holiday-toggle {
  display: inline-grid; place-items: center; flex: 0 0 40px; width: 40px;
  min-height: 40px; padding: 0; border: 1px solid transparent; border-radius: 12px;
  background: transparent; font-size: 24px; line-height: 1; cursor: pointer; box-shadow: none;
}
body .header-actions .holiday-toggle[hidden] { display: none !important; }
body .header-actions .holiday-toggle:hover {
  background: var(--et-control-hover); border-color: var(--et-green-dark); transform: none;
}
body .header-actions .holiday-toggle:focus-visible {
  outline: 3px solid var(--et-green-dark); outline-offset: 3px;
}
body .header-actions .holiday-toggle[aria-pressed="true"] {
  background: var(--holiday-soft); border-color: var(--holiday-accent);
  box-shadow: 0 0 18px color-mix(in srgb, var(--holiday-accent) 18%, transparent);
}

:root[data-holiday="halloween"] {
  --holiday-accent: #ff982e;
  --holiday-secondary: #bd8aff;
  --holiday-background: #170921;
  --holiday-surface: #2e153b;
  --holiday-control: #17121f;
  --holiday-border: #703e83;
  --holiday-muted: #c6b6cc;
  --holiday-ink: #fff1e6;
  --holiday-soft: #38231b;
  --holiday-ornament: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23d0b7ef%27%20stroke-width%3D%271.5%27%3E%3Cpath%20d%3D%27M80%200H0M80%200%206%2030M80%200%2025%2055M80%200%2050%2074M80%200V80M20%200Q24%2019%2025%2022Q34%2027%2035%2045Q48%2046%2057%2057Q63%2055%2080%2060M40%200Q41%2010%2044%2014Q48%2018%2050%2030Q59%2029%2064%2037Q71%2036%2080%2040M60%200Q60%205%2062%207Q66%208%2065%2015Q72%2014%2073%2019Q76%2019%2080%2020%27%2F%3E%3C%2Fsvg%3E");
  --holiday-scene: url("/assets/holiday-halloween.svg?v=4409cce37b9d");
  --holiday-pattern: none;
}

:root[data-holiday="thanksgiving"] {
  --holiday-accent: #ffc34d;
  --holiday-secondary: #ff9258;
  --holiday-background: #1a0d06;
  --holiday-surface: #3b2414;
  --holiday-control: #1e1710;
  --holiday-border: #84562c;
  --holiday-muted: #cfbca5;
  --holiday-ink: #fff3df;
  --holiday-soft: #3e2d1b;
  --holiday-ornament: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23da9c70%27%20stroke-width%3D%271.5%27%3E%3Cpath%20d%3D%27M18%2062Q6%2035%2042%2014Q60%2048%2018%2062ZM18%2062%2042%2014M25%2046%2016%2034M31%2033%2045%2035M53%2067Q46%2052%2069%2038Q79%2061%2053%2067M53%2067%2069%2038%27%2F%3E%3C%2Fsvg%3E");
  --holiday-scene: url("/assets/holiday-thanksgiving.svg?v=6477587a6a6f");
  --holiday-pattern: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23da9c70%27%20stroke-width%3D%271.5%27%20opacity%3D%27.1%27%3E%3Cpath%20d%3D%27M18%2062Q6%2035%2042%2014Q60%2048%2018%2062ZM18%2062%2042%2014M25%2046%2016%2034M31%2033%2045%2035M53%2067Q46%2052%2069%2038Q79%2061%2053%2067M53%2067%2069%2038%27%2F%3E%3C%2Fsvg%3E");
}

:root[data-holiday="christmas"] {
  --holiday-accent: #ff7382;
  --holiday-secondary: #67e8a0;
  --holiday-background: #061e17;
  --holiday-surface: #103c2c;
  --holiday-control: #0c211a;
  --holiday-border: #347f58;
  --holiday-muted: #b4cec0;
  --holiday-ink: #f2fff7;
  --holiday-soft: #38252b;
  --holiday-ornament: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23b4e3cc%27%20stroke-width%3D%271.5%27%3E%3Cpath%20d%3D%27M40%208V72M12%2024%2068%2056M12%2056%2068%2024M31%2015%2040%2024%2049%2015M31%2065%2040%2056%2049%2065M13%2035%2025%2033%2023%2020M57%2060%2055%2047%2067%2045M13%2045%2025%2047%2023%2060M57%2020%2055%2033%2067%2035%27%2F%3E%3C%2Fsvg%3E");
  --holiday-scene: url("/assets/holiday-christmas.svg?v=4db8b0942f08");
  --holiday-pattern: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23b4e3cc%27%20stroke-width%3D%271.5%27%20opacity%3D%27.1%27%3E%3Cpath%20d%3D%27M40%208V72M12%2024%2068%2056M12%2056%2068%2024M31%2015%2040%2024%2049%2015M31%2065%2040%2056%2049%2065M13%2035%2025%2033%2023%2020M57%2060%2055%2047%2067%2045M13%2045%2025%2047%2023%2060M57%2020%2055%2033%2067%2035%27%2F%3E%3C%2Fsvg%3E");
}

:root[data-holiday="new-year"] {
  --holiday-accent: #ffe16b;
  --holiday-secondary: #ba96ff;
  --holiday-background: #0c0b27;
  --holiday-surface: #26204c;
  --holiday-control: #11172b;
  --holiday-border: #655094;
  --holiday-muted: #c0c0d5;
  --holiday-ink: #fff9e8;
  --holiday-soft: #373126;
  --holiday-ornament: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23c4a7ff%27%20stroke-width%3D%271.5%27%3E%3Cpath%20d%3D%27M40%207V24M40%2056V73M7%2040H24M56%2040H73M16%2016%2028%2028M52%2052%2064%2064M16%2064%2028%2052M52%2028%2064%2016%27%2F%3E%3Ccircle%20cx%3D%2740%27%20cy%3D%2740%27%20r%3D%276%27%2F%3E%3Ccircle%20cx%3D%2710%27%20cy%3D%2714%27%20r%3D%272%27%2F%3E%3Ccircle%20cx%3D%2767%27%20cy%3D%2769%27%20r%3D%272%27%2F%3E%3C%2Fsvg%3E");
  --holiday-scene: url("/assets/holiday-new-year.svg?v=02ea5376da7c");
  --holiday-pattern: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23c4a7ff%27%20stroke-width%3D%271.5%27%20opacity%3D%27.1%27%3E%3Cpath%20d%3D%27M40%207V24M40%2056V73M7%2040H24M56%2040H73M16%2016%2028%2028M52%2052%2064%2064M16%2064%2028%2052M52%2028%2064%2016%27%2F%3E%3Ccircle%20cx%3D%2740%27%20cy%3D%2740%27%20r%3D%276%27%2F%3E%3Ccircle%20cx%3D%2710%27%20cy%3D%2714%27%20r%3D%272%27%2F%3E%3Ccircle%20cx%3D%2767%27%20cy%3D%2769%27%20r%3D%272%27%2F%3E%3C%2Fsvg%3E");
}

:root[data-holiday="st-patricks"] {
  --holiday-accent: #73f2a0;
  --holiday-secondary: #ffdf69;
  --holiday-background: #051e12;
  --holiday-surface: #123d25;
  --holiday-control: #0c1f15;
  --holiday-border: #348854;
  --holiday-muted: #b6cfbd;
  --holiday-ink: #f2fff4;
  --holiday-soft: #1a3c28;
  --holiday-ornament: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23f0d479%27%20stroke-width%3D%271.5%27%3E%3Cpath%20d%3D%27M40%2040C13%2047%206%2020%2022%2015C31%2011%2039%2018%2040%2026C41%2018%2049%2011%2058%2015C74%2020%2067%2047%2040%2040C67%2033%2074%2060%2058%2065C49%2069%2041%2062%2040%2054C39%2062%2031%2069%2022%2065C6%2060%2013%2033%2040%2040ZM40%2040Q47%2068%2067%2073%27%2F%3E%3C%2Fsvg%3E");
  --holiday-scene: url("/assets/holiday-st-patricks.svg?v=85cdb5378346");
  --holiday-pattern: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23f0d479%27%20stroke-width%3D%271.5%27%20opacity%3D%27.1%27%3E%3Cpath%20d%3D%27M40%2040C13%2047%206%2020%2022%2015C31%2011%2039%2018%2040%2026C41%2018%2049%2011%2058%2015C74%2020%2067%2047%2040%2040C67%2033%2074%2060%2058%2065C49%2069%2041%2062%2040%2054C39%2062%2031%2069%2022%2065C6%2060%2013%2033%2040%2040ZM40%2040Q47%2068%2067%2073%27%2F%3E%3C%2Fsvg%3E");
}

:root[data-holiday="earth-day"] {
  --holiday-accent: #7fe8b0;
  --holiday-secondary: #69d7ff;
  --holiday-background: #051e22;
  --holiday-surface: #103b3e;
  --holiday-control: #0b2420;
  --holiday-border: #347f85;
  --holiday-muted: #b0d0ca;
  --holiday-ink: #effff8;
  --holiday-soft: #1d4235;
  --holiday-ornament: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%238acaf0%27%20stroke-width%3D%271.5%27%3E%3Ccircle%20cx%3D%2740%27%20cy%3D%2740%27%20r%3D%2729%27%2F%3E%3Cellipse%20cx%3D%2740%27%20cy%3D%2740%27%20rx%3D%2714%27%20ry%3D%2729%27%2F%3E%3Cpath%20d%3D%27M11%2040H69M17%2023Q40%2034%2063%2023M17%2057Q40%2046%2063%2057%27%2F%3E%3C%2Fsvg%3E");
  --holiday-scene: url("/assets/holiday-earth-day.svg?v=8da92ca5c973");
  --holiday-pattern: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%238acaf0%27%20stroke-width%3D%271.5%27%20opacity%3D%27.1%27%3E%3Ccircle%20cx%3D%2740%27%20cy%3D%2740%27%20r%3D%2729%27%2F%3E%3Cellipse%20cx%3D%2740%27%20cy%3D%2740%27%20rx%3D%2714%27%20ry%3D%2729%27%2F%3E%3Cpath%20d%3D%27M11%2040H69M17%2023Q40%2034%2063%2023M17%2057Q40%2046%2063%2057%27%2F%3E%3C%2Fsvg%3E");
}

:root[data-holiday="cinco-de-mayo"] {
  --holiday-accent: #6ff0bb;
  --holiday-secondary: #ff946e;
  --holiday-background: #240e1d;
  --holiday-surface: #452139;
  --holiday-control: #21171c;
  --holiday-border: #9b4b69;
  --holiday-muted: #d6b9c2;
  --holiday-ink: #fff2e9;
  --holiday-soft: #1d4035;
  --holiday-ornament: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23ffb083%27%20stroke-width%3D%271.5%27%3E%3Cpath%20d%3D%27M0%2010Q40%2030%2080%2010M9%2015V42L20%2050L31%2042V21M46%2021V42L58%2050L70%2042V15M16%2024H24M16%2032H24M54%2026H62M54%2034H62%27%2F%3E%3C%2Fsvg%3E");
  --holiday-scene: url("/assets/holiday-cinco-de-mayo.svg?v=03c68756a89d");
  --holiday-pattern: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23ffb083%27%20stroke-width%3D%271.5%27%20opacity%3D%27.1%27%3E%3Cpath%20d%3D%27M0%2010Q40%2030%2080%2010M9%2015V42L20%2050L31%2042V21M46%2021V42L58%2050L70%2042V15M16%2024H24M16%2032H24M54%2026H62M54%2034H62%27%2F%3E%3C%2Fsvg%3E");
}

:root[data-holiday="memorial-day"] {
  --holiday-accent: #f9df9a;
  --holiday-secondary: #9cbde9;
  --holiday-background: #09172c;
  --holiday-surface: #1a3454;
  --holiday-control: #141e2d;
  --holiday-border: #496c95;
  --holiday-muted: #bfccd9;
  --holiday-ink: #fffaf0;
  --holiday-soft: #38332c;
  --holiday-ornament: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23b7c6dd%27%20stroke-width%3D%271.5%27%3E%3Cpath%20d%3D%27M40%2011%2047%2031%2068%2032%2051%2045%2056%2066%2040%2053%2024%2066%2029%2045%2012%2032%2033%2031Z%27%2F%3E%3C%2Fsvg%3E");
  --holiday-scene: url("/assets/holiday-memorial-day.svg?v=7ffc9378021b");
  --holiday-pattern: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23b7c6dd%27%20stroke-width%3D%271.5%27%20opacity%3D%27.1%27%3E%3Cpath%20d%3D%27M40%2011%2047%2031%2068%2032%2051%2045%2056%2066%2040%2053%2024%2066%2029%2045%2012%2032%2033%2031Z%27%2F%3E%3C%2Fsvg%3E");
}

:root[data-holiday="veterans-day"] {
  --holiday-accent: #ffda80;
  --holiday-secondary: #e8a09c;
  --holiday-background: #111a2c;
  --holiday-surface: #293651;
  --holiday-control: #182132;
  --holiday-border: #72678a;
  --holiday-muted: #c4cbd8;
  --holiday-ink: #fff7e6;
  --holiday-soft: #3b3224;
  --holiday-ornament: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23d8a3a3%27%20stroke-width%3D%271.5%27%3E%3Cpath%20d%3D%27M23%207%2033%2033H47L57%207M30%207%2038%2029M50%207%2042%2029%27%2F%3E%3Ccircle%20cx%3D%2740%27%20cy%3D%2749%27%20r%3D%2720%27%2F%3E%3Cpath%20d%3D%27M40%2036%2044%2045%2054%2046%2046%2052%2049%2061%2040%2055%2031%2061%2034%2052%2026%2046%2036%2045Z%27%2F%3E%3C%2Fsvg%3E");
  --holiday-scene: url("/assets/holiday-veterans-day.svg?v=84871b9ba92c");
  --holiday-pattern: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23d8a3a3%27%20stroke-width%3D%271.5%27%20opacity%3D%27.1%27%3E%3Cpath%20d%3D%27M23%207%2033%2033H47L57%207M30%207%2038%2029M50%207%2042%2029%27%2F%3E%3Ccircle%20cx%3D%2740%27%20cy%3D%2749%27%20r%3D%2720%27%2F%3E%3Cpath%20d%3D%27M40%2036%2044%2045%2054%2046%2046%2052%2049%2061%2040%2055%2031%2061%2034%2052%2026%2046%2036%2045Z%27%2F%3E%3C%2Fsvg%3E");
}

:root[data-holiday="independence-day"] {
  --holiday-accent: #91c2ff;
  --holiday-secondary: #ff7b8c;
  --holiday-background: #071b38;
  --holiday-surface: #143861;
  --holiday-control: #101e33;
  --holiday-border: #476fa5;
  --holiday-muted: #bdcde4;
  --holiday-ink: #f5f9ff;
  --holiday-soft: #203c5e;
  --holiday-ornament: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23ffa5ab%27%20stroke-width%3D%271.5%27%3E%3Cpath%20d%3D%27M0%2023H80M0%2040H80M0%2057H80%27%2F%3E%3Cpath%20d%3D%27M19%206%2023%2016%2034%2017%2026%2024%2029%2035%2019%2029%209%2035%2012%2024%204%2017%2015%2016Z%27%2F%3E%3C%2Fsvg%3E");
  --holiday-scene: url("/assets/holiday-independence-day.svg?v=63b84ab00d6e");
  --holiday-pattern: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2080%2080%27%20fill%3D%27none%27%20stroke%3D%27%23ffa5ab%27%20stroke-width%3D%271.5%27%20opacity%3D%27.1%27%3E%3Cpath%20d%3D%27M0%2023H80M0%2040H80M0%2057H80%27%2F%3E%3Cpath%20d%3D%27M19%206%2023%2016%2034%2017%2026%2024%2029%2035%2019%2029%209%2035%2012%2024%204%2017%2015%2016Z%27%2F%3E%3C%2Fsvg%3E");
}

/* Override both public and authenticated shell tokens, retaining semantic status colors. */
:root[data-theme="dark"][data-holiday]:not([data-holiday=""]),
:root[data-theme="dark"][data-holiday]:not([data-holiday=""]) body {
  --et-green: var(--holiday-accent);
  --et-green-bright: var(--holiday-accent);
  --et-green-dark: var(--holiday-accent);
  --et-green-soft: var(--holiday-soft);
  --et-ink: var(--holiday-ink);
  --et-slate: var(--holiday-secondary);
  --et-muted: var(--holiday-muted);
  --et-surface: var(--holiday-surface);
  --et-background: var(--holiday-background);
  --et-border: var(--holiday-border);
  --et-border-blue: var(--holiday-border);
  --et-control: var(--holiday-control);
  --et-control-hover: var(--holiday-surface);
  --et-control-hover-border: var(--holiday-accent);
  --et-divider: var(--holiday-border);
  --et-footer-copy: var(--holiday-ink);
  --et-footer-muted: var(--holiday-muted);
  --et-header-border: var(--holiday-border);
  --et-label: var(--holiday-ink);
  --et-secondary: var(--holiday-muted);
  --et-soft-border: var(--holiday-border);
  --et-soft-surface: var(--holiday-soft);
  --et-subtle: var(--holiday-muted);
  --et-table-header: var(--holiday-surface);
  --et-tertiary: var(--holiday-muted);
  --et-user: var(--holiday-ink);
  --wb-accent: var(--holiday-accent);
  --wb-accent-ink: #10151b;
  --field-bg: var(--holiday-background);
  --field-paper: var(--holiday-surface);
  --field-card: var(--holiday-surface);
  --field-ink: var(--holiday-ink);
  --field-copy: var(--holiday-muted);
  --field-muted: var(--holiday-muted);
  --field-line: var(--holiday-border);
  --field-green: var(--holiday-accent);
  --field-green-dark: var(--holiday-accent);
  --field-lime: var(--holiday-secondary);
  --field-upload: var(--holiday-soft);
  --field-upload-ink: var(--holiday-ink);
  --field-directory: var(--holiday-control);
  --field-directory-line: var(--holiday-border);
}
:root[data-theme="dark"][data-holiday]:not([data-holiday=""]) body {
  background: radial-gradient(ellipse at 0 0, color-mix(in srgb, var(--holiday-accent) 9%, transparent), transparent 36rem),
    radial-gradient(ellipse at 100% 30%, color-mix(in srgb, var(--holiday-secondary) 10%, transparent), transparent 42rem), var(--holiday-background);
  background-attachment: fixed;
}
:root[data-holiday]:not([data-holiday=""]) .site-header {
  background: linear-gradient(100deg, color-mix(in srgb, var(--holiday-accent) 9%, var(--holiday-surface)), var(--holiday-surface) 60%);
  border-bottom-color: color-mix(in srgb, var(--holiday-accent) 55%, var(--holiday-border));
}
:root[data-holiday]:not([data-holiday=""]) .site-header::after {
  content: ""; position: absolute; inset: 0 0 auto auto; width: 64px; height: 64px;
  pointer-events: none; opacity: .3; background: var(--holiday-ornament) no-repeat;
}
:root[data-holiday="halloween"] .brand img { filter: sepia(.65) saturate(1.3) hue-rotate(335deg); }
/* Keep the support handoff in the seasonal palette as well. */
:root[data-holiday]:not([data-holiday=""]) .field-upload {
  background: linear-gradient(145deg, var(--holiday-soft), var(--holiday-surface));
}
@media (max-width: 640px) {
  :root[data-holiday]:not([data-holiday=""]) .site-header::after { display: none; }
}

/* Fuller seasonal treatment. Illustrations stay behind content and never capture input. */
:root[data-theme="dark"][data-holiday]:not([data-holiday=""]) body {
  background-image: var(--holiday-pattern),
    radial-gradient(ellipse at 4% 0, color-mix(in srgb, var(--holiday-accent) 21%, transparent), transparent 42rem),
    radial-gradient(ellipse at 100% 28%, color-mix(in srgb, var(--holiday-secondary) 21%, transparent), transparent 44rem);
  background-size: 240px 240px, auto, auto;
  background-repeat: repeat, no-repeat, no-repeat;
  background-color: var(--holiday-background);
}
:root[data-holiday]:not([data-holiday=""]) .site-header {
  border-bottom: 3px solid var(--holiday-accent);
  background: linear-gradient(110deg, color-mix(in srgb, var(--holiday-accent) 18%, var(--holiday-surface)), var(--holiday-surface) 55%, color-mix(in srgb, var(--holiday-secondary) 16%, var(--holiday-surface)));
  box-shadow: 0 6px 28px color-mix(in srgb, var(--holiday-accent) 14%, transparent);
}
:root[data-holiday]:not([data-holiday=""]) .site-header::after {
  width: 92px; height: 92px; opacity: .5;
}
:root[data-holiday]:not([data-holiday=""]) .workspace-hero {
  position: relative; isolation: isolate; overflow: hidden;
  margin: 20px 0; padding: 24px; border-radius: 18px;
  border: 1px solid color-mix(in srgb, var(--holiday-accent) 45%, var(--holiday-border));
  border-left: 5px solid var(--holiday-accent);
  background: linear-gradient(120deg, var(--holiday-surface), color-mix(in srgb, var(--holiday-secondary) 13%, var(--holiday-background)));
}
:root[data-holiday]:not([data-holiday=""]) .workspace-hero::after {
  content: ""; position: absolute; inset: 0 52px 0 auto; width: 330px;
  z-index: -1; pointer-events: none; opacity: .45;
  background: var(--holiday-scene) right center / contain no-repeat;
}
:root[data-holiday]:not([data-holiday=""]) .workspace-hero h1 {
  font-size: clamp(30px, 3.5vw, 40px); font-weight: 750;
}
:root[data-holiday]:not([data-holiday=""]) .field-hero {
  border-color: color-mix(in srgb, var(--holiday-accent) 65%, var(--holiday-border));
  background: linear-gradient(135deg, color-mix(in srgb, var(--holiday-accent) 17%, var(--holiday-surface)), var(--holiday-surface) 50%, color-mix(in srgb, var(--holiday-secondary) 13%, var(--holiday-surface)));
  box-shadow: 0 18px 65px color-mix(in srgb, var(--holiday-accent) 10%, transparent);
}
:root[data-holiday]:not([data-holiday=""]) .field-hero-copy::before {
  content: ""; position: absolute; top: -12px; right: -6px; width: min(100%, 320px); height: 160px;
  z-index: -1; pointer-events: none; opacity: .8;
  background: var(--holiday-scene) right top / contain no-repeat;
}
:root[data-holiday]:not([data-holiday=""]) .field-hero h1 em { font-weight: 750; }
:root[data-holiday]:not([data-holiday=""]) :is(.technician-tool-card, .utility-card, .planning-card) {
  border-color: color-mix(in srgb, var(--holiday-accent) 36%, var(--holiday-border));
  border-top: 4px solid var(--holiday-accent);
  background: linear-gradient(135deg, color-mix(in srgb, var(--holiday-accent) 9%, var(--holiday-surface)), var(--holiday-surface) 65%);
  box-shadow: 0 8px 24px #00000024;
}
:root[data-holiday]:not([data-holiday=""]) :is(.technician-tool-card, .planning-card):nth-child(even) {
  border-top-color: var(--holiday-secondary);
}
:root[data-holiday]:not([data-holiday=""]) :is(.technician-tool-card, .planning-card):hover {
  border-color: var(--holiday-accent);
  box-shadow: 0 8px 28px color-mix(in srgb, var(--holiday-accent) 17%, transparent);
}
:root[data-holiday]:not([data-holiday=""]) .tool-launch-card h2 { font-weight: 700; }
:root[data-holiday]:not([data-holiday=""]) .launch-icon {
  padding: 4px; border-radius: 8px; background: var(--holiday-soft);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--holiday-accent) 35%, transparent);
}
:root[data-holiday]:not([data-holiday=""]) :is(button.primary, .ql-primary) {
  background: linear-gradient(115deg, var(--holiday-accent), color-mix(in srgb, var(--holiday-accent) 70%, #fff));
  color: #10151b; border-color: var(--holiday-accent); font-weight: 750;
  box-shadow: 0 4px 14px color-mix(in srgb, var(--holiday-accent) 23%, transparent);
}
:root[data-holiday]:not([data-holiday=""]) .field-upload {
  border-top: 4px solid var(--holiday-secondary);
  box-shadow: 0 10px 35px #00000030;
}
:root[data-holiday]:not([data-holiday=""]) .field-upload button[type="submit"]:hover {
  background: color-mix(in srgb, var(--holiday-accent) 75%, #fff); color: #10151b;
}
:root[data-holiday]:not([data-holiday=""]) .field-section-rule {
  background: linear-gradient(90deg, var(--holiday-accent), var(--holiday-secondary), transparent);
}
:root[data-holiday]:not([data-holiday=""]) :is(.qa-heading, .ql-heading) {
  border-bottom: 3px solid var(--holiday-accent); padding-bottom: 16px;
}
:root[data-holiday]:not([data-holiday=""]) body .header-actions .holiday-toggle[aria-pressed="true"] {
  background: var(--holiday-accent); border-color: var(--holiday-secondary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--holiday-accent) 20%, transparent), 0 0 24px color-mix(in srgb, var(--holiday-accent) 40%, transparent);
}
/* Christmas lights, festive pennants, and commemorative ribbons are static. */
:root[data-holiday="christmas"] .site-header::before {
  content: ""; position: absolute; inset: auto 0 -6px; height: 14px; pointer-events: none;
  background: radial-gradient(ellipse at 10px 6px, #ffe277 0 4px, transparent 5px),
    radial-gradient(ellipse at 38px 6px, #ff6d7b 0 4px, transparent 5px),
    radial-gradient(ellipse at 66px 6px, #73efaf 0 4px, transparent 5px);
  background-size: 84px 14px; filter: drop-shadow(0 0 4px #ffd96780);
}
:root[data-holiday="cinco-de-mayo"] .field-hero::before,
:root[data-holiday="independence-day"] .field-hero::before {
  background: repeating-linear-gradient(180deg, var(--holiday-accent) 0 24px, var(--holiday-secondary) 24px 48px, var(--holiday-ink) 48px 72px);
}
:root:is([data-holiday="memorial-day"], [data-holiday="veterans-day"]) .site-header {
  border-image: linear-gradient(90deg, #ad5263, var(--holiday-accent), #799dd2) 1;
}
:root:is([data-holiday="memorial-day"], [data-holiday="veterans-day"]) :is(.technician-tool-card, .planning-card) {
  box-shadow: none;
}
@media (max-width: 700px) {
  :root[data-holiday]:not([data-holiday=""]) .workspace-hero { margin: 16px 0; padding: 20px 16px; }
  :root[data-holiday]:not([data-holiday=""]) .workspace-hero::after { right: 0; width: 190px; opacity: .2; }
  :root[data-holiday]:not([data-holiday=""]) .field-hero-copy::before { width: 155px; height: 95px; opacity: .27; }
}
@media (prefers-reduced-motion: reduce) {
  :root[data-holiday]:not([data-holiday=""]) :is(.technician-tool-card, .planning-card) { transition: none; transform: none; }
}

/* Regional clocks resolve their own midnight and stay quiet for screen readers. */
.new-year-countdown[hidden], .countdown-message[hidden] { display: none !important; }
:root[data-holiday="new-year"] .new-year-countdown {
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  margin: 20px 0 24px; padding: 20px 24px; border-radius: 18px;
  border: 1px solid var(--holiday-secondary); border-top: 4px solid var(--holiday-accent);
  background: linear-gradient(120deg, #342957, var(--holiday-surface) 65%);
  color: var(--holiday-ink); box-shadow: 0 8px 30px #00000030;
}
.countdown-intro { display: flex; align-items: center; gap: 14px; min-width: 0; }
.countdown-firework { font-size: 36px; line-height: 1; }
.new-year-countdown h2 { margin: 0 0 5px; font-size: 19px; font-weight: 750; letter-spacing: -.025em; }
.new-year-countdown p { margin: 0; color: var(--holiday-muted); font-size: 13px; line-height: 1.5; }
.new-year-countdown .countdown-message { margin-top: 5px; color: var(--holiday-accent); font-weight: 700; }
.countdown-digits { display: grid; grid-template-columns: repeat(4, minmax(80px, 1fr)); gap: 9px; margin: 0; }
.countdown-digits > div { display: flex; flex-direction: column; align-items: center; padding: 9px 10px; border: 1px solid #8e76af; border-radius: 10px; background: #110e26; }
.countdown-digits dt { order: 2; margin-top: 3px; color: #d7cbed; font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; }
.countdown-digits dd { margin: 0; color: var(--holiday-accent); font-family: ui-monospace, Consolas, monospace; font-size: 32px; font-weight: 750; line-height: 1.1; font-variant-numeric: tabular-nums; }
@media (max-width: 700px) {
  :root[data-holiday="new-year"] .new-year-countdown { flex-direction: column; align-items: stretch; gap: 16px; padding: 18px 16px; }
  .countdown-digits { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .countdown-digits > div { padding: 9px 4px; }
  .countdown-digits dd { font-size: clamp(23px, 7vw, 30px); }
  .countdown-firework { font-size: 30px; }
}

:root[data-holiday="new-year"] .new-year-countdown { display: block; }
.new-year-countdown .countdown-intro { margin-bottom: 16px; }
.countdown-zones { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.countdown-zone { min-width: 0; padding: 16px; border: 1px solid #8e76af; border-radius: 12px; background: #17112c80; }
.countdown-zone-heading { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.countdown-zone-badge { display: grid; place-items: center; flex: 0 0 38px; height: 38px; border: 1px solid var(--holiday-accent); border-radius: 9px; color: var(--holiday-accent); background: #110e26; font-size: 12px; font-weight: 800; }
.countdown-zone h3 { margin: 0 0 4px; color: var(--holiday-ink); font-size: 15px; font-weight: 750; }
.countdown-zone[data-countdown-zone="ph"] .countdown-zone-badge { color: var(--holiday-secondary); border-color: var(--holiday-secondary); }
.countdown-zone .countdown-digits { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.countdown-zone .countdown-digits > div { padding: 9px 4px; }
.countdown-zone .countdown-message { margin-top: 12px; }
@media (max-width: 800px) {
  .countdown-zones { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 400px) {
  .countdown-zone { padding: 12px; }
  .countdown-zone .countdown-digits { gap: 6px; }
  .countdown-zone .countdown-digits dd { font-size: 22px; }
  .countdown-zone-heading { align-items: flex-start; }
}

.countdown-zone[data-countdown-zone="de"] .countdown-zone-badge { color: #ffcf8c; border-color: #ffcf8c; }
.countdown-zone[data-countdown-zone="br"] .countdown-zone-badge { color: #8be8b2; border-color: #8be8b2; }

:root[data-holiday="squirrel-birthday"] {
  --holiday-accent: #ffc97b;
  --holiday-secondary: #a4d585;
  --holiday-background: #141f13;
  --holiday-surface: #293729;
  --holiday-control: #152018;
  --holiday-border: #687e45;
  --holiday-muted: #cad4bc;
  --holiday-ink: #fff3d8;
  --holiday-soft: #413220;
  --holiday-scene: url("/assets/holiday-squirrel-birthday.svg?v=d7010f7f4e69");
  --holiday-ornament: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2080%2080%22%20fill%3D%22none%22%20stroke%3D%22%23e3c18c%22%20stroke-width%3D%222%22%3E%3Cpath%20d%3D%22M19%2029Q18%2057%2038%2065Q58%2055%2057%2029M15%2031Q38%208%2061%2031ZM38%2018V8M63%2057l7-8M13%2066l-6-8%22%2F%3E%3C%2Fsvg%3E");
  --holiday-pattern: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2080%2080%22%20fill%3D%22none%22%20stroke%3D%22%23e3c18c%22%20stroke-width%3D%222%22%20opacity%3D%22.1%22%3E%3Cpath%20d%3D%22M19%2029Q18%2057%2038%2065Q58%2055%2057%2029M15%2031Q38%208%2061%2031ZM38%2018V8M63%2057l7-8M13%2066l-6-8%22%2F%3E%3C%2Fsvg%3E");
}

:root[data-holiday="hunting-birthday"] {
  --holiday-accent: #f4bc68;
  --holiday-secondary: #b8d493;
  --holiday-background: #182016;
  --holiday-surface: #303c29;
  --holiday-control: #192418;
  --holiday-border: #79854e;
  --holiday-muted: #ced6bd;
  --holiday-ink: #fff1d3;
  --holiday-soft: #423621;
  --holiday-scene: url("/assets/holiday-hunting-birthday.svg?v=ee3b1924cfc3");
  --holiday-ornament: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2080%2080%22%20fill%3D%22none%22%20stroke%3D%22%23e3c18c%22%20stroke-width%3D%222%22%3E%3Cpath%20d%3D%22M16%2061V31l8-13%208%2013v30ZM43%2061V31l8-13%208%2013v30ZM12%2055h24M39%2055h24M68%2024l5-8%22%2F%3E%3C%2Fsvg%3E");
  --holiday-pattern: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2080%2080%22%20fill%3D%22none%22%20stroke%3D%22%23e3c18c%22%20stroke-width%3D%222%22%20opacity%3D%22.1%22%3E%3Cpath%20d%3D%22M16%2061V31l8-13%208%2013v30ZM43%2061V31l8-13%208%2013v30ZM12%2055h24M39%2055h24M68%2024l5-8%22%2F%3E%3C%2Fsvg%3E");
}

:root[data-holiday="alpine-birthday"] {
  --holiday-accent: #82dfec;
  --holiday-secondary: #b4daa1;
  --holiday-background: #0a2028;
  --holiday-surface: #163b43;
  --holiday-control: #102b32;
  --holiday-border: #508f99;
  --holiday-muted: #bed6d5;
  --holiday-ink: #f0ffff;
  --holiday-soft: #194a54;
  --holiday-scene: url("/assets/holiday-alpine-birthday.svg?v=b0d1b71a85d7");
  --holiday-ornament: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2080%2080%22%20fill%3D%22none%22%20stroke%3D%22%23b5d8c6%22%20stroke-width%3D%222%22%3E%3Cpath%20d%3D%22m4%2048%2022-34%2023%2034M14%2034l12-20%2014%2020M57%2014l-14%2022h9l-14%2020h14v15h10V56h14L61%2036h9ZM4%2068q12-8%2024%200%22%2F%3E%3C%2Fsvg%3E");
  --holiday-pattern: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2080%2080%22%20fill%3D%22none%22%20stroke%3D%22%23b5d8c6%22%20stroke-width%3D%222%22%20opacity%3D%22.1%22%3E%3Cpath%20d%3D%22m4%2048%2022-34%2023%2034M14%2034l12-20%2014%2020M57%2014l-14%2022h9l-14%2020h14v15h10V56h14L61%2036h9ZM4%2068q12-8%2024%200%22%2F%3E%3C%2Fsvg%3E");
}

:root[data-holiday="rafting-birthday"] {
  --holiday-accent: #ffce7a;
  --holiday-secondary: #7bdce1;
  --holiday-background: #291810;
  --holiday-surface: #493023;
  --holiday-control: #2b221c;
  --holiday-border: #ad7446;
  --holiday-muted: #e0c4a5;
  --holiday-ink: #fff1d9;
  --holiday-soft: #533b26;
  --holiday-scene: url("/assets/holiday-rafting-birthday.svg?v=bd5f3de651ab");
  --holiday-ornament: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2080%2080%22%20fill%3D%22none%22%20stroke%3D%22%23b5d8c6%22%20stroke-width%3D%222%22%3E%3Cpath%20d%3D%22M5%2063q15-14%2029%200q15%2014%2029%200M5%2073q15-14%2029%200q15%2014%2029%200M21%2047V14M21%2031H10V22M21%2039h13V25M51%2010l13%2010M58%208l-9%2014%22%2F%3E%3C%2Fsvg%3E");
  --holiday-pattern: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2080%2080%22%20fill%3D%22none%22%20stroke%3D%22%23b5d8c6%22%20stroke-width%3D%222%22%20opacity%3D%22.1%22%3E%3Cpath%20d%3D%22M5%2063q15-14%2029%200q15%2014%2029%200M5%2073q15-14%2029%200q15%2014%2029%200M21%2047V14M21%2031H10V22M21%2039h13V25M51%2010l13%2010M58%208l-9%2014%22%2F%3E%3C%2Fsvg%3E");
}
