/* Indie Streams design layer — scoped to body.isaw-theme-on. WordPress/music plugins remain untouched. */
html body.isaw-theme-on {
  --isaw-accent-dark:#dcc362;--isaw-accent-light:#702b92;
  --isaw-bg-dark:#0c0718;--isaw-bg-light:#f7f4fb;
  --isaw-panel-dark:#241532;--isaw-panel-light:#ffffff;
  --isaw-text-dark:#fffefa;--isaw-text-light:#20152a;
  --isaw-accent:var(--isaw-accent-dark);--isaw-page-bg:var(--isaw-bg-dark);
  --isaw-panel:var(--isaw-panel-dark);--isaw-ink:var(--isaw-text-dark);
  --isaw-panel-opacity:.86;
  background-color:transparent!important;color:var(--isaw-ink);isolation:isolate;min-height:100%;
}
html[data-isaw-mode="light"] body.isaw-theme-on {
  --isaw-accent:var(--isaw-accent-light);--isaw-page-bg:var(--isaw-bg-light);
  --isaw-panel:var(--isaw-panel-light);--isaw-ink:var(--isaw-text-light);
  --isaw-panel-opacity:.91;
}
/* The wall is behind every existing block, not atop the site's interactive controls. */
body.isaw-theme-on .isaw-global-backdrop {position:fixed;inset:0;z-index:-1;isolation:isolate;overflow:hidden;pointer-events:none;background:var(--isaw-page-bg);}
body.isaw-theme-on .isaw-global-backdrop .isaw-wall {inset:-7% -4%;z-index:0;}
body.isaw-theme-on .isaw-global-backdrop .isaw-track {animation-play-state:running;}
body.isaw-theme-on .isaw-global-veil {position:absolute;z-index:1;inset:0;background:linear-gradient(125deg,rgba(6,5,20,.67),rgba(34,11,60,.45),rgba(7,6,19,.8)),linear-gradient(180deg,rgba(10,6,22,.36),rgba(9,5,23,.74));}
html[data-isaw-mode="light"] body.isaw-theme-on .isaw-global-veil {background:linear-gradient(135deg,rgba(251,247,255,.74),rgba(247,239,254,.78)),linear-gradient(180deg,rgba(255,255,255,.40),rgba(253,247,254,.70));}
/* Let the mosaic show through common WordPress theme shells, while preserving individual feature cards. */
body.isaw-theme-on :is(#page,.site,#content,.site-content,.content-area,.site-main,.wp-site-blocks) {background-color:transparent!important;}
body.isaw-theme-on :is(.entry-title,.page-title,.wp-block-post-title) {color:var(--isaw-ink)!important;text-shadow:0 3px 23px rgba(0,0,0,.25);}
body.isaw-theme-on:not(.home):not(.front-page) :is(.entry-content,.page-content) {
  background:color-mix(in srgb,var(--isaw-panel) 87%,transparent);
  border:1px solid color-mix(in srgb,var(--isaw-accent) 21%,transparent);
  border-radius:14px;padding:clamp(14px,2.5vw,30px);
  box-shadow:0 15px 48px rgba(0,0,0,.18);color:var(--isaw-ink);
}
/* Keep ordinary text readable; do not overwrite nested DJ/playlist/widget UI styling. */
body.isaw-theme-on:not(.home) :is(.entry-content,.page-content) > :is(p,ul,ol,blockquote,h1,h2,h3,h4,h5,h6) {color:var(--isaw-ink);}
body.isaw-theme-on:not(.home) :is(.entry-content,.page-content) > :is(h1,h2,h3,h4) {text-wrap:balance;}
body.isaw-theme-on:not(.home) :is(.entry-content,.page-content) > p a {color:var(--isaw-accent);text-underline-offset:3px;}
/* WordPress headers and menus harmonize without disrupting their positioning. */
body.isaw-theme-on :is(.site-header,header.site-header) {background:color-mix(in srgb,var(--isaw-panel) 90%,transparent);border-color:color-mix(in srgb,var(--isaw-accent) 30%,transparent);}
body.isaw-theme-on :is(.site-header,.site-title,.main-navigation,.primary-navigation) a {color:var(--isaw-ink);}
body.isaw-theme-on :is(.main-navigation,.primary-navigation) a:hover {color:var(--isaw-accent);}
/* The original uploaded logo has a white canvas, so present it intact on a clean light backing. */
.isaw-hero .isaw-brand-logo.isaw-official-artwork {max-width:min(62vw,240px);background:#fff;padding:9px;border-radius:16px;box-shadow:0 14px 45px rgba(0,0,0,.38);}
.isaw-hero .isaw-brand-logo.isaw-official-artwork .isaw-logo-img {display:block;max-height:248px;max-width:100%;height:auto;width:auto;filter:none;border-radius:10px;}
.isaw-hero .isaw-brand {gap:10px;}
.isaw-hero .isaw-brand-tagline {text-shadow:0 2px 15px rgba(0,0,0,.9);}
.isaw-mini-brand {position:relative;max-width:100%;z-index:5;display:flex;justify-content:center;padding:14px 20px 0;}
.isaw-mini-logo {display:inline-flex;align-items:center;justify-content:center;padding:5px;max-width:180px;animation:isaw-fade-up .95s both;}
.isaw-mini-logo.isaw-official-artwork {background:#fff;border-radius:10px;box-shadow:0 7px 23px rgba(0,0,0,.23);}
.isaw-mini-logo .isaw-logo-img {display:block;max-width:100%;max-height:95px;width:auto;height:auto;object-fit:contain;}
/* Global Light / Dark visitor switch, keyboard accessible and independent of membership. */
body.isaw-theme-on .isaw-mode-toggle {box-sizing:border-box;position:fixed;z-index:100000;bottom:18px;right:18px;display:inline-flex;align-items:center;justify-content:center;width:52px;min-width:52px;max-width:52px;height:52px;min-height:52px;max-height:52px;aspect-ratio:1 / 1;padding:0;margin:0;line-height:1;border-radius:50%;border:1px solid color-mix(in srgb,var(--isaw-accent) 72%,transparent);background:var(--isaw-panel);color:var(--isaw-accent);box-shadow:0 6px 24px rgba(0,0,0,.28);cursor:pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:transform .2s,background .2s;}
body.isaw-theme-on .isaw-mode-toggle:hover {transform:translateY(-3px);}
body.isaw-theme-on .isaw-mode-toggle:focus-visible {outline:3px solid var(--isaw-accent);outline-offset:3px;}
body.isaw-theme-on .isaw-mode-symbol {font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:29px;line-height:1;color:var(--isaw-accent);display:block;transform:translateY(-1px);}
body.isaw-theme-on .isaw-mode-toggle .isaw-mode-label {display:none!important;}
/* Page-specific appearance also flows into the hero buttons, contrast, and overlay. */
body.isaw-theme-on .isaw-hero .isaw-primary {background:var(--isaw-accent-dark);border-color:var(--isaw-accent-dark);}
html[data-isaw-mode="light"] body.isaw-theme-on .isaw-hero {color:var(--isaw-text-light);background:var(--isaw-bg-light);}
html[data-isaw-mode="light"] body.isaw-theme-on .isaw-hero .isaw-veil {background:linear-gradient(100deg,rgba(255,252,255,.87),rgba(250,243,255,.70),rgba(248,244,255,.89));}
html[data-isaw-mode="light"] body.isaw-theme-on .isaw-hero .isaw-glow {opacity:.27;}
html[data-isaw-mode="light"] body.isaw-theme-on .isaw-hero .isaw-intro h1 {color:var(--isaw-text-light)!important;text-shadow:0 2px 25px rgba(255,255,255,.75);}
html[data-isaw-mode="light"] body.isaw-theme-on .isaw-hero .isaw-subhead,
html[data-isaw-mode="light"] body.isaw-theme-on .isaw-hero .isaw-brand-tagline {color:var(--isaw-text-light);text-shadow:none;}
html[data-isaw-mode="light"] body.isaw-theme-on .isaw-hero .isaw-eyebrow {color:var(--isaw-accent-light);}
html[data-isaw-mode="light"] body.isaw-theme-on .isaw-hero .isaw-primary {background:var(--isaw-accent-light);border-color:var(--isaw-accent-light);color:#fff!important;}
html[data-isaw-mode="light"] body.isaw-theme-on .isaw-hero .isaw-secondary {background:rgba(255,255,255,.68);border-color:var(--isaw-accent-light);color:var(--isaw-text-light)!important;}
html[data-isaw-mode="light"] body.isaw-theme-on .isaw-hero .isaw-nav {background:rgba(255,255,255,.85);}
html[data-isaw-mode="light"] body.isaw-theme-on .isaw-hero .isaw-nav a {color:var(--isaw-text-light)!important;}
html[data-isaw-mode="light"] body.isaw-theme-on .isaw-hero .isaw-nav a:hover {color:var(--isaw-accent-light)!important;}
@media(max-width:600px){body.isaw-theme-on .isaw-mode-toggle {bottom:calc(12px + env(safe-area-inset-bottom, 0px));right:12px;padding:0;width:48px;min-width:48px;max-width:48px;height:48px;min-height:48px;max-height:48px} .isaw-hero .isaw-brand-logo.isaw-official-artwork{max-width:min(46vw,192px);padding:5px}.isaw-hero .isaw-brand-logo.isaw-official-artwork .isaw-logo-img{max-height:200px}}
@media(prefers-reduced-motion:reduce){body.isaw-theme-on .isaw-global-backdrop .isaw-track,.isaw-mini-logo{animation:none!important}body.isaw-theme-on .isaw-mode-toggle{transition:none!important}}
