@import "https://fontlibrary.org//face/capitalis-minimalis";@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#10131a;--bg-elevated:#151a23;--surface:#1b2230;--surface-2:#20293a;--surface-3:#252e41;--text:#f6f8ff;--muted:#a6b0c4;--accent:#8f76d8;--accent-2:#7460b8;--accent-soft:#8f76d824;--danger:#ff9ca8;--success:#9fd5c3;--shadow:0 10px 30px #00000047;background:var(--bg);color:var(--text);font-family:IBM Plex Sans,sans-serif}*{box-sizing:border-box;border-radius:0!important}html,body,#root{min-height:100%}body{background:var(--bg);color:var(--text);margin:0;font-family:IBM Plex Sans,sans-serif;font-size:14px;line-height:1.45}a{color:var(--text);text-decoration:none}a:hover{color:#c8b9f4}button,input,label,small,p,li{font:inherit}h1,h2,h3,.brand-name{letter-spacing:.03em;margin:0;font-family:CapitalisMinimalisRegular,Times New Roman,serif;font-weight:400}p{margin:0}ul,ol{margin:0;padding-left:1rem}.shell{width:min(100%,960px);margin:0 auto;padding:16px}.topbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.brand{align-items:center;gap:12px;min-width:0;display:inline-flex}.brand-mark{flex:none;width:48px;height:48px}.brand-copy{gap:2px;display:grid}.brand-name{letter-spacing:.1em;font-size:1.55rem}.brand-tagline{color:var(--muted);font-size:.72rem}.topbar nav{align-items:center;display:flex}.settings-link{color:var(--muted);font-size:.78rem;font-weight:600}.settings-link:hover{color:var(--text)}.page{background:var(--bg-elevated);box-shadow:var(--shadow);gap:10px;padding:14px;display:grid}.page>h1{font-size:clamp(2rem,4vw,2.6rem);line-height:1}.page>p,.section-heading p,.muted,.playlist-main small,.artist-item small,.legal p,.legal li,.footer-copy{color:var(--muted)}.panel,.hero-panel{background:var(--surface);box-shadow:var(--shadow);gap:10px;padding:12px;display:grid}.hero-panel{background:var(--surface-2)}.panel.row{grid-template-columns:minmax(0,1fr) auto;align-items:start}.section-heading{gap:4px;display:grid}.section-heading h2,.panel h3{font-size:1.14rem}.eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:.68rem;font-weight:700}.hero-copy{max-width:56ch}.button{appearance:none;background:var(--accent-2);color:#fff;letter-spacing:.04em;cursor:pointer;border:0;padding:8px 12px;font-size:.75rem;font-weight:700;box-shadow:0 6px 18px #46377847}.button:hover{background:var(--accent)}.button:disabled{opacity:.5;cursor:not-allowed}.button.secondary,.link-button{background:var(--surface-3);color:var(--text);box-shadow:none}.button-row{flex-wrap:wrap;gap:8px;display:flex}.error,.notice,.notice-banner{padding:9px 11px}.error{color:#ffd7dc;background:#ff9ca81a}.notice{color:#d4f6eb;background:#9fd5c31f}.notice-banner{background:var(--accent-soft);color:#ebddff}.input{width:100%;color:var(--text);background:#0f141d;border:0;outline:0;padding:10px 12px}.input:focus{box-shadow:inset 0 0 0 1px #8f76d873}.field{color:#d4dcf1;letter-spacing:.06em;text-transform:uppercase;font-size:.74rem;font-weight:700;display:block}.checkbox{align-items:flex-start;gap:12px;display:flex}.checkbox input[type=checkbox]{accent-color:var(--accent);margin-top:4px}.playlist-list{gap:8px;padding:0;list-style:none;display:grid}.playlist-list-shell{max-height:386px;padding-right:4px;overflow-y:auto}.playlist-list-shell::-webkit-scrollbar{width:8px}.playlist-list-shell::-webkit-scrollbar-thumb{background:var(--surface-3)}.playlist-item{background:var(--surface-2);grid-template-columns:auto auto minmax(0,1fr);align-items:stretch;min-height:106px;padding:7px;position:relative}.playlist-item:hover{background:var(--surface-3)}.playlist-cover{object-fit:cover;background:#121824;flex:none;width:92px;height:92px}.playlist-cover.fallback{background:var(--surface-3);display:inline-block}.playlist-main{gap:2px;min-width:0;display:grid}.playlist-headline{flex-wrap:wrap;align-items:baseline;gap:8px;padding-right:30px;display:flex}.playlist-headline strong{font-size:.94rem}.playlist-stats{color:var(--muted);flex-wrap:wrap;gap:8px;font-size:.72rem;display:flex}.playlist-description,.playlist-meta{color:var(--text);font-size:.72rem}.playlist-meta.subtle{color:var(--muted)}.inline-link{color:#c2b1f2;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex;position:absolute;top:8px;right:8px}.external-icon{width:16px;height:16px}.results-grid{grid-template-columns:1fr;gap:10px;display:grid}.carousel-controls{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid}.carousel-indicator{text-align:center;color:var(--muted);font-size:.8rem;font-weight:600}.recommendation-header{border-bottom:1px solid #ffffff14;gap:2px;padding-bottom:8px;display:grid}.recommendation-criterion{color:#c9baf0;font-size:.78rem;font-weight:600}.recommendation-rationale{color:var(--muted);padding-bottom:4px;font-size:.78rem}.artist-item{border-top:1px solid #ffffff0f;gap:8px;margin-top:2px;padding:10px 0 0;display:grid}.artist-main{grid-template-columns:72px minmax(0,1fr);align-items:start;gap:10px;display:grid}.artist-image{object-fit:cover;background:#121824;width:72px;height:72px}.artist-image.fallback{background:var(--surface-3);display:inline-block}.artist-copy{gap:3px;display:grid}.artist-description{color:var(--text);font-size:.77rem}.artist-fit{color:var(--muted);font-size:.75rem}.artist-links{flex-wrap:wrap;gap:10px;display:flex}.artist-links a{color:#c2b1f2;font-size:.72rem;font-weight:600}.settings-layout{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:10px;display:grid}.settings-form,.settings-side,.steps-list,.bullet-grid{gap:8px;display:grid}.steps-list li,.bullet-grid li{color:var(--muted)}.legal{gap:14px}.legal h2{margin-bottom:-4px;font-size:1.05rem}.footer{justify-content:space-between;align-items:center;gap:12px;padding:12px 2px 2px;display:flex}.footer-links{color:var(--muted);gap:14px;font-size:.78rem;display:flex}@media (width<=720px){body{font-size:13px}.shell{padding:12px}.settings-layout,.panel.row,.footer{flex-direction:column;grid-template-columns:1fr;align-items:flex-start}.playlist-item{grid-template-columns:auto minmax(0,1fr)}}
