/* User-requested Halloween night theme; shared controls and behaviour stay intact. */
:root{
  color-scheme:dark;
  --paper:#15131e;
  --ink:#f5eddf;
  --muted:#c4b8cf;
  --purple:#f4b653;
  --purple-deep:#ffd087;
  --lavender:#3a2b45;
  --white:#241f30;
  --line:#51445f;
  --error:#ffbdac;
  --success:#b0dfb7;
  --control-border:#8b789b;
  --on-action:#251a26;
  background:var(--paper);
}
body{background:var(--paper) url('halloween-night.svg') center top / max(1600px,100vw) auto no-repeat;min-height:100vh}
::selection{background:#f4b653;color:#251a26}
html{scrollbar-color:#8e719f var(--paper)}
.page{position:relative}
.topbar{border-color:#51445f}
.brand{color:#f4b653}
.help-link{border-color:var(--control-border);background:#241f30;color:#f6dcae}
.help-link:hover{background:#3a2b45}
.intro{padding-top:30px;padding-bottom:24px;min-height:192px}
.intro h1{color:var(--ink);font-size:clamp(2.1rem,4.8vw,3.6rem)}
.intro-copy{max-width:740px}
.season-picture{width:210px;height:auto;filter:none}
.activity{border-color:#51445f;background:#241f30}
.activity:hover{border-color:#b991b7}
.activity-name{color:#f5eddf}
.activity:has(input:checked){border-color:#f4b653;background:#3a2b45}
.activity:has(input:checked):hover{border-color:#ffd087}
.activity-face{isolation:isolate}
.activity-face img{filter:saturate(.78) brightness(.88)}
.bike{background:#c8cdb9}.holland,.archery{background:#d2b9ab}.food{background:#d3c59f}
.boat{background:#bccad0}.fishing{background:#bdcec4}.park{background:#c5c7ae}.skating{background:#c9c2d5}
.choice-check{background:#2a2236;border-color:#917b9f;color:transparent;z-index:1}
.activity:has(input:checked) .choice-check{background:#f4b653;color:#251a26;border-color:#f4b653}
.idea-card{background:#2f2539;border-color:#806446}
.idea-card .activity-face img{filter:none}
.idea-card:hover{border-color:#d9a64e}
textarea{border-color:var(--control-border);background:#241f30;color:#f5eddf}
textarea::placeholder{color:#b9acc5}
.submit-bar{background:#15131e;border-color:#51445f}
.primary-button,.primary-button[aria-busy=true]{background:#f4b653;color:#251a26}
.primary-button:hover:not(:disabled){background:#ffd087}
.primary-button:disabled{background:#65516c;color:#e2d6e8}
.secondary-button{background:#3a2b45;color:#ffd087}
.secondary-button:hover{background:#51395e}
.text-button{color:#ffd087}
.error,.connection-notice{color:#ffbdac;background:#3a222b}
.help-symbol{border-color:#917b9f}
.help-panel summary,.help-default{color:#f6dcae}
.help-default svg{background:#3a2b45;color:#f4b653}
.saved-choice{background:#3a2b45;color:#f5eddf}
.success-illustration circle{fill:#263c35}
.success-illustration path{stroke:#b0dfb7}
.success-panel h2{color:#f5eddf}
.skip-link{background:#241f30;color:#f5eddf}
@media(max-width:900px){.season-picture{width:165px}.intro h1{font-size:clamp(2.1rem,4.8vw,3.3rem)}}
@media(max-width:650px){
  body{background-size:1100px auto}
  .intro{padding-top:28px;padding-bottom:24px;min-height:0}
  .intro h1{font-size:38px;max-width:265px}
  .intro-copy{max-width:none}
  .season-picture{width:111px;top:20px;right:-10px}
  .activity{border-color:#63516e}
  .submit-bar{border-color:#806446}
}
@media(max-width:360px){.intro h1{font-size:34px;max-width:245px}.season-picture{width:84px;top:28px;right:-9px}}
@media(prefers-reduced-motion:reduce){.season-picture{animation:none}}
