:root{color-scheme:dark;--bg:#171918;--panel:#202321;--line:#ffffff12;--text:#e8eae5;--muted:#9baba0;--accent:#b4c99c;--tint:#304333;--lyrics-ink:#e4e9df;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;color:var(--text);background:var(--bg);isolation:isolate;font-size:14px}body[data-theme=ember]{--bg:#201b18;--panel:#2a231f;--tint:#5f3528;--accent:#d8b391;--muted:#b7a69b;--lyrics-ink:#f2e4d6}body[data-theme=ocean]{--bg:#151b23;--panel:#1d2630;--tint:#253c65;--accent:#a6bfda;--muted:#9baebe;--lyrics-ink:#deebf8}body:before{content:'';position:fixed;z-index:-1;pointer-events:none;inset:0;background:radial-gradient(ellipse at 100% 0%,var(--tint),transparent 62%);opacity:.45;animation:drift 18s ease-in-out infinite alternate}@keyframes drift{to{opacity:.15}}body.still:before{animation-play-state:paused}#starfield{position:fixed;inset:0;width:100%;height:100%;z-index:-2;pointer-events:none;display:block}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,input{font:inherit}button{cursor:pointer;color:var(--text);border:1px solid var(--line);background:#ffffff04;border-radius:5px;padding:9px 12px;min-height:38px}button:hover{background:#ffffff0c}button:disabled{opacity:.45;cursor:default}input{min-width:0;width:100%;padding:11px 12px;border:1px solid #ffffff1b;border-radius:5px;background:#0002;color:var(--text)}input::placeholder{color:var(--muted);opacity:.8}button:focus-visible,input:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.topbar{max-width:1440px;margin:auto;padding:25px 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;align-items:center;gap:12px;font-weight:bold;font-size:22px;letter-spacing:-.7px}.brand:hover{text-decoration:none}.brand-icon{height:42px;width:42px;background:var(--accent);color:#1b2118;display:grid;place-items:center;font-family:Georgia,serif;font-size:34px;font-style:italic;line-height:1;padding-bottom:6px;border-radius:7px}.brand small{display:block;font-size:9px;font-weight:normal;letter-spacing:1.7px;color:var(--muted);margin-top:7px}.top-links{display:flex;gap:22px;align-items:center;font-size:12px;color:var(--muted)}.top-links button{font-size:11px}.top-links time{font-size:12px;font-variant-numeric:tabular-nums}.appearance{max-width:1360px;margin:15px auto 0;padding:12px 16px;display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:7px;color:var(--muted);font-size:12px}.theme-picker{display:flex;gap:6px}.theme-picker button[aria-pressed=true]{background:var(--accent);color:#172014}#motion-toggle{margin-left:auto;font-size:11px}
.desk{max-width:1440px;padding:40px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:48px;margin:auto;align-items:start}.section-label{font-size:10px;letter-spacing:1.3px;color:var(--muted)}.collection-heading h1{font:normal 46px/1.1 Georgia,serif;letter-spacing:-1.7px;margin:12px 0 10px}.collection-heading p{font-size:12px;color:var(--muted);line-height:1.6;margin:0 0 27px}.collection-tools{display:flex;gap:9px}.collection-tools button{font-size:12px}.collection-tools button[aria-pressed=true]{background:var(--accent);color:#1b2118}.filter-bar{display:flex;gap:8px;border-bottom:1px solid var(--line);margin-top:16px;padding-bottom:13px}.filter-bar button{font-size:12px;border-color:transparent;min-height:34px;padding:7px 11px}.filter-bar button[aria-pressed=true]{background:#ffffff0b;border-color:#ffffff17}.filter-bar span{color:var(--muted);font-size:10px;margin-left:5px}.catalog-note{font-size:11px;color:var(--muted);line-height:1.6;margin:13px 0}.track-list{max-height:750px;overflow:auto;padding-right:5px;scrollbar-width:thin;scrollbar-color:#ffffff29 transparent}.track-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:67px;border-bottom:1px solid #ffffff08;padding:9px 8px;border-radius:4px}.track-row.active{background:#b4c99c0e}.track-number{font-size:11px;color:var(--muted);text-align:center;font-variant-numeric:tabular-nums}.track-row.active .track-number{color:var(--accent)}.track-name{font-size:13px;line-height:1.5;display:block;overflow-wrap:anywhere;text-align:left;padding:0;min-height:0;background:none;border:0;border-radius:0}.track-name:hover{background:none;text-decoration:underline}.track-row.active .track-name{color:var(--accent)}.track-artist{font-size:11px;color:var(--muted);margin:4px 0 0;line-height:1.4}.track-actions{display:flex;gap:6px;align-items:center;white-space:nowrap}.track-actions button{font-size:11px;padding:7px 11px;min-height:34px}.track-actions a{font-size:11px;color:var(--accent);padding:7px 0}.track-duration{font-size:10px;color:var(--muted);margin-right:5px;font-variant-numeric:tabular-nums}.missing-tag{font-size:10px;color:#c6b192;margin:5px 0 0}.no-results{padding:28px 0;color:var(--muted)}.import-note{margin-top:17px;border-top:1px solid var(--line);padding-top:14px;font-size:11px;color:var(--muted);line-height:1.7}.import-note summary{cursor:pointer}
.playback-column{min-width:0}.player-section{border:1px solid #ffffff18;border-radius:9px;padding:24px;background:var(--panel);box-shadow:0 8px 32px #0002}.player-label{display:flex;justify-content:space-between;gap:16px;align-items:center}.provider{color:#e0a573;font-size:10px}.player-section h2{font-size:25px;line-height:1.3;letter-spacing:-.7px;margin:23px 0 8px;font-weight:500;overflow-wrap:anywhere}#player-artist{color:var(--muted);font-size:13px;margin:0 0 23px}.player-frame{min-height:166px;background:#121512;border-radius:5px;overflow:hidden}.player-frame iframe{width:100%;height:166px;border:0;display:block}.transport{display:flex;justify-content:center;gap:10px;margin-top:19px}.transport button{font-size:12px}.primary{background:var(--accent);border-color:var(--accent);color:#1b2118;font-weight:600}.primary:hover{filter:brightness(1.08);background:var(--accent)}#play-toggle{min-width:90px}.player-status{font-size:11px;line-height:1.7;color:var(--muted);min-height:35px;text-align:center;margin:14px 0}.player-status.error{color:#ffc4a3}.player-links{border-top:1px solid var(--line);padding-top:12px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted)}.player-links button{font-size:11px;border:0;padding:5px 8px;min-height:30px;color:var(--accent)}
.lyrics-section{margin-top:28px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-heading h2{font-size:16px;font-weight:500;margin:0}.section-heading button{font-size:11px;padding:5px 9px;min-height:30px}.lyrics-card{border:1px solid var(--line);border-radius:7px;padding:17px;background:#0001;display:flex;flex-direction:column}.lyrics-fields{display:grid;grid-template-columns:1.3fr 1fr auto;gap:7px}.lyrics-fields input{font-size:11px;padding:10px}.lyrics-fields button{font-size:11px;padding:8px 12px;color:var(--accent)}#lyrics-status{font-size:10px;line-height:1.7;color:var(--muted);margin:12px 0;min-height:17px}#lyrics-status.error{color:#ffc4a3}#lyrics-results{display:grid;gap:5px;max-height:160px;overflow:auto;scrollbar-width:thin}#lyrics-results:empty{display:none}.lyrics-result{text-align:left;padding:9px 11px;flex-shrink:0}.lyrics-result[aria-pressed=true]{border-color:var(--accent)}.lyrics-result strong{display:block;font-weight:normal;font-size:12px}.lyrics-result small{display:block;font-size:10px;color:var(--muted);line-height:1.5;margin-top:4px}#lyrics-title{font-size:14px;font-weight:500;margin:15px 0 5px}#lyrics-subtitle{font-size:10px;color:var(--muted);line-height:1.6;margin:0 0 12px}.lyrics-content{height:260px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:12px 0}.lyric-line{font-size:23px;font-weight:600;line-height:1.6;color:var(--lyrics-ink);margin:0 0 16px;overflow-wrap:anywhere}.lyric-space{height:20px}.lyrics-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted)}.lyrics-placeholder p{font:normal 26px Georgia,serif;letter-spacing:-.5px;margin:0 0 10px}.lyrics-placeholder small{font-size:11px}.lyrics-footer{border-top:1px solid var(--line);padding-top:12px;display:flex;justify-content:space-between;color:var(--muted);font-size:10px}
.add-music{margin-top:25px;border-top:1px solid var(--line);padding-top:15px;font-size:12px}.add-music summary{cursor:pointer;display:flex;justify-content:space-between;color:var(--muted)}.add-music form{padding-top:20px}.add-music label{display:block;font-size:11px;color:var(--muted);margin:0 0 7px}.add-music input{margin-bottom:14px;font-size:12px}.add-music form button{font-size:12px}.small-note,#message{font-size:11px;color:var(--muted);line-height:1.7}#message.error{color:#ffc4a3}footer{max-width:1360px;margin:0 auto;padding:22px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}footer>span:first-child{color:var(--text)}body.lyrics-expanded{overflow:hidden}.lyrics-section.expanded{position:fixed;inset:20px;z-index:20;max-width:1000px;margin:auto;border-radius:10px;padding:24px;background:var(--bg);border:1px solid var(--line);box-shadow:0 0 0 100vmax #000e;display:flex;flex-direction:column}.lyrics-section.expanded .lyrics-card{flex:1;min-height:0;overflow:hidden}.lyrics-section.expanded .lyrics-content{flex:1;height:auto;padding:30px 8%;text-align:center}.lyrics-section.expanded .lyric-line{font-size:clamp(25px,3.5vw,43px)}.lyrics-section.expanded #lyrics-results{flex-shrink:0;max-height:120px}
@media(max-width:1000px){.topbar{padding:22px 26px}.desk{padding:30px 26px;gap:24px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.top-links{gap:12px}.top-links time{display:none}.player-section{padding:19px}.track-duration{display:none}.lyrics-fields{grid-template-columns:1fr 1fr}.lyrics-fields button{grid-column:1/-1}.appearance{margin:12px 26px 0}footer{margin:0 26px}.track-row{grid-template-columns:22px minmax(0,1fr) auto;gap:7px;padding:9px 3px}}@media(max-width:720px){.topbar{padding:18px;align-items:start}.brand{font-size:20px}.brand-icon{width:35px;height:35px;font-size:29px}.brand small{font-size:8px;letter-spacing:1.1px}.top-links{flex-direction:column;align-items:end;gap:8px;font-size:10px}.top-links button{font-size:10px;min-height:28px;padding:5px 8px}.desk{display:flex;flex-direction:column;padding:24px 18px;gap:26px}.collection,.playback-column{width:100%}.collection-heading h1{font-size:36px;margin-top:8px}.collection-heading p{margin-bottom:18px}.track-list{max-height:360px}.track-row{min-height:65px}.track-actions button{min-height:42px;min-width:45px}.appearance{margin:12px 18px 0;gap:10px;flex-wrap:wrap}.appearance>span{width:100%}.theme-picker button,#motion-toggle{font-size:10px;padding:7px}#motion-toggle{margin-left:0}.player-section h2{font-size:23px}.transport{gap:8px}.transport button{min-height:44px}.lyrics-fields{grid-template-columns:1fr 1fr auto}.lyrics-fields button{grid-column:auto}.lyrics-section.expanded{inset:8px;padding:15px}.lyrics-section.expanded .lyrics-content{padding:20px 2%}footer{margin:0 18px;flex-wrap:wrap;gap:12px}.player-frame iframe{min-width:0}.lyric-line{font-size:22px}}@media(max-width:360px){.top-links>a{font-size:9px}.brand{font-size:17px}.lyrics-fields{grid-template-columns:1fr 1fr}.lyrics-fields button{grid-column:1/-1}.track-row{grid-template-columns:18px minmax(0,1fr) auto;gap:5px}}@media(prefers-reduced-motion:reduce){body:before{animation:none!important}}
