@import url('/halloween.css?v=transition-20261031');
/* Small, additive palettes; external discovery pages are never restyled. */
.seasonal-theme { --season-accent:#8f5433; --season-soft:#eee2cf; --season-ink:#7b815b; background:#faf6ec; }
.seasonal-theme .site-header { background:#fcf7ee; border-color:#dfd1be; }
.seasonal-theme .welcome { background:radial-gradient(ellipse at 84% 25%,var(--season-soft),transparent 49%),linear-gradient(155deg,#fcf7ee,#f1e8d7); }
.seasonal-theme .welcome::after { background:var(--season-soft); height:24%; bottom:-10%; }
.seasonal-theme .welcome h1 { max-width:69%; }
.seasonal-theme .welcome h1 em { color:var(--season-ink); }
.seasonal-theme .welcome .eyebrow { color:var(--season-accent); }
.seasonal-theme .welcome .seasonal-note { display:inline-flex; align-items:center; gap:9px; margin:0 0 26px; padding:8px 13px; border:1px solid #d8c9b4; border-radius:30px; color:var(--season-accent); background:#fffaf0c9; font-size:.74rem; font-weight:650; letter-spacing:.025em; max-width:min(90%,420px); }
.seasonal-theme .seasonal-note::before { display:none; }
.seasonal-symbol::before { content:'✦'; font-size:1rem; }
.seasonal-theme[data-decoration='heart'] .seasonal-symbol::before { content:'♡'; }
.seasonal-theme[data-decoration='snow'] .seasonal-symbol::before { content:'❄'; }
.seasonal-theme[data-decoration='flower'] .seasonal-symbol::before,
.seasonal-theme[data-decoration='poppy'] .seasonal-symbol::before { content:'✿'; }
.seasonal-theme[data-decoration='leaf'] .seasonal-symbol::before,
.seasonal-theme[data-decoration='harvest'] .seasonal-symbol::before { content:'❧'; }
.seasonal-theme[data-decoration='clover'] .seasonal-symbol::before { content:'♧'; }
.seasonal-theme[data-decoration='egg'] .seasonal-symbol::before { content:'◌'; }
.seasonal-theme .tumble-button { background:var(--season-accent); box-shadow:0 5px 15px #553b231c; }
.seasonal-theme .tumble-button:hover:not(:disabled) { filter:brightness(.9); }
.seasonal-theme .frame-loading { background-color:#fcf7ee; }
.seasonal-theme .review-footer { background:#f4eddf; border-color:#dfd1be; }
.seasonal-theme .home-companions { right:4%; bottom:7%; width:31%; height:62%; opacity:1; }
.seasonal-pair,.seasonal-brand,.seasonal-note,.seasonal-decor { display:none; }
.seasonal-preview-reset { position:absolute; bottom:24px; left:max(7vw,25px); z-index:2; color:#70624f; text-decoration:none; font-size:.74rem; padding:8px 0; max-width:52%; }
.seasonal-preview-reset:hover { text-decoration:underline; }
.sheet-theme .seasonal-pair { display:block; position:absolute; width:100%; height:100%; object-fit:contain; object-position:right bottom; }
.sheet-theme .home-companions .desert-cactus,.sheet-theme .home-companions .desert-weed,.sheet-theme .brand img { display:none; }
.sheet-theme .seasonal-brand { display:inline-block; width:36px; height:70px; flex:none; background-image:var(--theme-art); background-size:200% 100%; background-position:left bottom; background-repeat:no-repeat; }
.sheet-theme .weed { background-image:var(--theme-art); background-size:200% 200%; background-position:right bottom; }
.seasonal-theme .desert-sun { background:#f4dfb5a6; box-shadow:0 0 65px #f3deb135; }
.seasonal-theme .seasonal-decor { display:block; position:absolute; top:18%; right:6%; width:29%; height:120px; pointer-events:none; }
.seasonal-decor span { position:absolute; width:40px; height:40px; color:var(--season-accent); opacity:.35; text-align:center; font:40px Georgia,serif; }
.seasonal-decor span::before { content:'✧'; }
.seasonal-decor span:nth-child(2) { right:10%; top:42px; font-size:27px; opacity:.25; }
.seasonal-decor span:nth-child(3) { right:36%; top:-24px; font-size:20px; opacity:.25; }
[data-decoration='snow'] .seasonal-decor span::before { content:'❄'; }
[data-decoration='flower'] .seasonal-decor span::before,[data-decoration='poppy'] .seasonal-decor span::before { content:'✿'; }
[data-decoration='heart'] .seasonal-decor span::before { content:'♡'; }
[data-decoration='clover'] .seasonal-decor span::before { content:'♧'; }
[data-decoration='leaf'] .seasonal-decor span::before,[data-decoration='harvest'] .seasonal-decor span::before { content:'❧'; }
[data-decoration='egg'] .seasonal-decor span::before { content:'◌'; }
[data-decoration='sun'] .seasonal-decor span::before { content:'☼'; }
[data-decoration='star'] .seasonal-decor span::before { content:'✦'; }
[data-decoration='freedom'] .seasonal-decor span::before { content:'✷'; }
[data-decoration='holly'] .seasonal-decor span::before { content:'❦'; }
[data-decoration='peace'] .seasonal-decor span::before { content:'❧'; }
[data-decoration='bat'] .seasonal-decor span { height:18px; background:#655269; clip-path:polygon(0 9%,26% 30%,39% 15%,45% 30%,50% 0,55% 30%,61% 15%,74% 30%,100% 9%,83% 77%,66% 64%,50% 100%,34% 64%,17% 77%); }
[data-decoration='bat'] .seasonal-decor span::before { content:''; }
[data-decoration='bat'] .seasonal-decor span:nth-child(2) { width:27px; height:13px; }
[data-decoration='bat'] .seasonal-decor span:nth-child(3) { width:20px; height:10px; }
body.halloween-theme .desert-sun { background:radial-gradient(circle at 35% 30%,#d4bca23b 0 9%,transparent 10%),radial-gradient(circle at 64% 62%,#d4bca240 0 13%,transparent 14%),#f9e9bf; }
[data-decoration='poppy'] .seasonal-decor span:nth-child(n+2),[data-decoration='peace'] .seasonal-decor span:nth-child(n+2) { display:none; }
.theme-gallery { height:auto; min-height:100dvh; background:#faf6ec; }
.theme-gallery-header { display:flex; justify-content:space-between; gap:20px; padding:24px max(5vw,20px); border-bottom:1px solid #ded5c3; }
.theme-gallery a { color:#315d3d; }
.theme-gallery main { width:min(1180px,92%); margin:40px auto 70px; }
.theme-gallery h1 { font:600 clamp(2.6rem,5vw,4rem) Georgia,serif; margin:12px 0; }
.theme-gallery main>p { line-height:1.7; max-width:760px; color:#667568; }
.theme-gallery form,#themes form { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin:24px 0; }
.theme-gallery input,.theme-gallery button,#themes input,#themes button { padding:10px; border:1px solid #cbd8c7; border-radius:8px; font:inherit; background:#fffef9; color:#315d3d; }
.theme-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr)); gap:20px; }
.theme-card { padding:20px; border:1px solid #ded5c3; border-radius:18px; background:#fffdf6; }
.theme-card h2 { font:600 1.3rem Georgia,serif; }
.theme-card p { font-size:.85rem; color:#6c7366; line-height:1.5; }
.theme-card-art { height:180px; padding:8px; border-radius:12px; background:linear-gradient(150deg,#faf3e5,#efe2cd); }
.theme-card-art img { height:100%; width:100%; object-fit:contain; }
@media(max-width:760px) {
  .seasonal-theme .welcome { justify-content:flex-start; padding-top:8vh; }
  .seasonal-theme .welcome h1 { max-width:100%; font-size:clamp(2.6rem,8vw,4.5rem); }
  .seasonal-theme .welcome .seasonal-note { margin-bottom:20px; }
  .seasonal-theme .home-companions { width:43%; height:32%; bottom:7%; right:5%; }
  .seasonal-theme .seasonal-decor { top:10%; right:3%; height:80px; }
}
@media(max-width:520px) {
  .seasonal-theme .welcome { padding-top:5vh; }
  .seasonal-theme .welcome>p:not(.eyebrow):not(.seasonal-note) { max-width:88%; font-size:1rem; }
  .seasonal-theme .welcome .eyebrow { max-width:85%; font-size:.65rem; }
  .seasonal-theme .welcome .seasonal-note { font-size:.68rem; margin-bottom:18px; }
  .seasonal-theme .home-companions { height:29%; width:52%; bottom:6%; }
  .sheet-theme .seasonal-brand { height:46px; width:24px; }
  .theme-gallery-header { font-size:.85rem; }
  .seasonal-preview-reset { max-width:35%; font-size:.7rem; line-height:1.4; bottom:20px; }
}
@media(max-height:650px) {
  .seasonal-theme .welcome { justify-content:center; padding-top:24px; padding-bottom:24px; }
  .seasonal-theme .welcome .seasonal-note { margin-bottom:14px; }
  .seasonal-theme .home-companions { height:43%; width:26%; bottom:6%; }
  .seasonal-preview-reset { bottom:4px; }
}

/* Audited theme registry palettes and bundled artwork. */
body[data-theme=winter] { --season-accent:#416279; --season-soft:#e7edf0; --season-ink:#647e83; --theme-art:url(/seasonal/art/winter.webp); }
body[data-theme=spring] { --season-accent:#53714b; --season-soft:#e8edda; --season-ink:#768557; --theme-art:url(/seasonal/art/spring.webp); }
body[data-theme=summer] { --season-accent:#9b5729; --season-soft:#f3e3bd; --season-ink:#72844e; --theme-art:url(/seasonal/art/summer.webp); }
body[data-theme=autumn] { --season-accent:#9e502c; --season-soft:#efddc5; --season-ink:#81734d; --theme-art:url(/seasonal/art/autumn.webp); }
body[data-theme=new-year] { --season-accent:#72537b; --season-soft:#eae0eb; --season-ink:#8a7445; --theme-art:url(/seasonal/art/new-year.webp); }
body[data-theme=mlk-day] { --season-accent:#5c6582; --season-soft:#e7e8f0; --season-ink:#687e80; --theme-art:url(/seasonal/art/winter.webp); }
body[data-theme=valentines] { --season-accent:#a34358; --season-soft:#f4dfe2; --season-ink:#94716b; --theme-art:url(/seasonal/art/valentines.webp); }
body[data-theme=presidents-day] { --season-accent:#485d80; --season-soft:#e6e8ef; --season-ink:#937858; --theme-art:url(/seasonal/art/patriotic.webp); }
body[data-theme=st-patricks] { --season-accent:#477344; --season-soft:#e3edd9; --season-ink:#827b43; --theme-art:url(/seasonal/art/st-patricks.webp); }
body[data-theme=easter] { --season-accent:#826284; --season-soft:#ede3ee; --season-ink:#7b8b5a; --theme-art:url(/seasonal/art/easter.webp); }
body[data-theme=mothers-day] { --season-accent:#9b5966; --season-soft:#f2e4df; --season-ink:#768759; --theme-art:url(/seasonal/art/spring.webp); }
body[data-theme=memorial-day] { --season-accent:#685b65; --season-soft:#e9e4e2; --season-ink:#73808b; --theme-art:url(/seasonal/art/patriotic.webp); }
body[data-theme=juneteenth] { --season-accent:#327363; --season-soft:#e0ede3; --season-ink:#9c5a43; --theme-art:url(/seasonal/art/summer.webp); }
body[data-theme=fathers-day] { --season-accent:#526e87; --season-soft:#e4ebeb; --season-ink:#8b794f; --theme-art:url(/seasonal/art/summer.webp); }
body[data-theme=independence-day] { --season-accent:#a2463e; --season-soft:#f0e1db; --season-ink:#516e91; --theme-art:url(/seasonal/art/patriotic.webp); }
body[data-theme=labor-day] { --season-accent:#467778; --season-soft:#e0ece6; --season-ink:#90834e; --theme-art:url(/seasonal/art/summer.webp); }
body[data-theme=indigenous-peoples-day] { --season-accent:#7a5d42; --season-soft:#ece3d3; --season-ink:#667a63; --theme-art:url(/seasonal/art/autumn.webp); }
body[data-theme=halloween] { --season-accent:#a84e2e; --season-soft:#efdfcb; --season-ink:#7d8762; }
body[data-theme=veterans-day] { --season-accent:#526580; --season-soft:#e3e8ed; --season-ink:#8a7b60; --theme-art:url(/seasonal/art/patriotic.webp); }
body[data-theme=thanksgiving] { --season-accent:#9b522e; --season-soft:#f0dfc6; --season-ink:#807349; --theme-art:url(/seasonal/art/thanksgiving.webp); }
body[data-theme=christmas] { --season-accent:#9c4144; --season-soft:#eee3d9; --season-ink:#54735c; --theme-art:url(/seasonal/art/christmas.webp); }
