:root{--ink:#f4f4f2;--muted:#f4f4f28a;--faint:#f4f4f257;--line:#f4f4f229;--line-strong:#f4f4f257;--panel:#0a0a0ea8;--spotify:#1db954;--mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--sans:"Helvetica Neue", Inter, system-ui, -apple-system, sans-serif;--radius:6px;--pad:clamp(14px, 2.2vw, 26px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0}html,body,#root{height:100%}body{color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overscroll-behavior:none;background:#06060a;overflow:hidden}.app{background:radial-gradient(120% 90% at 50% 0,#14141c 0%,#06060a 58%,#030305 100%);position:fixed;inset:0}.scene{touch-action:none;display:block;position:absolute;inset:0}.app:after{content:"";pointer-events:none;background:radial-gradient(85% 70% at 50% 45%,#0000 45%,#0000009e 100%);position:absolute;inset:0}.overlay{z-index:2;padding:var(--pad);pointer-events:none;flex-direction:column;gap:12px;display:flex;position:absolute;inset:0}.bar{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.bar>*,.playbar-slot>*{pointer-events:auto}.bar-bottom{align-items:flex-end;margin-top:auto}.bar-notice{justify-content:center}.brand h1{font-family:var(--mono);letter-spacing:.42em;word-spacing:-.5em;text-transform:uppercase;flex-wrap:wrap;align-items:baseline;gap:8px;font-size:clamp(13px,1.5vw,16px);font-weight:600;display:flex}.brand-by{letter-spacing:.16em;word-spacing:normal;text-transform:none;color:var(--muted);white-space:nowrap;font-size:9px;font-weight:400}.source{font-family:var(--mono);letter-spacing:.1em;color:var(--muted);text-transform:lowercase;margin-top:6px;font-size:11px}.count{color:var(--faint)}.bar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.search{align-items:center;gap:8px;display:flex}.search-input{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);width:clamp(150px,20vw,230px);color:var(--ink);font-family:var(--mono);letter-spacing:.04em;border-radius:999px;outline:none;padding:9px 14px;font-size:12px;transition:border-color .18s}.search-input::placeholder{color:var(--faint)}.search-input:focus-visible{border-color:var(--line-strong)}.search-input::-webkit-search-cancel-button{filter:invert();opacity:.5}.btn{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--ink);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;cursor:pointer;border-radius:999px;padding:9px 15px;font-size:11px;text-decoration:none;transition:background .18s,border-color .18s,opacity .18s}.btn:hover:not(:disabled){border-color:var(--line-strong);background:#f4f4f21a}.btn:disabled{opacity:.38;cursor:not-allowed}.btn-primary{background:var(--ink);border-color:var(--ink);color:#08080c}.btn-primary:hover:not(:disabled){background:#fff;border-color:#fff}.btn-icon{flex-shrink:0;place-items:center;width:36px;height:34px;padding:0;display:grid}.btn-icon svg{width:15px;height:15px}.btn-spotify{color:var(--spotify);border-color:#1db9548c}.btn-spotify:hover:not(:disabled){border-color:var(--spotify);background:#1db95424}.layouts{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:999px;gap:6px;padding:5px;display:flex}.chip{color:var(--muted);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:7px 13px;font-size:11px;transition:background .18s,color .18s}.chip:hover{color:var(--ink)}.chip.is-active{background:var(--ink);color:#08080c}.hint{font-family:var(--mono);letter-spacing:.06em;color:var(--faint);max-width:44ch;font-size:11px}.hover-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);align-items:center;gap:12px;max-width:min(420px,62vw);padding:9px 16px 9px 9px;display:flex}.hover-art{object-fit:cover;border-radius:3px;flex-shrink:0;width:46px;height:46px}.hover-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.hover-title,.hover-artist,.hover-sub{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hover-title{letter-spacing:-.01em;font-size:14px;font-weight:600}.hover-artist{color:var(--muted);font-size:12px}.hover-sub{font-family:var(--mono);letter-spacing:.08em;color:var(--faint);text-transform:uppercase;font-size:10px}.banner{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);align-items:center;gap:12px;max-width:62ch;padding:10px 12px 10px 16px;font-size:13px;line-height:1.45;display:flex}.banner-error{color:#ffd9d4;border-color:#ff6b5e73}.banner .btn{flex-shrink:0;padding:5px 10px}.playbar-slot{left:50%;bottom:calc(var(--pad) + 74px);pointer-events:none;width:min(520px, calc(100vw - 2 * var(--pad)));justify-content:center;display:flex;position:absolute;transform:translate(-50%)}.playbar{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);align-items:center;gap:12px;width:100%;padding:9px 10px 9px 9px;animation:.24s ease-out rise;display:flex}.playbar-meta .is-pending{font-family:var(--mono);letter-spacing:.12em;color:var(--faint);text-transform:uppercase;font-size:11px}.playbar-art{object-fit:cover;border-radius:3px;flex-shrink:0;width:42px;height:42px}.playbar-meta{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.playbar-meta strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.playbar-meta span{font-family:var(--mono);letter-spacing:.06em;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}@media (width<=720px){.bar-top{flex-direction:column;align-items:stretch;gap:12px}.bar-actions{justify-content:flex-start}.search{flex:1}.search-input{flex:1;width:100%}.bar-bottom .hover-card,.bar-bottom .hint{display:none}.bar-bottom{justify-content:center}.layouts{scrollbar-width:none;-ms-overflow-style:none;max-width:100%;overflow-x:auto}.layouts::-webkit-scrollbar{display:none}.chip{letter-spacing:.06em;padding:7px 9px;font-size:10px}.playbar-slot{bottom:calc(var(--pad) + 66px)}}@media (prefers-reduced-motion:reduce){.playbar{animation:none}}
