/* Day colors come from TPV's business card; night retains the After Hours palette.
   Text accents use a deeper blue than the decorative logo so small links stay readable. */
:root{--brand-blue:#0eb7ff;--brand-purple:#601ce9;--paper-texture:none;--fog-color:151,154,204;--texture-opacity:.03}
:root[data-theme=night]{color-scheme:dark}
:root[data-theme=day]{--bg:#fdfef8;--panel:#f3f2e9;--cream:#1c1a18;--muted:#625e58;--blue:#1765a6;--purple:#423f9f;--pink:#c30068;--line:#423f9f32;--brand-blue:#3a82ca;--brand-purple:#423f9f;--fog-color:131,133,179;--texture-opacity:.05;--paper-texture:radial-gradient(ellipse at center,#625e5808 .6px,transparent .85px),radial-gradient(ellipse at center,#625e5806 .6px,transparent .9px);color-scheme:light}
.theme-toggle{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;gap:9px;min-width:44px;min-height:44px;padding:8px 10px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--cream);font-size:16px;font-weight:750;line-height:1.2;transition:color .2s ease,border-color .2s ease,background .2s ease}
.theme-toggle-icon{position:relative;display:block;width:21px;height:21px}
.theme-toggle-icon>.icon,.theme-toggle-icon>svg{position:absolute;inset:0;width:21px;height:21px}
.theme-toggle-icon>:last-child{display:none}
[data-theme=day] .theme-toggle-icon>:first-child{display:none}
[data-theme=day] .theme-toggle-icon>:last-child{display:block}
.theme-toggle[aria-pressed=true]{border-color:#423f9f66;background:#423f9f08}
.theme-preference{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 16px;font-size:15px;line-height:1.4;color:var(--muted)}
.theme-preference [data-theme-system]{min-height:44px;padding:8px 0;border:0;background:transparent;color:var(--blue);font-size:15px;text-decoration:underline;text-underline-offset:4px}
.theme-preference [data-theme-system]:disabled{cursor:default;color:var(--muted);text-decoration:none;opacity:1}
@media(hover:hover){.theme-toggle:hover{border-color:var(--blue);color:var(--blue);background:#0eb7ff0b}}
@media(max-width:600px){.theme-toggle{width:44px;padding-inline:8px}.theme-toggle [data-theme-label]{display:none}.header-bar{gap:10px}}
@media(max-width:360px){.theme-toggle{width:40px;min-width:40px;padding-inline:6px}.header-bar{gap:6px}.header-request{font-size:12px;padding-inline:7px}}

/* Apply the paper grain to surfaces, rather than placing a fixed overlay over controls. */
[data-theme=day] body{background-color:var(--bg);background-image:var(--paper-texture);background-size:7px 9px,11px 13px;background-position:0 0,3px 6px}
[data-theme=day] ::selection{background:var(--purple);color:#fdfef8}
[data-theme=day] .section--tinted{background-color:#eeefe7;background-image:var(--paper-texture);background-size:7px 9px,11px 13px}
[data-theme=day] :is(.site-header,.logo-intro){background-color:var(--bg)}
[data-theme=day] .logo-intro{background-image:var(--paper-texture);background-size:7px 9px,11px 13px}
[data-theme=day] .intro-light{background:radial-gradient(ellipse at 29% 45%,#3a82ca0c,transparent 48%),radial-gradient(ellipse at 79% 58%,#423f9f10,transparent 45%)}
[data-theme=day] .intro-cue{color:var(--muted)}
[data-theme=day] .menu-panel{background:radial-gradient(ellipse at 85% 20%,#423f9f0a,transparent 50%),radial-gradient(ellipse at 10% 95%,#ff007f05,transparent 45%),var(--bg)}
[data-theme=day] .header-request{border-color:#1765a670;background:#1765a608;color:var(--blue)}
[data-theme=day] .eyebrow{color:var(--purple)}
[data-theme=day] .button{background:var(--blue);color:#fdfef8}
[data-theme=day] .button--secondary{background:transparent;color:var(--blue);border-color:var(--blue)}
[data-theme=day] .button--text{background:transparent;color:var(--cream)}
[data-theme=day] .quiet-link{color:var(--blue)}
[data-theme=day] .home-hero{background:radial-gradient(ellipse at 50% 5%,#3a82ca0c,transparent 60%)}
[data-theme=day] .sound-art{color:var(--brand-blue)}
[data-theme=day] :is(.feature-card,.resource-card,.simple-card,.price-card,.article-card,.aside-card){background-color:#f8f8ef;background-image:var(--paper-texture);background-size:7px 9px,11px 13px}
[data-theme=day] .card-art{background:radial-gradient(ellipse at center,#3a82ca14,transparent 68%)}
[data-theme=day] .art-icon{color:var(--blue)}
[data-theme=day] .event-art{background:radial-gradient(ellipse at center,#423f9f16,transparent 65%);color:var(--purple)}
[data-theme=day] .event-orbit{border-color:#423f9f40}
[data-theme=day] .event-orbit:before{border-color:#423f9f25}
[data-theme=day] .statement-panel{background:linear-gradient(120deg,#efefe8,#f6f4ed)}
[data-theme=day] .statement-art{color:var(--purple)}
[data-theme=day] .detail-row{color:var(--muted)}
[data-theme=day] :is(.detail-row .icon,.simple-card>.icon,.resource-card>.icon:first-child){color:var(--blue)}
[data-theme=day] .notice{background:#eaf0f2}
[data-theme=day] .price-card--featured{background:linear-gradient(145deg,#e8eef1,#f0edf4);border-color:#1765a680;box-shadow:inset 0 3px var(--purple)}
[data-theme=day] .article-meta{color:var(--muted)}
[data-theme=day] .donation-panel{background:linear-gradient(115deg,#eaf0ee,#f0edf3)}
[data-theme=day] .optional{color:var(--muted)}
[data-theme=day] :is(.field input,.field textarea,.field select){border-color:#827e77;background:#fdfef8;color:var(--cream)}
[data-theme=day] :is(.field input,.field textarea)::placeholder{color:#716c65;opacity:1}
[data-theme=day] :is(.field input,.field textarea)[aria-invalid=true]{border-color:#a31346}
[data-theme=day] .field-error{color:#a31346}
[data-theme=day] .form-status[data-state=error]{border-color:#a3134666;background:#a3134609}
[data-theme=day] .form-status[data-state=success]{border-color:#23754d80;background:#23754d0b}
[data-theme=day] .request-dialog{background:var(--bg);border-color:#423f9f55}
[data-theme=day] .request-dialog::backdrop{background:#201c3d85;backdrop-filter:blur(5px)}
[data-theme=day] .dialog-close{background:var(--panel)}
[data-theme=day] .dialog-fallback a{color:var(--blue)}
[data-theme=day] .request-confirmation-icon{background:#423f9f0b;border-color:#423f9f66;color:var(--purple)}
[data-theme=day] .youtube-status{color:var(--purple)}
[data-theme=day] .youtube-status[data-state=loading]{color:var(--muted)}
[data-theme=day] .site-footer{background:#eeefe7}
[data-theme=day] .site-footer nav>a{color:var(--muted)}
[data-theme=day] .footer-bottom p{color:var(--muted)}
/* Preserve the bright brand pink for the large active menu labels. */
[data-theme=day] .menu-links>a:is([aria-current=page],[aria-current=true]),[data-theme=day] .nav-submenu>a[aria-current=page]{color:#ff007f}
@media(hover:hover){
  [data-theme=day] .button:hover{background:var(--purple);color:#fdfef8;border-color:var(--purple)}
  [data-theme=day] .button--secondary:hover{background:#1765a60c;color:var(--blue);border-color:var(--blue)}
  [data-theme=day] .button--text:hover{background:transparent;color:var(--blue);border-color:transparent}
  [data-theme=day] .header-request:hover{background:#1765a615;border-color:var(--blue)}
  [data-theme=day] .resource-card:hover{background:#eef0ed;border-color:#1765a680}
  [data-theme=day] .intro-cue:hover{color:var(--cream)}
}
@media(prefers-reduced-motion:reduce){.theme-toggle{transition:none}}
