@font-face{font-family:Dongle;src:url(/fonts/Dongle-Regular.woff2)format("woff2");font-display:swap;font-weight:400}@font-face{font-family:Dongle;src:url(/fonts/Dongle-Bold.woff2)format("woff2");font-display:swap;font-weight:700}@font-face{font-family:Barlow;src:url(/fonts/BarlowCondensed-Bold.woff2)format("woff2");font-display:swap;font-weight:700}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#2b252f;--header:#252029;--surface:#38303e;--ink:#f0edf2;--muted:#b5abbc;--line:#66566c;--soft:#433947;--copper:#db8655;--lilac:#c8afd6}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:28px/1 Dongle,Arial,sans-serif}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer;min-height:44px}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #edb991}a{color:inherit;text-decoration:none}button:disabled{opacity:.45;cursor:default}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.header{background:var(--header);border-bottom:1px solid var(--soft);align-items:center;gap:24px;padding:22px 48px;display:flex}.brand{white-space:nowrap;font-size:36px;font-weight:700}.brand span{color:var(--muted);font-weight:400}.brand i{background:var(--copper);border-radius:50%;width:7px;height:7px;margin:0 0 5px 9px;display:inline-block}.admin-link{color:var(--lilac);align-items:center;min-height:44px;margin-left:auto;padding:0 10px;display:flex}.admin-link:hover{text-decoration:underline}main{max-width:1296px;margin:auto;padding:44px 48px 150px}.intro{justify-content:space-between;align-items:end;gap:20px;margin-bottom:40px;display:flex}h1{letter-spacing:-.015em;overflow-wrap:anywhere;margin:0;font:700 clamp(44px,7vw,76px)/.95 Barlow,Arial Narrow,sans-serif}h1 span{color:var(--copper)}.intro p{color:var(--muted);white-space:nowrap;margin:0}.library-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:40px;display:grid}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}h2{letter-spacing:-.025em;overflow-wrap:anywhere;margin:0;font:600 24px/1.25 Segoe UI,Arial,sans-serif}h2>span{color:var(--muted);margin-left:8px;font:24px Dongle,sans-serif}.text-button{color:var(--lilac);white-space:nowrap;background:0 0;border:0;min-height:44px;padding:4px 8px}.text-button:hover,.project-link:hover{text-decoration:underline}.search-field{display:block}.search-field input{background:var(--header);width:100%;min-width:0;min-height:48px;color:var(--ink);border:1px solid #66566c;border-radius:14px;padding:8px 14px}input::placeholder{color:var(--muted);opacity:1}.projects{scrollbar-width:thin;scrollbar-color:var(--line) transparent;flex-direction:column;gap:8px;min-height:140px;max-height:calc(100dvh - 360px);margin-top:16px;padding:5px;display:flex;overflow-y:auto}.project{color:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:16px;flex-shrink:0;align-items:center;gap:12px;width:100%;min-width:0;padding:10px;display:flex}.project:hover{background:var(--surface)}.project.selected{background:var(--surface);border-color:var(--line)}.project-art{background:var(--soft);text-transform:uppercase;color:#342a32;border-radius:12px;flex-shrink:0;place-items:center;width:48px;height:48px;font:700 30px/1 Barlow,sans-serif;display:grid;position:relative;overflow:hidden}.project-art img,.player-art img{object-fit:cover;border-radius:inherit;width:100%;height:100%;position:absolute;inset:0}.project-info{flex:1;min-width:0}.project-info strong{overflow-wrap:anywhere;font:600 15px/1.35 Segoe UI,Arial,sans-serif;display:block}.project-info small{color:var(--muted);margin-top:4px;font-size:23px;display:block}.project-browser{min-width:0;position:sticky;top:24px}.track-section{min-width:0}.song-search{margin-bottom:28px}.track-heading{margin-bottom:12px}.track-heading h2{font-size:32px}.track-count{color:var(--lilac);margin:7px 0 0;font-size:24px}.era{color:var(--muted);overflow-wrap:anywhere;margin:7px 0 0;font-size:23px;line-height:1.15}.status{color:var(--lilac);overflow-wrap:anywhere;margin:12px 0;font-size:24px;line-height:1.15}.playback-status:empty{display:none}.load-error{color:#f0b7ad;border:1px solid #8e5c5a;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 20px;padding:10px 14px;line-height:1.2;display:flex}.track-list{flex-direction:column;gap:12px;margin:24px 0 0;padding:0;list-style:none;display:flex}.track-card{background:var(--surface);border-radius:22px;align-items:center;gap:16px;min-width:0;padding:18px 20px;display:flex}.track-details{flex:1;min-width:0}.track-title{overflow-wrap:anywhere;font-size:30px;font-weight:400}.track-meta{color:var(--muted);overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:0 12px;margin-top:3px;font-size:22px;display:flex}.project-link{color:var(--lilac);text-align:left;overflow-wrap:anywhere;background:0 0;border:0;min-height:32px;padding:0;font-size:23px}.play-button{background:var(--soft);color:var(--ink);border:0;border-radius:50%;flex-shrink:0;width:48px;height:48px;font:14px Arial,sans-serif}.play-button:hover{background:var(--lilac);color:var(--header)}.active-track{box-shadow:inset 3px 0 var(--copper);background:#413248}.active-track .track-title{color:var(--copper)}.active-track .play-button{background:var(--copper);color:var(--header)}.empty{color:var(--muted);overflow-wrap:anywhere;padding:24px 12px;line-height:1.2}.player{background:var(--header);border-top:1px solid var(--line);z-index:2;align-items:center;gap:16px;padding:16px max(22px,50vw - 600px);display:flex;position:fixed;bottom:0;left:0;right:0}.player-art{background:var(--soft);color:#342a32;text-transform:uppercase;border-radius:14px;flex-shrink:0;place-items:center;width:50px;height:50px;font:700 36px Barlow,sans-serif;display:grid;position:relative;overflow:hidden}.now-playing{flex:1;min-width:0}.now-playing strong{text-overflow:ellipsis;white-space:nowrap;font-size:26px;font-weight:400;display:block;overflow:hidden}.now-playing .project-link{text-overflow:ellipsis;white-space:nowrap;max-width:100%;min-height:28px;display:block;overflow:hidden}.player audio{display:none}.player-controls{flex:1.5;align-items:center;gap:12px;min-width:0;display:flex}.player-toggle{background:var(--copper);color:#342a32;border:0;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.player-toggle:hover:not(:disabled){background:#edb991}.player-toggle svg{fill:currentColor;width:20px;height:20px}.skip-button{width:44px;color:var(--ink);background:0 0;border:0;border-radius:50%;flex-shrink:0;font:12px Arial,sans-serif}.skip-button:hover:not(:disabled){background:var(--surface)}.player-time{font-variant-numeric:tabular-nums;color:var(--muted);text-align:center;min-width:32px;font:12px/1 Segoe UI,sans-serif}.player-seek{appearance:none;cursor:pointer;background:0 0;flex:1;min-width:0;height:44px;margin:0}.player-seek::-webkit-slider-runnable-track{background:linear-gradient(to right,var(--copper) var(--progress),var(--line) var(--progress));border-radius:4px;height:4px}.player-seek::-moz-range-track{background:var(--line);border-radius:4px;height:4px}.player-seek::-moz-range-progress{background:var(--copper);border-radius:4px;height:4px}.player-seek::-webkit-slider-thumb{appearance:none;background:var(--copper);border-radius:50%;width:12px;height:12px;margin-top:-4px}.player-seek::-moz-range-thumb{background:var(--copper);border:0;border-radius:50%;width:12px;height:12px}.player-seek:disabled{opacity:.45;cursor:default}@media (max-width:960px){.library-layout{grid-template-columns:230px minmax(0,1fr);gap:24px}.track-card{gap:12px;padding:14px}}@media (max-width:760px){.header{flex-wrap:wrap;gap:10px;padding:18px 22px}main{padding:32px 22px 180px}.intro{flex-direction:column;align-items:start;gap:12px;margin-bottom:28px}.library-layout{grid-template-columns:minmax(0,1fr);gap:28px}.project-browser{position:static}.projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;min-height:0;max-height:210px;display:grid}.project{gap:8px;padding:8px}.project-art{width:36px;height:40px;font-size:26px}.project-info strong{font-size:13px}.project-info small{font-size:21px}.song-search{margin-bottom:22px}.track-title{font-size:27px}.player{flex-wrap:wrap;gap:8px;padding:12px 22px}.player-art{width:40px;height:40px}.now-playing{flex-basis:calc(100% - 55px)}.player-controls{flex-basis:100%;gap:8px}}@media (max-width:430px){.track-card{border-radius:20px;flex-wrap:wrap}.track-details{flex-basis:calc(100% - 62px)}.track-heading h2{font-size:27px}}@media (max-width:370px){.header,main,.player{padding-left:16px;padding-right:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
