.holiday-bar {
  margin: 0;
  padding: 0.5rem 1rem;
  text-align: center;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-size: 0.78rem;
  font-weight: 700;
  background: var(--holiday, #1d4ed8);
  color: #fff;
}
html:not([data-holiday]) .holiday-bar { display: none; }
.holiday-quiet {
  border: 0; background: transparent; color: #fdba74; cursor: pointer;
  font: inherit; font-size: 0.78rem; font-weight: 600; padding: 0.15rem 0.2rem; opacity: 0.75;
}
.holiday-quiet:hover { opacity: 1; }
html.light .holiday-quiet { color: #c2410c; }
.site-foot__bottom .holiday-quiet { margin-right: auto; }
.side > .holiday-quiet { margin: 0.35rem 0.15rem 0.15rem; text-align: center; }
.halloween-scene {
  position: relative; overflow: hidden; height: 14.5rem; margin: 0; padding: 0;
  text-align: center; text-transform: none; letter-spacing: normal; font-weight: 400;
  color: #fff7ed;
  background:
    radial-gradient(22rem 14rem at 78% 18%, rgba(253, 224, 171, 0.42), transparent 58%),
    radial-gradient(28rem 16rem at 8% 100%, rgba(249, 115, 22, 0.38), transparent 55%),
    radial-gradient(18rem 12rem at 50% 120%, rgba(124, 45, 18, 0.45), transparent 60%),
    linear-gradient(180deg, #07030c 0%, #160816 46%, #2a120c 100%);
}
.halloween-scene__sky { position: absolute; inset: 0; pointer-events: none; }
.halloween-moon {
  position: absolute; top: 1.15rem; right: 11%; width: 4.6rem; height: 4.6rem; border-radius: 50%;
  background:
    radial-gradient(circle at 32% 32%, #fff7ed 0 18%, transparent 19%),
    radial-gradient(circle at 62% 58%, rgba(180, 83, 9, 0.28) 0 8%, transparent 9%),
    radial-gradient(circle at 40% 70%, rgba(180, 83, 9, 0.22) 0 6%, transparent 7%),
    radial-gradient(circle at 36% 34%, #fffbeb, #fde68a 46%, #f59e0b 80%);
  box-shadow: 0 0 2.2rem 0.45rem rgba(253, 186, 116, 0.55);
  animation: halloween-glow 4s ease-in-out infinite;
}
.halloween-star {
  position: absolute; width: 0.22rem; height: 0.22rem; border-radius: 50%; background: #fff;
  box-shadow: 0 0 0.45rem rgba(255, 255, 255, 0.8);
  animation: halloween-twinkle 2.6s ease-in-out infinite;
}
.star-a { top: 1.1rem; left: 8%; }
.star-b { top: 2.4rem; left: 18%; width: 0.14rem; height: 0.14rem; animation-delay: -0.4s; }
.star-c { top: 0.8rem; left: 30%; animation-delay: -1.1s; }
.star-d { top: 3.1rem; left: 42%; width: 0.12rem; height: 0.12rem; animation-delay: -1.8s; }
.star-e { top: 1.5rem; left: 54%; animation-delay: -0.7s; }
.star-f { top: 3.6rem; left: 63%; width: 0.16rem; height: 0.16rem; animation-delay: -1.4s; }
.star-g { top: 0.55rem; left: 70%; animation-delay: -2s; }
.star-h { top: 2.8rem; left: 86%; width: 0.14rem; height: 0.14rem; animation-delay: -0.2s; }
.halloween-bat {
  position: absolute; color: #1a0812;
  filter: drop-shadow(0 0 5px rgba(251, 146, 60, 0.4));
  animation: halloween-fly 11s linear infinite;
}
.bat-1 { top: 1.4rem; width: 3.4rem; height: 1.5rem; animation-duration: 9s; }
.bat-2 { top: 3.2rem; width: 2.2rem; height: 1rem; animation-duration: 14s; animation-delay: -5s; }
.bat-3 { top: 0.7rem; width: 1.7rem; height: 0.75rem; animation-duration: 12s; animation-delay: -8s; }
.halloween-tree { position: absolute; bottom: 1.6rem; width: 4.2rem; height: 7.6rem; opacity: 0.9; }
.tree-l { left: 7%; }
.tree-r { right: 8%; transform: scaleX(-1); }
.halloween-mist {
  position: absolute; left: -8%; right: -8%; bottom: 1.3rem; height: 3.2rem;
  background: linear-gradient(180deg, transparent, rgba(255, 237, 213, 0.14));
  filter: blur(3px);
  animation: halloween-mist 8s ease-in-out infinite;
}
.halloween-ground {
  position: absolute; left: -5%; right: -5%; bottom: -1.2rem; height: 3.4rem;
  background: #10060c;
  border-radius: 50% 50% 0 0 / 80% 80% 0 0;
  box-shadow: 0 -12px 30px rgba(249, 115, 22, 0.18);
}
.halloween-scene__copy {
  position: relative; z-index: 1; height: 100%;
  display: grid; align-content: center; justify-items: center; gap: 0.28rem;
  padding-bottom: 1.2rem;
}
.halloween-scene__copy p {
  margin: 0; color: #fdba74; letter-spacing: 0.28em; text-transform: uppercase; font-size: 0.72rem; font-weight: 700;
}
.halloween-scene__copy h2 {
  margin: 0; font-family: Syne, "Segoe UI", sans-serif; font-size: clamp(2.4rem, 6vw, 4.1rem);
  letter-spacing: -0.04em; line-height: 0.95;
  background: linear-gradient(100deg, #fb923c, #fff7ed 40%, #fbbf24 60%, #fb923c);
  background-size: 220% 100%; -webkit-background-clip: text; background-clip: text; color: transparent;
  filter: drop-shadow(0 0 18px rgba(251, 146, 60, 0.45));
  animation: halloween-sheen 6s linear infinite, halloween-flicker 3.6s ease-in-out infinite;
}
.halloween-pumpkin {
  position: absolute; bottom: 0.15rem; width: 5.6rem; height: 6.4rem; z-index: 2;
  filter: drop-shadow(0 8px 12px rgba(0, 0, 0, 0.45)) drop-shadow(0 0 0.8rem rgba(249, 115, 22, 0.55));
  animation: halloween-bob 3.4s ease-in-out infinite;
}
.pump-l { left: 3.5%; }
.pump-r { right: 3.5%; animation-delay: -1.5s; }
@keyframes halloween-glow { 50% { box-shadow: 0 0 2.8rem 0.7rem rgba(253, 186, 116, 0.8); } }
@keyframes halloween-twinkle { 50% { opacity: 0.2; } }
@keyframes halloween-fly { from { transform: translateX(-4rem); } to { transform: translateX(110vw); } }
@keyframes halloween-mist { 50% { transform: translateX(2rem); } }
@keyframes halloween-sheen { to { background-position: -220% 0; } }
@keyframes halloween-flicker { 0%, 38%, 43%, 100% { opacity: 1; } 40% { opacity: 0.7; } 68% { opacity: 0.88; } }
@keyframes halloween-bob { 50% { transform: translateY(-0.35rem); } }
@media (max-width: 700px) {
  .halloween-scene { height: 11rem; }
  .halloween-pumpkin { width: 3.8rem; height: 4.4rem; }
  .halloween-moon { width: 3rem; height: 3rem; top: 0.8rem; }
  .halloween-tree { width: 2.8rem; height: 5rem; }
}
@media (prefers-reduced-motion: reduce) {
  .halloween-moon, .halloween-star, .halloween-bat, .halloween-mist, .halloween-scene__copy h2, .halloween-pumpkin { animation: none; }
}
html[data-holiday] .side,
html[data-holiday] .composer,
html[data-holiday] .preview,
html[data-holiday] .chat-list,
html[data-holiday] .chat-main {
  background: color-mix(in srgb, var(--nav) 90%, transparent);
}
html[data-holiday] .btn { background: var(--blue); }

html[data-holiday="blackhistory"] {
  --bg: #070707; --text: #f7f3e8; --mute: #d6c7a1; --line: rgba(212, 175, 55, 0.35);
  --cyan: #22c55e; --blue: #dc2626; --card: #141414; --nav: #101010; --field: #0c0c0c; --holiday: #111;
  --ix-void: #070707; --ix-paper: #f7f3e8; --ix-mute: #d6c7a1;
}
html[data-holiday="blackhistory"] body {
  background: radial-gradient(640px 280px at 12% -8%, rgba(220, 38, 38, 0.35), transparent 60%), radial-gradient(640px 280px at 88% 0%, rgba(34, 197, 94, 0.22), transparent 58%), var(--bg);
}
html.light[data-holiday="blackhistory"] {
  --bg: #f4efe2; --text: #141414; --mute: #3f3a2e; --line: rgba(20, 20, 20, 0.14);
  --cyan: #15803d; --blue: #b91c1c; --card: #fffaf0; --nav: #fff; --field: #fff; --holiday: #111;
  --ix-void: #f4efe2; --ix-paper: #141414; --ix-mute: #3f3a2e;
}

html[data-holiday="valentine"] {
  --bg: #14080e; --text: #fff1f4; --mute: #f9a8c4; --line: rgba(244, 63, 94, 0.32);
  --cyan: #fb7185; --blue: #e11d48; --card: #241018; --nav: #1c0c14; --field: #180a12; --holiday: #9f1239;
  --ix-void: #14080e; --ix-paper: #fff1f4; --ix-mute: #f9a8c4;
}
html[data-holiday="valentine"] body {
  background: radial-gradient(720px 320px at 50% -8%, rgba(225, 29, 72, 0.32), transparent 62%), var(--bg);
}
html.light[data-holiday="valentine"] {
  --bg: #f6d5e2; --text: #4a1830; --mute: #8a4564; --line: #e4a8c0;
  --cyan: #be185d; --blue: #be185d; --card: #ffe8f0; --nav: #fff; --field: #fff0f5; --holiday: #9f1239;
  --ix-void: #f6d5e2; --ix-paper: #4a1830; --ix-mute: #8a4564;
}

html[data-holiday="patrick"] {
  --bg: #08140c; --text: #ecfdf3; --mute: #86efac; --line: rgba(74, 222, 128, 0.3);
  --cyan: #4ade80; --blue: #16a34a; --card: #102016; --nav: #0c1a12; --field: #0c1812; --holiday: #166534;
  --ix-void: #08140c; --ix-paper: #ecfdf3; --ix-mute: #86efac;
}
html[data-holiday="patrick"] body {
  background: radial-gradient(720px 320px at 50% -8%, rgba(34, 197, 94, 0.3), transparent 62%), var(--bg);
}
html.light[data-holiday="patrick"] {
  --bg: #d5efd4; --text: #14301c; --mute: #3f6b4a; --line: #9dcc9a;
  --cyan: #15803d; --blue: #15803d; --card: #e9f8e6; --nav: #fff; --field: #f3fbf1; --holiday: #166534;
  --ix-void: #d5efd4; --ix-paper: #14301c; --ix-mute: #3f6b4a;
}

html[data-holiday="cinco"] {
  --bg: #100806; --text: #fff7ed; --mute: #fdba74; --line: rgba(22, 163, 74, 0.35);
  --cyan: #4ade80; --blue: #dc2626; --card: #1c100c; --nav: #160e0a; --field: #140c08; --holiday: #166534;
  --ix-void: #100806; --ix-paper: #fff7ed; --ix-mute: #fdba74;
}
html[data-holiday="cinco"] body {
  background: radial-gradient(640px 280px at 10% -8%, rgba(220, 38, 38, 0.32), transparent 60%), radial-gradient(640px 280px at 90% 0%, rgba(22, 163, 74, 0.28), transparent 58%), var(--bg);
}
html.light[data-holiday="cinco"] {
  --bg: #e7f6df; --text: #1a2e12; --mute: #3f6b32; --line: #b7d7a4;
  --cyan: #15803d; --blue: #b91c1c; --card: #f4fbea; --nav: #fff; --field: #f7fdf2; --holiday: #166534;
  --ix-void: #e7f6df; --ix-paper: #1a2e12; --ix-mute: #3f6b32;
}

html[data-holiday="mother"] {
  --bg: #160c16; --text: #fdf2f8; --mute: #f0abfc; --line: rgba(244, 114, 182, 0.32);
  --cyan: #f9a8d4; --blue: #db2777; --card: #241424; --nav: #1c101c; --field: #180e18; --holiday: #9d174d;
  --ix-void: #160c16; --ix-paper: #fdf2f8; --ix-mute: #f0abfc;
}
html[data-holiday="mother"] body {
  background: radial-gradient(720px 320px at 20% -8%, rgba(244, 114, 182, 0.32), transparent 62%), radial-gradient(520px 240px at 90% 0%, rgba(192, 132, 252, 0.2), transparent 55%), var(--bg);
}
html.light[data-holiday="mother"] {
  --bg: #f8d7ea; --text: #4a1840; --mute: #8a4578; --line: #e7b4d4;
  --cyan: #a21caf; --blue: #db2777; --card: #fff0f8; --nav: #fff; --field: #fff5fb; --holiday: #9d174d;
  --ix-void: #f8d7ea; --ix-paper: #4a1840; --ix-mute: #8a4578;
}

html[data-holiday="memorial"] {
  --bg: #070b14; --text: #e8eef8; --mute: #b9c6dc; --line: rgba(185, 28, 28, 0.35);
  --cyan: #93c5fd; --blue: #b91c1c; --card: #101622; --nav: #0c1018; --field: #0c1018; --holiday: #7f1d1d;
  --ix-void: #070b14; --ix-paper: #e8eef8; --ix-mute: #b9c6dc;
}
html[data-holiday="memorial"] body {
  background: radial-gradient(640px 280px at 50% -10%, rgba(185, 28, 28, 0.28), transparent 60%), var(--bg);
}
html.light[data-holiday="memorial"] {
  --bg: #e4e9f2; --text: #172033; --mute: #3d4c66; --line: #c5d0e2;
  --cyan: #1d4ed8; --blue: #b91c1c; --card: #f4f7fb; --nav: #fff; --field: #f7f9fc; --holiday: #7f1d1d;
  --ix-void: #e4e9f2; --ix-paper: #172033; --ix-mute: #3d4c66;
}

html[data-holiday="juneteenth"] {
  --bg: #070707; --text: #fff8e8; --mute: #f5d78a; --line: rgba(212, 175, 55, 0.4);
  --cyan: #f5d78a; --blue: #dc2626; --card: #16120c; --nav: #100e0a; --field: #120e0a; --holiday: #111;
  --ix-void: #070707; --ix-paper: #fff8e8; --ix-mute: #f5d78a;
}
html[data-holiday="juneteenth"] body {
  background: radial-gradient(680px 300px at 50% -8%, rgba(220, 38, 38, 0.34), transparent 58%), radial-gradient(420px 200px at 80% 0%, rgba(212, 175, 55, 0.2), transparent 55%), var(--bg);
}
html.light[data-holiday="juneteenth"] {
  --bg: #f6ecd4; --text: #1a1208; --mute: #6b5428; --line: #e2cf9a;
  --cyan: #a16207; --blue: #b91c1c; --card: #fff8e8; --nav: #fff; --field: #fffdf6; --holiday: #111;
  --ix-void: #f6ecd4; --ix-paper: #1a1208; --ix-mute: #6b5428;
}

html[data-holiday="father"] {
  --bg: #07101c; --text: #e8f1ff; --mute: #93c5fd; --line: rgba(59, 130, 246, 0.32);
  --cyan: #7dd3fc; --blue: #1d4ed8; --card: #101a2c; --nav: #0c1424; --field: #0c1422; --holiday: #1e3a8a;
  --ix-void: #07101c; --ix-paper: #e8f1ff; --ix-mute: #93c5fd;
}
html[data-holiday="father"] body {
  background: radial-gradient(720px 320px at 50% -8%, rgba(37, 99, 235, 0.34), transparent 62%), var(--bg);
}
html.light[data-holiday="father"] {
  --bg: #d7e4f8; --text: #172554; --mute: #3b4f86; --line: #b7c8e6;
  --cyan: #0369a1; --blue: #1d4ed8; --card: #eef4fc; --nav: #fff; --field: #f5f8fd; --holiday: #1e3a8a;
  --ix-void: #d7e4f8; --ix-paper: #172554; --ix-mute: #3b4f86;
}

html[data-holiday="independence"] {
  --bg: #070d1c; --text: #f8fafc; --mute: #bfdbfe; --line: rgba(239, 68, 68, 0.32);
  --cyan: #93c5fd; --blue: #dc2626; --card: #10182c; --nav: #0c1424; --field: #0c1220; --holiday: #1e3a8a;
  --ix-void: #070d1c; --ix-paper: #f8fafc; --ix-mute: #bfdbfe;
}
html[data-holiday="independence"] body {
  background: radial-gradient(640px 300px at 12% -8%, rgba(239, 68, 68, 0.32), transparent 60%), radial-gradient(640px 280px at 90% 0%, rgba(59, 130, 246, 0.32), transparent 58%), var(--bg);
}
html.light[data-holiday="independence"] {
  --bg: #d9e4f6; --text: #172554; --mute: #3b4f86; --line: #a9bce0;
  --cyan: #1d4ed8; --blue: #b91c1c; --card: #eef3fc; --nav: #fff; --field: #f5f8fd; --holiday: #1e3a8a;
  --ix-void: #d9e4f6; --ix-paper: #172554; --ix-mute: #3b4f86;
}

html[data-holiday="labor"] {
  --bg: #101014; --text: #f8f5ef; --mute: #d6d3d1; --line: rgba(202, 138, 4, 0.35);
  --cyan: #fbbf24; --blue: #1d4ed8; --card: #1c1a16; --nav: #16140f; --field: #141210; --holiday: #1e3a8a;
  --ix-void: #101014; --ix-paper: #f8f5ef; --ix-mute: #d6d3d1;
}
html[data-holiday="labor"] body {
  background: radial-gradient(680px 300px at 50% -8%, rgba(202, 138, 4, 0.28), transparent 60%), radial-gradient(480px 220px at 0% 0%, rgba(29, 78, 216, 0.22), transparent 55%), var(--bg);
}
html.light[data-holiday="labor"] {
  --bg: #efe6cf; --text: #1c1917; --mute: #57534e; --line: #e0d2ae;
  --cyan: #a16207; --blue: #1d4ed8; --card: #fff8e8; --nav: #fff; --field: #fffdf6; --holiday: #1e3a8a;
  --ix-void: #efe6cf; --ix-paper: #1c1917; --ix-mute: #57534e;
}

html[data-holiday="halloween"] {
  --bg: #0c090c; --text: #fff7ed; --mute: #fdba74; --line: rgba(249, 115, 22, 0.35);
  --cyan: #4ade80; --blue: #f97316; --card: #1a1214; --nav: #140e12; --field: #120c10; --holiday: #9a3412;
  --ix-void: #0c090c; --ix-paper: #fff7ed; --ix-mute: #fdba74;
}
html[data-holiday="halloween"] body {
  background: radial-gradient(680px 300px at 8% -10%, rgba(249, 115, 22, 0.4), transparent 60%), radial-gradient(520px 260px at 92% 0%, rgba(74, 222, 128, 0.14), transparent 55%), var(--bg);
}
html.light[data-holiday="halloween"] {
  --bg: #f3e0cc; --text: #2a160c; --mute: #7c4a28; --line: #e7c4a4;
  --cyan: #c2410c; --blue: #ea580c; --card: #fff4e8; --nav: #fff; --field: #fff8f1; --holiday: #9a3412;
  --ix-void: #f3e0cc; --ix-paper: #2a160c; --ix-mute: #7c4a28;
}

html[data-holiday="veterans"] {
  --bg: #070b16; --text: #eef2ff; --mute: #c7d2fe; --line: rgba(185, 28, 28, 0.32);
  --cyan: #fca5a5; --blue: #1e3a8a; --card: #101628; --nav: #0c1220; --field: #0c101c; --holiday: #1e3a8a;
  --ix-void: #070b16; --ix-paper: #eef2ff; --ix-mute: #c7d2fe;
}
html[data-holiday="veterans"] body {
  background: radial-gradient(640px 280px at 15% -8%, rgba(30, 58, 138, 0.45), transparent 60%), radial-gradient(480px 220px at 90% 0%, rgba(185, 28, 28, 0.25), transparent 55%), var(--bg);
}
html.light[data-holiday="veterans"] {
  --bg: #dce3f4; --text: #172033; --mute: #3d4c6e; --line: #c3cce4;
  --cyan: #b91c1c; --blue: #1e3a8a; --card: #f4f6fb; --nav: #fff; --field: #f7f8fc; --holiday: #1e3a8a;
  --ix-void: #dce3f4; --ix-paper: #172033; --ix-mute: #3d4c6e;
}

html[data-holiday="thanksgiving"] {
  --bg: #140e0a; --text: #fff7ed; --mute: #fdba74; --line: rgba(217, 119, 6, 0.35);
  --cyan: #fbbf24; --blue: #d97706; --card: #261910; --nav: #1c140e; --field: #1a120c; --holiday: #9a3412;
  --ix-void: #140e0a; --ix-paper: #fff7ed; --ix-mute: #fdba74;
}
html[data-holiday="thanksgiving"] body {
  background: radial-gradient(740px 320px at 50% -8%, rgba(217, 119, 6, 0.34), transparent 62%), var(--bg);
}
html.light[data-holiday="thanksgiving"] {
  --bg: #f0d7b4; --text: #3b2412; --mute: #7a5432; --line: #e0b888;
  --cyan: #c2410c; --blue: #c2410c; --card: #fff3e0; --nav: #fff; --field: #fff8ee; --holiday: #9a3412;
  --ix-void: #f0d7b4; --ix-paper: #3b2412; --ix-mute: #7a5432;
}

html[data-holiday="christmas"] {
  --bg: #07110c; --text: #f0fdf4; --mute: #86efac; --line: rgba(239, 68, 68, 0.32);
  --cyan: #4ade80; --blue: #dc2626; --card: #102018; --nav: #0c1812; --field: #0c1612; --holiday: #991b1b;
  --ix-void: #07110c; --ix-paper: #f0fdf4; --ix-mute: #86efac;
}
html[data-holiday="christmas"] body {
  background: radial-gradient(640px 280px at 10% -8%, rgba(239, 68, 68, 0.3), transparent 60%), radial-gradient(640px 280px at 92% 0%, rgba(34, 197, 94, 0.24), transparent 58%), var(--bg);
}
html.light[data-holiday="christmas"] {
  --bg: #e4f0e6; --text: #143024; --mute: #3f6b56; --line: #b7d4c0;
  --cyan: #15803d; --blue: #b91c1c; --card: #f4fbf5; --nav: #fff; --field: #f7fcf8; --holiday: #991b1b;
  --ix-void: #e4f0e6; --ix-paper: #143024; --ix-mute: #3f6b56;
}

html[data-holiday="newyear"] {
  --bg: #100e08; --text: #fffbeb; --mute: #fde68a; --line: rgba(250, 204, 21, 0.32);
  --cyan: #facc15; --blue: #ca8a04; --card: #1c1810; --nav: #16140c; --field: #14120c; --holiday: #854d0e;
  --ix-void: #100e08; --ix-paper: #fffbeb; --ix-mute: #fde68a;
}
html[data-holiday="newyear"] body {
  background: radial-gradient(720px 320px at 50% -8%, rgba(234, 179, 8, 0.32), transparent 62%), var(--bg);
}
html.light[data-holiday="newyear"] {
  --bg: #efe6c8; --text: #2a2308; --mute: #6b5a28; --line: #d4c48a;
  --cyan: #a16207; --blue: #a16207; --card: #fff8e4; --nav: #fff; --field: #fffdf4; --holiday: #854d0e;
  --ix-void: #efe6c8; --ix-paper: #2a2308; --ix-mute: #6b5a28;
}

html[data-holiday] body.marketing-skin { background: var(--ix-void); color: var(--ix-mute); }
html[data-holiday] .marketing-skin .grid-bg {
  background: radial-gradient(ellipse 80% 50% at 50% -10%, color-mix(in srgb, var(--blue) 35%, transparent), transparent 60%), var(--ix-void);
}
