/* Shared additions. The original palette/layout stays intact in Classic. */
.neon-only{display:none}
.theme-switch{display:flex;align-items:center;padding:4px;gap:3px;border:1px solid var(--line);border-radius:100px;background:var(--white)}
.theme-switch button{min-height:34px;border-radius:100px;padding:6px 13px;font-size:11px;white-space:nowrap;color:var(--muted)}
.theme-switch button[aria-pressed=true]{background:var(--green);color:var(--white)}
.theme-switch button span{margin-right:3px}
.source-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px;padding:9px 11px;border:1px solid var(--line);border-radius:6px;background:var(--paper);font-size:9px;color:var(--muted)}
.source-banner>span:first-child{font-size:8px;letter-spacing:1px;font-weight:700;white-space:nowrap}
.listening-faq{margin-top:20px;border:1px solid var(--line);border-radius:12px;background:var(--white)}
.listening-faq summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:19px 25px;font-size:13px;list-style:none}
.listening-faq summary::-webkit-details-marker{display:none}
.listening-faq summary:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.listening-faq .faq-plus{font-size:22px;line-height:1;color:var(--muted)}
.listening-faq[open] .faq-plus{transform:rotate(45deg)}
.listening-faq>div{padding:0 25px 20px;max-width:960px;color:var(--muted);font-size:12px;line-height:1.9}
.listening-faq p+p{margin-top:10px}
.listening-faq strong{color:var(--ink);font-weight:500}
.dialog-themes{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;margin:18px 0}
.dialog-themes>.theme-switch{flex-shrink:0}
.library-strip{display:flex;align-items:center;gap:16px;margin:0 0 14px;font-size:11px}
.library-strip label{font-size:8px;letter-spacing:1.2px;color:var(--muted);font-weight:700}
.library-strip select{font:inherit;background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:7px;padding:10px 34px 10px 12px;min-width:205px;max-width:100%;cursor:pointer}
.library-strip a{margin-left:auto;color:var(--muted);font-size:11px}
.library-strip a:hover,.song-attribution a:hover{text-decoration:underline}
.song-attribution{display:flex;gap:12px;font-size:9px;color:var(--muted);margin:9px 2px 0;line-height:1.7}
.song-attribution a{text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
[data-theme=neon] .library-strip select{background:#24122f;border-color:#764573;min-height:43px;color:#f4d5eb}
[data-theme=neon] .library-strip a{color:#e994d0}
[data-theme=neon] .song-attribution{color:#bc9fcb}
[data-theme=neon] .song-attribution a{color:#eda7d9}
:root{--score-grid:#e1e6d6;--score-label:#768269;--score-selection:#edf1e4;--score-muted:#b3bba7;--score-line:#e2e7d9;--score-note:#c8d0bc;--score-text:#fffef4;--score-cursor:#475c39;--score-soprano:#9a755c;--score-alto:#8e8b64;--score-tenor:#657c51;--score-bass:#728298}

/* NEON: a nocturnal rehearsal stage, with room for four distinct voices. */
html[data-theme=neon]{color-scheme:dark;--paper:#10071e;--white:#1c102f;--ink:#f7f0ff;--muted:#b5a3cd;--line:#493259;--green:#f627a3;--lime:#fd67c7;--orange:#7df2e2;--score-grid:#513767;--score-label:#bea9d4;--score-selection:#321b48;--score-muted:#a994c0;--score-line:#51365f;--score-note:#836399;--score-text:#160821;--score-cursor:#ff73d0;--score-soprano:#ff79cf;--score-alto:#bba0ff;--score-tenor:#73e8d6;--score-bass:#8dbeff}
[data-theme=neon] .classic-only{display:none}
[data-theme=neon] .neon-only{display:block}
[data-theme=neon] body{background:radial-gradient(ellipse 65% 36% at 90% 0%,#35125080,transparent 80%),radial-gradient(ellipse 48% 25% at 0% 40%,#5d124526,transparent 80%),#10071e;font-family:Arial,Helvetica,sans-serif}
[data-theme=neon] body::before{content:'';position:fixed;inset:0;background-image:radial-gradient(#b981ff32 .65px,transparent .65px);background-size:32px 32px;pointer-events:none;opacity:.3;z-index:-1}
[data-theme=neon] .shell{width:min(1260px,calc(100% - 96px))}
[data-theme=neon] .site-header{height:102px;border-color:#63385e75}
[data-theme=neon] .brand{font-size:28px;letter-spacing:-1.3px;font-weight:800}
[data-theme=neon] .brand>span:not(.version){font-weight:400;color:#ff73d0}
[data-theme=neon] .brand svg{stroke:#ff43b4;filter:drop-shadow(0 0 9px #ed229469);width:35px;height:38px;margin-right:12px}
[data-theme=neon] .brand .version{color:#f282d1;border-color:#683858;letter-spacing:1.4px;font-size:8px;border-radius:4px;padding:4px 6px;margin-left:15px}
[data-theme=neon] .header-end{gap:25px}
[data-theme=neon] .theme-switch{border-color:#543461;background:#20102e;padding:4px}
[data-theme=neon] .theme-switch button{font-size:11px;min-height:35px;padding:7px 15px;color:#c1afd2}
[data-theme=neon] .theme-switch button[aria-pressed=true]{background:#f52ca8;color:#22091d;font-weight:700;box-shadow:0 0 20px #ef299826}
[data-theme=neon] .text-button{color:#c7b4d8;font-size:12px;min-height:44px}
[data-theme=neon] .intro{position:relative;display:grid;grid-template-columns:1.3fr 1fr;gap:10px;padding:43px 0 35px;min-height:415px}
[data-theme=neon] .intro-content{position:relative;z-index:1}
[data-theme=neon] .eyebrow{font-size:10px;font-weight:700;letter-spacing:1.9px;color:#be9fcf}
[data-theme=neon] .tiny-line{background:#ff45b7;width:26px;box-shadow:0 0 12px #ff28a4}
[data-theme=neon] h1{font-size:clamp(54px,6.2vw,86px);font-weight:900;line-height:.99;letter-spacing:-4.5px;margin:21px 0 22px;max-width:760px}
[data-theme=neon] h1 em{font-family:inherit;font-weight:900;font-style:normal;color:#ff57bc;background:linear-gradient(105deg,#ff3ca7 5%,#f86ddb 62%,#a48dff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;padding-right:5px}
[data-theme=neon] .intro-copy{font-size:15px;line-height:1.8;color:#c4b0d3}
[data-theme=neon] .hero-tags{display:flex;align-items:center;gap:24px;margin-top:24px;color:#c4a9d8;font-size:8px;font-weight:600;letter-spacing:1.4px}
[data-theme=neon] .hero-tags>span:first-child{display:flex;gap:7px;align-items:center}
[data-theme=neon] .hero-tags i{width:5px;height:5px;border-radius:50%;background:#ff54c2;box-shadow:0 0 10px #ff49b0}
[data-theme=neon] .hero-tags>span:last-child{color:#8d789f;font-size:7px}
[data-theme=neon] .frequency-art{position:relative;width:100%;max-width:440px;justify-self:end;align-self:center;margin-top:-22px;isolation:isolate}
[data-theme=neon] .frequency-orbit{width:100%;display:block;overflow:visible}
[data-theme=neon] .orb-glow{position:absolute;width:63%;height:65%;top:16%;left:19%;z-index:-1;background:radial-gradient(ellipse,#bd3dec3b 0,#9e0b713b 42%,transparent 72%);filter:blur(20px)}
[data-theme=neon] .orb-outline{fill:none;stroke:#844cb552;stroke-width:1}
[data-theme=neon] .orb-outline.second{stroke:#ac4fd233;stroke-dasharray:2 7}
[data-theme=neon] .orbit-ring{stroke:url(#orbit-color);stroke-width:1.1;fill:none;opacity:.7}
[data-theme=neon] .orbit-ring.thin{stroke-width:.65;opacity:.4}
[data-theme=neon] .orb-core{fill:#1b0b2a;fill-opacity:.7;stroke:#c47dee55;stroke-width:1}
[data-theme=neon] .art-wave-layer{position:absolute;inset:0;pointer-events:none;transform-origin:center}
[data-theme=neon] .art-wave-svg{display:block;width:100%;height:100%;overflow:visible}
[data-theme=neon] .art-wave{filter:drop-shadow(0 0 8px #e646c84d)}
[data-theme=neon] body[data-playing=true] .art-wave-layer{will-change:transform;animation:frequency-breathe 1.4s ease-in-out infinite alternate}
[data-theme=neon] .orbit-dot{fill:#ff66c5;filter:drop-shadow(0 0 7px #ff2db1)}
[data-theme=neon] .orbit-dot.cyan{fill:#85dff7;filter:drop-shadow(0 0 5px #88d5ff)}
[data-theme=neon] .orbit-star{stroke:#e5afff;stroke-width:1;opacity:.7}
[data-theme=neon] .frequency-orbit text{display:none}
[data-theme=neon] .orb-label{position:absolute;inset:auto 9% 10%;display:flex;justify-content:space-between;color:#9e7ab8;font-size:7px;letter-spacing:1.2px}
[data-theme=neon] .song-card{background:linear-gradient(105deg,#3e1739 0,#291335 55%,#221030);border-color:#9b3d6b88;border-radius:16px;padding:22px 27px;min-height:147px;gap:25px;box-shadow:inset 3px 0 #ff43a7,0 9px 40px #04000b24}
[data-theme=neon] .song-card::after{content:'';position:absolute;right:0;inset-block:0;width:35%;background:repeating-linear-gradient(125deg,transparent,transparent 14px,#b04e9510 15px,#b04e9510 16px);pointer-events:none}
[data-theme=neon] .song-art{width:99px;height:99px;border-radius:10px;background:linear-gradient(145deg,#ef339e,#7837d1);box-shadow:0 4px 20px #e637ac2a;transform:rotate(-4deg)}
[data-theme=neon] .song-art svg{fill:#ffeaff;transform:rotate(4deg)}
[data-theme=neon] .song-art .staff{stroke:#fcb0e96b}
[data-theme=neon] .song-art .note-stem{stroke:#ffeaff}
[data-theme=neon] .song-description h2{font-family:Arial,sans-serif;font-size:35px;letter-spacing:-1px;font-weight:700;margin:4px 0;color:#fff5ff}
[data-theme=neon] .song-description>p:not(.eyebrow){font-size:12px;color:#d1b3d1}
[data-theme=neon] .song-description .eyebrow{font-size:8px;letter-spacing:1.5px;color:#ec97c7}
[data-theme=neon] .piece-tag{font-size:7px;letter-spacing:1px;background:#71305c55;color:#ffb1dc;border-color:#944f7888}
[data-theme=neon] .song-meta{color:#c8a8ce;font-size:11px;margin-top:13px;gap:11px}
[data-theme=neon] .song-meta i{background:#9d659c}
[data-theme=neon] .song-number{font-family:Arial,sans-serif;font-style:normal;font-weight:900;font-size:78px;letter-spacing:-7px;color:#6b326680;z-index:1;line-height:.95;padding-right:9px}
[data-theme=neon] .song-number span{font-size:7px;color:#bf83b0;letter-spacing:1.8px}
[data-theme=neon] .rehearsal-grid{grid-template-columns:330px 1fr;gap:24px;margin-top:24px}
[data-theme=neon] .setup-card,[data-theme=neon] .stage{border-radius:16px;border-color:#563366;background:#1b102b;box-shadow:0 15px 38px #03000922}
[data-theme=neon] .setup-card{padding:26px}
[data-theme=neon] legend{font-size:16px;font-weight:700;letter-spacing:-.3px;color:#f8eeff}
[data-theme=neon] .step{font-size:10px;color:#e06cba;letter-spacing:1.2px}
[data-theme=neon] .field-description{font-size:12px;color:#ac96be;margin:8px 0 18px}
[data-theme=neon] .voices{gap:7px}
[data-theme=neon] .voice-option{border-radius:10px;background:#251536;border-color:#583b69;padding:13px 0 11px;color:#dfcaed}
[data-theme=neon] .voice-option:hover{border-color:#cb69b1;background:#331c43}
[data-theme=neon] .voice-letter{font-family:Arial,sans-serif;font-weight:700;font-size:28px;line-height:1.2}
[data-theme=neon] .voice-name{font-size:9px;margin-top:8px}
[data-theme=neon] .voice-range{font-size:8px;color:#a88dbb;margin-top:5px}
[data-theme=neon] .voice-option:has(input:checked){background:linear-gradient(145deg,#ff3bab,#c41d85);border-color:#ff6bc1;color:#220e25;box-shadow:0 0 25px #f52da638,0 2px 2px #fa88d538 inset}
[data-theme=neon] .voice-option:has(input:checked) .voice-range{color:#440c35}
[data-theme=neon] .guidance-field{margin-top:28px}
[data-theme=neon] .mode-option{min-height:77px;border-color:#533365;border-radius:10px;padding:14px 12px;background:#21132e;gap:12px}
[data-theme=neon] .mode-option:hover{background:#291638;border-color:#875092}
[data-theme=neon] .mode-option:has(input:checked){background:linear-gradient(100deg,#391740,#2a1739);border-color:#d0459f;box-shadow:inset 3px 0 #f84db5}
[data-theme=neon] .mode-option strong{font-size:12px;color:#f6e9fc}
[data-theme=neon] .mode-option small{font-size:10px;color:#c5a7d4;line-height:1.6}
[data-theme=neon] .mode-icon{color:#f580c6;font-size:29px}
[data-theme=neon] .radio-indicator{border-color:#886491;width:13px;height:13px}
[data-theme=neon] .mode-option:has(input:checked) .radio-indicator{background:#fbd7f1;border:4px solid #f448b0}
[data-theme=neon] .small-note{color:#b09abe;padding-top:25px;align-items:flex-start}
[data-theme=neon] .small-note svg{color:#f480ce;margin-top:3px}
[data-theme=neon] .small-note p{font-size:11px;line-height:1.7}
[data-theme=neon] .stage{background:linear-gradient(145deg,#211233,#190e29);padding:27px 28px 23px;overflow:hidden}
[data-theme=neon] .stage::before{content:'';position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,#af63ff00,#e058baaa,#9774f5aa,#af63ff00)}
[data-theme=neon] .stage-top .eyebrow{font-size:9px;color:#c790d8}
[data-theme=neon] .stage-top h3{font-weight:700;font-size:23px;margin-top:6px;color:#fff0ff;letter-spacing:-.7px}
[data-theme=neon] .stage-top h3 span{font-weight:400;font-size:12px;letter-spacing:0;color:#bfa4d2;margin-left:3px}
[data-theme=neon] .player-status{color:#ceb9da;border-color:#64436e;background:#291833;padding:7px 11px;font-size:10px;gap:7px}
[data-theme=neon] .status-dot{background:#ae80cd}
[data-theme=neon] .player-status[data-state=playing],[data-theme=neon] .player-status[data-state=following]{background:#243a365c;border-color:#477167;color:#98e7d4}
[data-theme=neon] .player-status[data-state=playing] .status-dot,[data-theme=neon] .player-status[data-state=following] .status-dot{background:#80e7d0;box-shadow:0 0 9px #5ce5cd88}
[data-theme=neon] .player-status[data-state=holding]{color:#ffbe94;border-color:#906744;background:#5031236b}
[data-theme=neon] .player-status[data-state=holding] .status-dot{background:#ffc592}
[data-theme=neon] .source-banner{margin-top:18px;border-color:#453051;background:#160c24;color:#a58bbd;font-size:10px;padding:9px 11px}
[data-theme=neon] .source-banner>span:first-child{color:#ed8bd0;font-size:8px;letter-spacing:1px}
[data-theme=neon] .position-row{margin:21px 0 18px;gap:10px}
[data-theme=neon] .position-label{font-size:8px;color:#bca2ce}
[data-theme=neon] .measure-count strong{font-family:Arial,sans-serif;font-weight:700;font-size:46px;letter-spacing:-2px;color:#fff4ff}
[data-theme=neon] .measure-total{font-family:Arial,sans-serif;font-size:19px;color:#9e81b4}
[data-theme=neon] .beat-indicator{gap:10px;margin-right:10px}
[data-theme=neon] .beat{width:7px;height:7px;background:#5d3f73}
[data-theme=neon] .beat.active{background:#ff4cb8;box-shadow:0 0 13px #fd42bd88}
[data-theme=neon] .note-readout strong{font-family:Arial,sans-serif;font-weight:700;font-size:25px;color:#ebcbff}
[data-theme=neon] .score-wrap{background:#140b23;border-color:#593572;border-radius:12px;padding:16px 15px 12px;box-shadow:inset 0 0 24px #6a26870d}
[data-theme=neon] .score-heading{font-size:11px}
[data-theme=neon] .score-heading>span:first-child{color:#e4b9f9;font-weight:500}
[data-theme=neon] .score-hint{color:#aa8fbf;font-size:9px}
[data-theme=neon] .score{height:155px;margin-top:10px}
[data-theme=neon] .score-footer{border-color:#432650;font-size:10px;color:#b99bc9;padding-top:12px;min-height:33px}
[data-theme=neon] #elapsed{color:#e8bef8}
[data-theme=neon] #elapsed span{color:#ae8ebf}
[data-theme=neon] .seek-label{font-size:10px;color:#bca2cc;margin-top:18px}
[data-theme=neon] .seek-label output{font-size:10px;color:#d2b2e6}
[data-theme=neon] input[type=range]{height:5px;background:linear-gradient(to right,#ed43ad var(--fill,45%),#4b2d60 var(--fill,45%));accent-color:#f553bd}
[data-theme=neon] input[type=range]::-webkit-slider-thumb{height:15px;width:15px;background:#f56bc7;border-color:#2a0f3c;box-shadow:0 0 0 1px #f292d0,0 0 10px #ff2bb457}
[data-theme=neon] input[type=range]::-moz-range-thumb{height:12px;width:12px;background:#f56bc7;border-color:#2a0f3c;box-shadow:0 0 0 1px #f292d0,0 0 10px #ff2bb457}
[data-theme=neon] .position-slider{height:4px!important;margin-top:13px!important}
[data-theme=neon] .transport{margin-top:17px;gap:18px}
[data-theme=neon] .play-button{border-radius:10px;min-height:49px;background:linear-gradient(105deg,#ff36a8,#e82ea5);border:1px solid #ff75c7;color:#25071c;font-size:13px;font-weight:700;min-width:228px;box-shadow:0 5px 23px #f526a52e,0 1px 0 #ffa9db44 inset;padding:13px 28px;letter-spacing:.1px}
[data-theme=neon] .play-button:hover{background:#ff77c7;box-shadow:0 5px 30px #ff38ba50}
[data-theme=neon] .round-button{width:42px;height:42px;color:#d2acdF;border:1px solid #533264;background:#271336}
[data-theme=neon] .round-button:hover{background:#47234e;color:#ff99dc;border-color:#94518c}
[data-theme=neon] .transport-note{font-size:10px;color:#ad90bf;margin-top:13px}
[data-theme=neon] .session-settings{background:#1b102b;border-color:#563366;border-radius:16px;padding:25px 28px;margin-top:24px}
[data-theme=neon] .setting-heading h3{font-size:18px;color:#f5e9ff;font-weight:700;letter-spacing:-.5px}
[data-theme=neon] .setting-heading p{font-size:12px;color:#bba2cd;margin-top:5px}
[data-theme=neon] .source-switch{background:#10091c;border:1px solid #4a2b5c;padding:5px;border-radius:10px}
[data-theme=neon] .source-switch label>span{font-size:12px;color:#ba9dd0;min-height:36px;padding:9px 16px;border-radius:6px}
[data-theme=neon] .source-switch label:has(input:checked)>span{background:#522249;color:#ffc4e9;box-shadow:0 1px 4px #0003}
[data-theme=neon] .source-switch small{color:#bda2f2;border-color:#705489;font-size:7px}
[data-theme=neon] .settings-grid{gap:35px;margin-top:26px}
[data-theme=neon] .setting>label{font-size:13px;color:#e5d0f2}
[data-theme=neon] .setting output{font-size:16px;color:#f9c5ea}
[data-theme=neon] .setting output span{font-size:9px;color:#b197c4}
[data-theme=neon] .setting>p{font-size:11px;color:#ad95bf;margin-top:11px}
[data-theme=neon] .ensemble-setting{border-color:#573263}
[data-theme=neon] .toggle-label small{font-size:11px;color:#ad95bf}
[data-theme=neon] .toggle{background:#553665;width:36px;height:21px}
[data-theme=neon] .toggle:before{width:15px;height:15px;background:#d8c1e4}
[data-theme=neon] .toggle-label input:checked+.toggle{background:#dd319e}
[data-theme=neon] .toggle-label input:checked+.toggle:before{left:18px;background:#ffe4f7}
[data-theme=neon] .ensemble-volume{margin-top:14px}
[data-theme=neon] .ensemble-volume output{font-size:11px;color:#c39dd7}
[data-theme=neon] .live-info{border-color:#573366;margin-top:22px}
[data-theme=neon] .live-header{font-size:12px;color:#ffb5e7}
[data-theme=neon] .live-header>span{font-size:11px;color:#9fe7d4}
[data-theme=neon] .live-info p{color:#c6b0d5;font-size:12px}
[data-theme=neon] .live-info .live-limit{color:#d9b58f;font-size:11px}
[data-theme=neon] .live-meter{background:#422951;height:4px}
[data-theme=neon] .live-meter span{background:linear-gradient(90deg,#9a6cff,#ff61c5)}
[data-theme=neon] .listening-faq{background:#1a0d29;border-color:#533161;border-radius:14px}
[data-theme=neon] .listening-faq summary{font-size:14px;font-weight:600;color:#eacffb;padding:21px 28px}
[data-theme=neon] .listening-faq .faq-plus{color:#f773c9;font-weight:300}
[data-theme=neon] .listening-faq>div{padding:0 28px 22px;font-size:13px;color:#bba4cf}
[data-theme=neon] .listening-faq strong{color:#edc6ff}
[data-theme=neon] .message{background:#3c2431;border-color:#9a6970;color:#ffd2b7;font-size:13px}
[data-theme=neon] .site-footer{border-color:#59325e7d;font-size:9px;color:#a085b4;margin-top:32px;padding-bottom:30px}
[data-theme=neon] .footer-brand{font-size:14px;color:#efd1fc}
[data-theme=neon] .footer-brand span{font-size:10px;color:#a98dbc}
[data-theme=neon] .privacy{color:#a990bd}
[data-theme=neon] .privacy .status-dot{background:#dd65bd}
[data-theme=neon] dialog{background:linear-gradient(135deg,#281337,#190d2a);border-color:#8f4e94;border-radius:20px;box-shadow:0 0 80px #b50a8b21;max-width:510px;padding:29px}
[data-theme=neon] dialog::backdrop{background:#07020dd4;backdrop-filter:blur(9px)}
[data-theme=neon] dialog h2{font-family:Arial,sans-serif;font-weight:700;font-size:39px;letter-spacing:-1.3px}
[data-theme=neon] dialog h2 em{font-family:inherit;color:#f667be;font-style:normal;font-weight:700}
[data-theme=neon] dialog p,[data-theme=neon] dialog li{font-size:13px;line-height:1.8;color:#c6add8}
[data-theme=neon] dialog li strong{color:#f4dcff}
[data-theme=neon] .dialog-tip{background:#422044;border:1px solid #6c3767;padding:16px}
[data-theme=neon] .dialog-tip strong{color:#ffafe4;font-size:12px}
[data-theme=neon] .dialog-tip p{font-size:12px}
[data-theme=neon] .dialog-fine{font-size:11px!important}
[data-theme=neon] .dialog-themes>span{color:#cdb0dd}
@keyframes frequency-breathe{0%{transform:scaleY(.72)}100%{transform:scaleY(1.04)}}

@media(max-width:1100px){
  [data-theme=neon] .shell{width:calc(100% - 56px)}
  [data-theme=neon] .intro{min-height:360px;padding:35px 0 28px;grid-template-columns:1.35fr .9fr}
  [data-theme=neon] h1{font-size:clamp(48px,6.5vw,76px);letter-spacing:-3.5px}
  [data-theme=neon] .hero-tags{gap:12px;font-size:7px}
  [data-theme=neon] .hero-tags>span:last-child{display:none}
  [data-theme=neon] .rehearsal-grid{grid-template-columns:290px 1fr;gap:18px}
  [data-theme=neon] .setup-card{padding:22px 19px}
  [data-theme=neon] .stage{padding:23px 22px 20px}
  [data-theme=neon] .stage-top{flex-direction:column;align-items:flex-start;gap:12px}
  [data-theme=neon] .stage-top h3 span{font-size:11px}
  [data-theme=neon] .source-banner{margin-top:15px;font-size:9px;align-items:flex-start;flex-direction:column;gap:3px}
  [data-theme=neon] .note-readout .position-label{display:none}
  [data-theme=neon] .beat-indicator{gap:7px;margin:0}
  [data-theme=neon] .settings-grid{gap:25px}
}
@media(max-width:700px){
  .library-strip{flex-wrap:wrap;gap:10px;margin-bottom:13px}
  .library-strip label{width:100%;font-size:8px}
  .library-strip select{flex:1;min-width:0;max-width:65%;font-size:11px;padding:10px 5px}
  .library-strip a{font-size:9px;max-width:30%;line-height:1.7;text-align:right}
  .song-attribution{font-size:8px;flex-wrap:wrap;gap:3px 10px}
  html{scroll-padding-bottom:110px}
  .voice-option,.mode-option,.source-switch,input[type=range],summary{scroll-margin-block:110px}
  .header-end{gap:9px}
  .theme-switch{padding:3px;gap:1px}
  .theme-switch button{min-height:33px;padding:6px 10px;font-size:10px}
  .about-word{display:none}
  .source-banner{font-size:9px}
  .source-banner>span:first-child{font-size:7px}
  .listening-faq summary{font-size:12px;padding:18px 19px}
  .listening-faq>div{padding:0 19px 18px;font-size:12px}
  [data-theme=classic] .brand .version{display:none}
  [data-theme=neon] body{padding-bottom:100px;background:radial-gradient(ellipse 100% 23% at 110% 6%,#5b1a6380,transparent 80%),#10071e}
  [data-theme=neon] .shell{width:calc(100% - 36px)}
  [data-theme=neon] .site-header{height:83px}
  [data-theme=neon] .brand{font-size:23px;letter-spacing:-1.3px}
  [data-theme=neon] .brand svg{width:27px;height:29px;margin-right:7px}
  [data-theme=neon] .brand .version{display:none}
  [data-theme=neon] .header-end{gap:12px}
  [data-theme=neon] .theme-switch{padding:3px;gap:1px}
  [data-theme=neon] .theme-switch button{font-size:10px;min-height:35px;padding:7px 10px}
  [data-theme=neon] .theme-switch button span{font-size:10px}
  [data-theme=neon] .text-button{font-size:11px;padding:0;min-height:40px}
  [data-theme=neon] .text-button>span:last-child{margin-left:2px}
  [data-theme=neon] .intro{display:block;min-height:287px;padding:33px 0 28px;overflow:hidden}
  [data-theme=neon] .intro-content{z-index:2}
  [data-theme=neon] .intro .eyebrow{font-size:8px;letter-spacing:1.6px}
  [data-theme=neon] .tiny-line{width:18px}
  [data-theme=neon] h1{font-size:clamp(39px,10.2vw,66px);line-height:1.02;letter-spacing:-2px;max-width:100%;margin:22px 0 17px}
  [data-theme=neon] .intro-copy{font-size:12px;line-height:1.7;max-width:260px;color:#cebbdc}
  [data-theme=neon] .hero-tags{margin-top:21px;font-size:7px;letter-spacing:1.3px}
  [data-theme=neon] .frequency-art{position:absolute;width:220px;top:10px;right:-65px;margin:0;opacity:.42;z-index:0;pointer-events:none;transform:rotate(12deg)}
  [data-theme=neon] .orb-core{fill-opacity:.2}
  [data-theme=neon] .frequency-orbit text,[data-theme=neon] .orb-label{display:none}
  [data-theme=neon] .song-card{padding:17px;gap:15px;min-height:127px;border-radius:13px}
  [data-theme=neon] .song-art{width:76px;height:82px;border-radius:8px;flex-shrink:0}
  [data-theme=neon] .song-description h2{font-size:29px;letter-spacing:-.9px;margin:5px 0}
  [data-theme=neon] .song-description .eyebrow{font-size:6px;letter-spacing:.8px;gap:5px}
  [data-theme=neon] .piece-tag{font-size:5px;letter-spacing:.6px;margin-left:0;padding:1px 3px}
  [data-theme=neon] .song-description>p:not(.eyebrow){font-size:10px;line-height:1.7}
  [data-theme=neon] .song-meta{font-size:8px;gap:7px;margin-top:9px}
  [data-theme=neon] .song-number{display:none}
  [data-theme=neon] .rehearsal-grid{display:grid;grid-template-columns:1fr;margin-top:19px;gap:19px}
  [data-theme=neon] .setup-card{padding:23px 20px;border-radius:14px}
  [data-theme=neon] legend{font-size:16px}
  [data-theme=neon] .field-description{font-size:12px;margin:7px 0 16px}
  [data-theme=neon] .voices{gap:8px}
  [data-theme=neon] .voice-option{padding:12px 0}
  [data-theme=neon] .voice-letter{font-size:31px}
  [data-theme=neon] .voice-name{font-size:11px;margin-top:6px}
  [data-theme=neon] .voice-range{font-size:9px;margin-top:4px}
  [data-theme=neon] .guidance-field{margin-top:25px;gap:9px}
  [data-theme=neon] .mode-option{min-height:98px;padding:12px 10px;gap:7px;align-items:flex-start;border-radius:9px}
  [data-theme=neon] .mode-option strong{font-size:11px;line-height:1.5}
  [data-theme=neon] .mode-option small{font-size:10px;max-width:105px;margin-top:4px;line-height:1.6}
  [data-theme=neon] .mode-icon{font-size:24px;margin-top:3px;width:17px;flex-shrink:0}
  [data-theme=neon] .radio-indicator{width:11px;height:11px;bottom:10px;right:10px}
  [data-theme=neon] .mode-option:has(input:checked) .radio-indicator{border-width:3px}
  [data-theme=neon] .small-note{padding-top:17px;gap:9px}
  [data-theme=neon] .small-note p{font-size:11px}
  [data-theme=neon] .stage{padding:23px 19px 20px;border-radius:14px}
  [data-theme=neon] .stage-top{flex-direction:row;align-items:center;gap:10px}
  [data-theme=neon] .stage-top h3{font-size:23px;margin-top:4px}
  [data-theme=neon] .stage-top h3 span{display:block;font-size:10px;margin:3px 0 0;letter-spacing:0}
  [data-theme=neon] .stage-top .eyebrow{font-size:8px}
  [data-theme=neon] .player-status{font-size:8px;padding:6px 8px;line-height:1.5;max-width:130px}
  [data-theme=neon] .source-banner{margin-top:18px;display:flex;flex-direction:row;align-items:center;padding:10px;gap:8px;font-size:8px}
  [data-theme=neon] .source-banner>span:first-child{font-size:7px;letter-spacing:.7px}
  [data-theme=neon] .position-row{margin:24px 0 18px}
  [data-theme=neon] .position-label{font-size:7px}
  [data-theme=neon] .measure-count strong{font-size:43px}
  [data-theme=neon] .measure-count .position-label{font-size:7px;margin-right:1px}
  [data-theme=neon] .measure-total{font-size:16px}
  [data-theme=neon] .beat-indicator{gap:8px}
  [data-theme=neon] .beat{height:6px;width:6px}
  [data-theme=neon] .note-readout strong{font-size:25px}
  [data-theme=neon] .score-wrap{padding:15px 10px 11px;border-radius:10px}
  [data-theme=neon] .score{height:157px}
  [data-theme=neon] .score-heading{font-size:10px}
  [data-theme=neon] .score-hint{font-size:7px}
  [data-theme=neon] .score-footer{font-size:9px;line-height:1.6;gap:8px;min-height:37px;padding-top:10px}
  [data-theme=neon] .seek-label{font-size:10px;margin-top:18px}
  [data-theme=neon] .seek-label output{font-size:9px}
  [data-theme=neon] .transport{position:fixed;z-index:10;margin:0;gap:16px;padding:13px 17px calc(13px + env(safe-area-inset-bottom));background:#1d0d2df5;border-color:#a4459077;box-shadow:0 -12px 40px #06000c55;backdrop-filter:blur(16px)}
  [data-theme=neon] .transport .play-button{width:min(235px,calc(100vw - 132px));min-height:49px;padding:12px;font-size:13px;letter-spacing:0}
  [data-theme=neon] .transport .round-button{width:40px;height:40px;flex-shrink:0}
  [data-theme=neon] .transport-note{font-size:10px;margin-top:13px}
  [data-theme=neon] .session-settings{padding:23px 20px;margin-top:19px;border-radius:14px}
  [data-theme=neon] .session-source{gap:17px}
  [data-theme=neon] .setting-heading h3{font-size:18px}
  [data-theme=neon] .setting-heading p{font-size:11px;line-height:1.7}
  [data-theme=neon] .source-switch{width:100%}
  [data-theme=neon] .source-switch label>span{font-size:12px;padding:9px 14px}
  [data-theme=neon] .settings-grid{grid-template-columns:1fr 1fr;gap:25px;margin-top:24px}
  [data-theme=neon] .setting>label{font-size:12px}
  [data-theme=neon] .setting output{font-size:15px}
  [data-theme=neon] .setting>p{font-size:10px;line-height:1.7}
  [data-theme=neon] .ensemble-setting{grid-column:1/-1;padding:20px 0 0}
  [data-theme=neon] .toggle-label small{font-size:11px}
  [data-theme=neon] .ensemble-volume{margin-top:18px}
  [data-theme=neon] .live-header{font-size:11px;flex-wrap:wrap}
  [data-theme=neon] .live-header>span{font-size:10px}
  [data-theme=neon] .live-info p{font-size:12px}
  [data-theme=neon] .live-info .live-limit{font-size:11px}
  [data-theme=neon] .listening-faq{margin-top:19px}
  [data-theme=neon] .listening-faq summary{padding:20px;font-size:13px;line-height:1.6}
  [data-theme=neon] .listening-faq>div{padding:0 20px 20px;font-size:12px}
  [data-theme=neon] .site-footer{margin-top:27px;padding:23px 0 26px;gap:15px}
  [data-theme=neon] .footer-brand{font-size:12px}
  [data-theme=neon] .footer-brand span{font-size:9px;max-width:170px;line-height:1.7}
  [data-theme=neon] .privacy{font-size:8px;margin-top:4px}
  [data-theme=neon] dialog{padding:22px}
  [data-theme=neon] dialog h2{font-size:35px}
}
@media(max-width:359px){
  [data-theme=neon] .shell{width:calc(100% - 28px)}
  [data-theme=neon] .brand{font-size:20px}
  [data-theme=neon] .brand svg{width:23px;margin-right:5px}
  [data-theme=neon] .header-end{gap:7px}
  [data-theme=neon] .theme-switch button{padding:7px 8px;font-size:9px}
  [data-theme=neon] .theme-switch button span{display:none}
  [data-theme=neon] .text-button{font-size:10px}
  [data-theme=neon] .intro{min-height:270px}
  [data-theme=neon] h1{font-size:38px;letter-spacing:-2px}
  [data-theme=neon] .song-card{padding:15px 13px;gap:13px}
  [data-theme=neon] .song-art{width:63px;height:76px}
  [data-theme=neon] .song-description .eyebrow{font-size:5px;letter-spacing:.6px}
  [data-theme=neon] .song-description h2{font-size:26px}
  [data-theme=neon] .song-meta{font-size:7px;gap:5px}
  [data-theme=neon] .setup-card{padding:22px 16px}
  [data-theme=neon] .mode-option{padding:12px 8px;gap:6px}
  [data-theme=neon] .mode-option strong{font-size:10px}
  [data-theme=neon] .mode-option small{font-size:9px}
  [data-theme=neon] .stage{padding:22px 16px 20px}
  [data-theme=neon] .source-banner{flex-direction:column;align-items:flex-start;gap:3px}
}
@media(prefers-reduced-motion:reduce){[data-theme=neon] body[data-playing=true] .art-wave-layer{animation:none;will-change:auto}}
