@layer reset{*,:before,:after{box-sizing:border-box;min-width:0}:root{interpolate-size:allow-keywords;scrollbar-gutter:stable;text-wrap:pretty;overflow-wrap:break-word;font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{min-height:100svh;margin:0}h1,h2,h3,h4{text-wrap:balance}img,svg,video{flex:none;max-width:100%;height:auto;display:block}button,input,select,textarea{font:inherit;color:inherit}input,textarea,select{font-size:max(16px,1rem)}textarea{text-wrap:stable}button,a,[role=button]{touch-action:manipulation}button,[role=button]{-webkit-user-select:none;user-select:none}[hidden]{display:none!important}:focus-visible{outline:max(2px, .08em) solid var(--focus-color,currentColor);outline-offset:.2em}}@layer tokens{:root{color-scheme:dark;--terminal-background:oklch(14.5% 0 none);--terminal-surface:oklch(16.8% 0 none);--terminal-surface-raised:oklch(19.1% 0 none);--terminal-surface-hover:oklch(21.8% 0 none);--terminal-border-subtle:oklch(23% 0 none);--terminal-border:oklch(26% 0 none);--terminal-border-strong:oklch(33.3% 0 none);--terminal-text:oklch(94.6% 0 none);--terminal-text-muted:oklch(70.6% 0 none);--terminal-text-faint:oklch(52.8% 0 none);--terminal-accent:oklch(68.4% .212 40.6);--terminal-accent-hover:color-mix(in oklch, var(--terminal-accent), white 15%);--terminal-accent-soft:color-mix(in oklch, var(--terminal-accent) 12%, transparent);--terminal-on-accent:var(--terminal-background);--terminal-success:oklch(77.2% .154 154.2);--terminal-warning:oklch(84.3% .141 85.5);--terminal-danger:oklch(72.1% .174 18.3);--terminal-info:oklch(76.9% .117 261.6);--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--duration-press:.16s;--duration-popover:.2s;--duration-drawer:.3s;--press-scale:.97;--focus-color:var(--tm-accent);--tm-bg:var(--terminal-background);--tm-surface:oklch(17.8% 0 none);--tm-surface-raised:var(--terminal-surface-raised);--tm-surface-muted:var(--terminal-surface-hover);--tm-surface-sunken:oklch(11.5% 0 none);--tm-border:oklch(23.9% 0 none);--tm-border-strong:oklch(28.5% 0 none);--tm-text:oklch(95.9% .01 87.5);--tm-text-muted:oklch(71.5% .015 78.2);--tm-text-subtle:oklch(52.6% .012 81.8);--tm-accent:oklch(75.7% .177 60.2);--tm-accent-strong:oklch(80.3% .159 69.8);--tm-accent-text:var(--tm-bg);--tm-info:oklch(72.9% .142 256.5);--tm-success:oklch(76.9% .142 154.3);--tm-warning:var(--tm-accent);--tm-danger:oklch(71.5% .179 29.1);--tm-shadow:0 -1px 0 var(--tm-border);--tm-shadow-elevated:0 .75rem 2rem oklch(0% none none/.5);--tm-radius-sm:.25rem;--tm-radius-md:.375rem;--tm-radius-lg:.5rem;--tm-space-1:.25rem;--tm-space-2:.5rem;--tm-space-3:.75rem;--tm-space-4:1rem;--tm-space-5:1.5rem;--tm-space-6:2rem;--tm-font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--tm-font-mono:"Berkeley Mono", "JetBrains Mono", "SF Mono", ui-monospace, Menlo, Consolas, monospace;--tm-text-xs:.75rem;--tm-text-sm:.85rem;--tm-text-base:.95rem;--tm-text-lg:1.1rem;--tm-content-max:64rem;--tm-play-bar-height:4.5rem}}@layer base{:root{color:var(--tm-text);background:var(--tm-bg);font-family:var(--tm-font-sans);font-size:14px;line-height:1.5}a{color:inherit}code{background:var(--tm-surface-muted);border:1px solid var(--tm-border);border-radius:var(--tm-radius-sm);color:var(--tm-accent);font-family:var(--tm-font-mono);padding:.1rem .35rem;font-size:.85em}}@layer utilities{.u-stack{gap:var(--u-stack-gap,var(--tm-space-4));display:grid}.u-stack-tight{--u-stack-gap:var(--tm-space-2)}.u-cluster{align-items:center;gap:var(--u-cluster-gap,var(--tm-space-2));flex-wrap:wrap;display:flex}.u-row{align-items:center;gap:var(--u-row-gap,var(--tm-space-3));display:flex}.u-row-between{justify-content:space-between}.u-grow{flex:auto}.u-truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.u-text-mono{font-family:var(--tm-font-mono)}.u-text-eyebrow{color:var(--tm-text-subtle);font-family:var(--tm-font-mono);font-size:var(--tm-text-xs);letter-spacing:.08em;text-transform:uppercase}.u-text-muted{color:var(--tm-text-muted)}.u-text-subtle{color:var(--tm-text-subtle)}.u-tabular{font-variant-numeric:tabular-nums}.u-divider-top{border-top:1px solid var(--tm-border)}}@layer components{.tm-panel{width:min(var(--tm-content-max), 100%);border:1px solid var(--tm-border);border-radius:var(--tm-radius-lg);background:var(--tm-surface);padding:clamp(1.25rem,3vw,2rem)}.tm-card{border:1px solid var(--tm-border);border-radius:var(--tm-radius-md);background:var(--tm-surface-raised);padding:1rem}.tm-button{border-radius:var(--tm-radius-sm);cursor:pointer;font-size:var(--tm-text-sm);min-height:2rem;transition:background .12s var(--ease-out), border-color .12s var(--ease-out), color .12s var(--ease-out);border:1px solid #0000;flex:none;justify-content:center;align-items:center;gap:.5rem;padding:.4rem .75rem;font-weight:600;text-decoration:none;display:inline-flex}.tm-button[data-disabled]{cursor:not-allowed;opacity:.45}.tm-button--primary{background:var(--tm-accent);color:var(--tm-accent-text)}.tm-button--secondary{border-color:var(--tm-border-strong);background:var(--tm-surface-raised);color:var(--tm-text)}.tm-button--ghost{color:var(--tm-text-muted);background:0 0}.tm-button--danger{background:color-mix(in srgb, var(--tm-danger) 18%, var(--tm-surface));color:var(--tm-danger)}.tm-icon-button{border-radius:var(--tm-radius-sm);width:1.85rem;height:1.85rem;color:var(--tm-text-muted);cursor:pointer;transition:background .12s var(--ease-out), border-color .12s var(--ease-out), color .12s var(--ease-out);background:0 0;border:1px solid #0000;flex:none;place-items:center;padding:0;text-decoration:none;display:inline-grid}.tm-icon-button[data-disabled]{cursor:not-allowed;opacity:.35}.tm-icon-button.tm-button--primary{background:var(--tm-accent);color:var(--tm-accent-text)}.tm-icon-button.tm-button--secondary{border-color:var(--tm-border-strong);background:var(--tm-surface-raised);color:var(--tm-text)}@media (hover:hover) and (pointer:fine){.tm-button--primary:hover:not([data-disabled]){background:var(--tm-accent-strong)}.tm-button--secondary:hover:not([data-disabled]){border-color:color-mix(in srgb, var(--tm-accent) 60%, var(--tm-border-strong));background:var(--tm-surface-muted)}.tm-button--ghost:hover:not([data-disabled]),.tm-icon-button:hover:not([data-disabled]){background:var(--tm-surface-muted);color:var(--tm-text)}.tm-icon-button.tm-button--primary:hover:not([data-disabled]){background:var(--tm-accent-strong)}.tm-icon-button.tm-button--secondary:hover:not([data-disabled]){border-color:color-mix(in srgb, var(--tm-accent) 60%, var(--tm-border-strong));background:var(--tm-surface-muted)}}.tm-button:active:not([data-disabled]),.tm-icon-button:active:not([data-disabled]){transform:scale(var(--press-scale))}@media (prefers-reduced-motion:no-preference){.tm-button,.tm-icon-button{transition:background .12s var(--ease-out), border-color .12s var(--ease-out), color .12s var(--ease-out), transform var(--duration-press) var(--ease-out)}}.tm-icon{width:.95rem;height:.95rem}.tm-field{gap:.45rem;display:grid}.tm-field-label{color:var(--tm-text);cursor:pointer;font-size:.9rem;font-weight:700}.tm-field-description{color:var(--tm-text-subtle);margin:0;font-size:.88rem;line-height:1.45}.tm-input{border:1px solid var(--tm-border-strong);border-radius:var(--tm-radius-sm);background:var(--tm-surface-sunken);width:100%;color:var(--tm-text);padding:.55rem .75rem}.tm-input:focus-visible{border-color:var(--tm-accent);outline-color:#0000}.tm-input::placeholder{color:var(--tm-text-subtle)}.tm-input[data-invalid]{border-color:var(--tm-danger)}.tm-check-field,.tm-switch-field{align-items:flex-start;gap:.8rem;display:flex}.tm-check-copy{gap:.25rem;display:grid}.tm-checkbox-control{border:1px solid var(--tm-border-strong);border-radius:var(--tm-radius-sm);background:var(--tm-surface-sunken);cursor:pointer;flex:none;place-items:center;width:1.1rem;height:1.1rem;margin-block-start:.18rem;padding:0;display:grid}.tm-checkbox-control[data-checked]{border-color:var(--tm-accent);background:var(--tm-accent)}.tm-checkbox-control[data-checked]:after{border:solid var(--tm-accent-text);content:"";border-width:0 2px 2px 0;width:.32rem;height:.62rem;transform:rotate(45deg)}.tm-switch-control{border:1px solid var(--tm-border-strong);background:var(--tm-surface-sunken);cursor:pointer;width:2.4rem;height:1.3rem;transition:background .14s var(--ease-out);border-radius:999px;flex:none;align-items:center;padding:0;display:inline-flex;position:relative}.tm-switch-control[data-checked]{border-color:var(--tm-accent);background:var(--tm-accent)}.tm-switch-thumb{background:var(--tm-text);border-radius:999px;flex:none;width:.85rem;height:.85rem;transform:translate(.18rem)}@media (prefers-reduced-motion:no-preference){.tm-switch-thumb{transition:transform .14s var(--ease-out)}}.tm-switch-control[data-checked] .tm-switch-thumb{background:var(--tm-accent-text);transform:translate(1.18rem)}.tm-disclosure{border:1px solid var(--tm-border);border-radius:var(--tm-radius-md);overflow:clip}.tm-disclosure-button{background:var(--tm-surface-raised);cursor:pointer;border:0;width:100%;padding:.7rem .9rem;display:flex}.tm-disclosure-button-content{justify-content:space-between;align-items:center;gap:1rem;width:100%;font-weight:700;display:flex}.tm-disclosure-state{color:var(--tm-accent);letter-spacing:.08em;text-transform:uppercase;font-size:.8rem}.tm-disclosure-panel{color:var(--tm-text-muted);padding:1rem;line-height:1.55}.tm-tab-list{flex-wrap:wrap;gap:.5rem;margin-block-end:.75rem;display:flex}.tm-tab{border:1px solid var(--tm-border);border-radius:var(--tm-radius-sm);color:var(--tm-text-muted);cursor:pointer;font-size:var(--tm-text-sm);background:0 0;padding:.4rem .75rem;font-weight:600}.tm-tab[data-selected]{border-color:color-mix(in srgb, var(--tm-accent) 60%, transparent);background:color-mix(in srgb, var(--tm-accent) 12%, transparent);color:var(--tm-accent-strong)}.tm-tab-panel{border:1px solid var(--tm-border);border-radius:var(--tm-radius-md);background:var(--tm-surface-raised);padding:1rem}.tm-badge{border-radius:var(--tm-radius-sm);width:fit-content;font-family:var(--tm-font-mono);font-size:var(--tm-text-xs);letter-spacing:.04em;text-transform:uppercase;border:1px solid #0000;flex:none;align-items:center;padding:.15rem .45rem;font-weight:500;display:inline-flex}.tm-badge--neutral{border-color:var(--tm-border-strong);background:var(--tm-surface-muted);color:var(--tm-text-muted)}.tm-badge--info{border-color:color-mix(in srgb, var(--tm-info) 45%, transparent);background:color-mix(in srgb, var(--tm-info) 16%, transparent);color:var(--tm-info)}.tm-badge--success{border-color:color-mix(in srgb, var(--tm-success) 45%, transparent);background:color-mix(in srgb, var(--tm-success) 16%, transparent);color:var(--tm-success)}.tm-badge--warning{border-color:color-mix(in srgb, var(--tm-warning) 45%, transparent);background:color-mix(in srgb, var(--tm-warning) 16%, transparent);color:var(--tm-warning)}.tm-badge--danger{border-color:color-mix(in srgb, var(--tm-danger) 45%, transparent);background:color-mix(in srgb, var(--tm-danger) 16%, transparent);color:var(--tm-danger)}.tm-stat{border:1px solid var(--tm-border);border-radius:var(--tm-radius-md);background:var(--tm-surface-raised);gap:.25rem;padding:.9rem;display:grid}.tm-stat-label,.tm-stat-detail{color:var(--tm-text-subtle);font-family:var(--tm-font-mono);font-size:var(--tm-text-xs);letter-spacing:.04em;text-transform:uppercase}.tm-stat-value{color:var(--tm-text);font-family:var(--tm-font-mono);font-variant-numeric:tabular-nums;font-size:1.35rem}.tm-empty-state{border:1px dashed var(--tm-border-strong);border-radius:var(--tm-radius-md);color:var(--tm-text-subtle);text-align:center;padding:1rem}.tm-empty-title{color:var(--tm-text);margin:0 0 .35rem;font-weight:800}.tm-empty-description{margin:0}.app{min-height:100svh;padding:1.25rem 1.5rem calc(var(--tm-play-bar-height) + 2rem);grid-template-rows:auto 1fr;justify-items:center;display:grid}.app-header{width:min(var(--tm-content-max), 100%);justify-content:space-between;align-items:center;gap:1rem;margin-block-end:1.5rem;display:flex}.brand{color:var(--tm-text);font-family:var(--tm-font-mono);letter-spacing:.04em;flex:none;font-size:.95rem;font-weight:600;text-decoration:none}.nav{gap:.25rem;display:flex}.nav-link{border-radius:var(--tm-radius-sm);color:var(--tm-text-muted);font-size:var(--tm-text-sm);transition:background .12s var(--ease-out), color .12s var(--ease-out);border:1px solid #0000;flex:none;padding:.35rem .65rem;text-decoration:none}@media (hover:hover) and (pointer:fine){.nav-link:hover{background:var(--tm-surface-muted);color:var(--tm-text)}}.nav-link-active{background:var(--tm-surface-raised);color:var(--tm-text)}.nav-favorites-slot{align-items:center;min-height:1.85rem;display:inline-flex}.nav-link-placeholder{border-radius:var(--tm-radius-sm);color:#0000;font-size:var(--tm-text-sm);pointer-events:none;-webkit-user-select:none;user-select:none;border:1px solid #0000;padding:.35rem .65rem}.session-actions{align-items:center;gap:.25rem;display:flex}.terminal-session{border-radius:var(--tm-radius-sm);color:var(--tm-text-muted);background:0 0;border:1px solid #0000;align-items:center;gap:.4rem;min-height:1.85rem;padding:.15rem .25rem;display:inline-flex}.terminal-session--loading{background:color-mix(in srgb, var(--tm-surface-muted) 80%, var(--tm-border));color:#0000;min-width:9rem}.terminal-session__avatar{object-fit:cover;border-radius:50%;flex:none;place-items:center;width:1.4rem;height:1.4rem;display:grid}.terminal-session__avatar--fallback{background:var(--tm-surface-raised);border:1px solid var(--tm-border-strong);color:var(--tm-text);font-size:var(--tm-text-xs);text-align:center}.terminal-session__name{color:var(--tm-text);font-size:var(--tm-text-sm);text-overflow:ellipsis;white-space:nowrap;max-width:8rem;overflow:hidden}.terminal-session__sign-in,.terminal-session__sign-out{border:1px solid var(--tm-border);border-radius:var(--tm-radius-sm);color:var(--tm-text-muted);cursor:pointer;font-size:var(--tm-text-sm);background:0 0;flex:none;padding:.35rem .65rem}.terminal-session__sign-in:focus-visible,.terminal-session__sign-out:focus-visible{background:var(--tm-surface-muted);color:var(--tm-text)}@media (hover:hover) and (pointer:fine){.terminal-session__sign-in:hover,.terminal-session__sign-out:hover{background:var(--tm-surface-muted);color:var(--tm-text)}}.terminal-session__sign-in:active,.terminal-session__sign-out:active{transform:scale(var(--press-scale))}@media (prefers-reduced-motion:no-preference){.terminal-session__sign-in,.terminal-session__sign-out{transition:transform var(--duration-press) var(--ease-out)}}.party-route{gap:1rem;display:grid}.terminal-connector{background:var(--tm-surface-raised);border:1px solid var(--tm-border);border-radius:var(--tm-radius-md);color:var(--tm-text-muted);justify-content:space-between;gap:.75rem;padding:.75rem 1rem;display:flex}.terminal-connector__status{margin:0}.terminal-connector__action{background:var(--tm-accent);border-radius:var(--tm-radius-sm);color:var(--tm-accent-text);cursor:pointer;border:0;flex:none;padding:.35rem .65rem}.terminal-connector__action:active{transform:scale(var(--press-scale))}@media (prefers-reduced-motion:no-preference){.terminal-connector__action{transition:transform var(--duration-press) var(--ease-out)}}.track-action-placeholder{flex-shrink:0;width:1.85rem;height:1.85rem;display:inline-block}.app-main{width:min(var(--tm-content-max), 100%)}.panel{border:1px solid var(--tm-border);border-radius:var(--tm-radius-lg);background:var(--tm-surface);padding:1.5rem}.detail-panel{gap:1rem;display:grid}.eyebrow{color:var(--tm-text-subtle);font-family:var(--tm-font-mono);font-size:var(--tm-text-xs);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .5rem}.title{letter-spacing:-.02em;margin:0;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:600;line-height:1.15}.lede{color:var(--tm-text-muted);font-size:var(--tm-text-base);margin:.75rem 0 1.25rem;line-height:1.55}.playlist-section{margin-block-start:1.5rem}.playlist-section+.playlist-section{border-block-start:1px solid var(--tm-border);padding-block-start:1.5rem}.section-title{font-size:var(--tm-text-lg);margin:0}.section-description{color:var(--tm-text-muted);font-size:var(--tm-text-sm);margin:.35rem 0 0}.playlist-create-form{column-gap:var(--tm-space-2);margin:var(--tm-space-3) 0 var(--tm-space-4);row-gap:var(--tm-space-1);grid-template-rows:auto auto auto;grid-template-columns:minmax(0,1fr) auto;max-width:30rem;display:grid}.playlist-create-form>.tm-field{grid-area:1/1/-1;grid-template-rows:subgrid;row-gap:var(--tm-space-1)}.playlist-create-form>.tm-button{grid-area:2/2;align-self:stretch}.playlist-inline-form{flex:auto;align-items:center;gap:.35rem;display:flex}.playlist-name-input{min-width:8rem}.playlist-row-actions{flex-shrink:0;gap:.25rem;display:flex}.personal-playlist-row .tm-button{padding:.3rem .5rem}.library-toolbar{gap:.75rem;margin:0 0 .75rem;display:grid}@media (width>=50rem){.library-toolbar{grid-template-columns:minmax(0,1fr) minmax(12rem,16rem);align-items:start}}.library-sort,.library-playlist-selector{gap:.35rem;max-width:24rem;margin:.75rem 0;display:grid}.library-toolbar>.library-sort{margin:0}.confirmation-dialog{color:inherit;z-index:70;background:0 0;margin:0;position:fixed;inset:0}.confirmation-dialog-backdrop{background:#00000094;position:fixed;inset:0}.confirmation-dialog-panel{background:var(--tm-surface-raised);border:1px solid var(--tm-border-strong);border-radius:var(--tm-radius-md);box-shadow:var(--tm-shadow-elevated);width:100%;max-width:min(26rem,100vw - 2rem);padding:1.25rem;position:fixed;inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}.status--error{color:var(--tm-danger)}.actions{flex-wrap:wrap;gap:.5rem;margin:0 0 1rem;display:flex}.button{border-radius:var(--tm-radius-sm);background:var(--tm-accent);color:var(--tm-accent-text);cursor:pointer;font-size:var(--tm-text-sm);border:0;justify-content:center;align-items:center;padding:.45rem .85rem;font-weight:600;text-decoration:none;display:inline-flex}@media (hover:hover) and (pointer:fine){.button:hover{background:var(--tm-accent-strong)}}.button:active{transform:scale(var(--press-scale))}@media (prefers-reduced-motion:no-preference){.button{transition:transform var(--duration-press) var(--ease-out)}}.link-button{display:inline-flex}.status{color:var(--tm-text-subtle);font-size:var(--tm-text-sm);min-height:1.25rem}.status-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-block-end:.75rem;display:flex}.track-list{gap:.25rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.artwork{aspect-ratio:1;background:var(--tm-surface-muted);border:1px solid var(--tm-border);border-radius:var(--tm-radius-sm);flex:none;overflow:clip}.artwork--track{height:2.5rem}.artwork--playlist{height:3rem}.artwork--hero{border-radius:var(--tm-radius-md);height:clamp(7rem,20vw,11rem)}.artwork--player{height:2.5rem}.artwork-image,.artwork-fallback,.artwork picture{width:100%;height:100%;display:block}.artwork-image{object-fit:cover}.artwork-fallback{background:linear-gradient(135deg, transparent 40%, color-mix(in srgb, var(--tm-accent) 16%, transparent)), var(--tm-surface-muted)}.track{border-radius:var(--tm-radius-sm);transition:background .12s var(--ease-out);background:0 0;align-items:center;gap:.75rem;padding:.4rem .6rem;display:flex}@media (hover:hover) and (pointer:fine){.track:hover{background:var(--tm-surface-raised)}}.track--active{background:var(--tm-surface-raised);box-shadow:inset 2px 0 0 0 var(--tm-accent-strong)}.track--active .track-title{color:var(--tm-accent-strong)}.track--active .track-actions{opacity:1}.track-info{flex:auto;gap:.05rem;display:grid}.track-title{color:var(--tm-text);font-size:var(--tm-text-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:500;line-height:1.25;text-decoration:none;display:block;overflow:hidden}@media (hover:hover) and (pointer:fine){.track-title:hover{color:var(--tm-accent-strong)}}.track-artist{color:var(--tm-text-subtle);font-size:var(--tm-text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.track-listens{color:var(--tm-text-muted);font-size:var(--tm-text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.track-actions{opacity:.55;transition:opacity .12s var(--ease-out);flex-shrink:0;align-items:center;gap:.25rem;display:flex}.track:focus-within .track-actions{opacity:1}@media (hover:hover) and (pointer:fine){.track:hover .track-actions{opacity:1}}.track-meta{grid-template-columns:max-content 1fr;gap:.35rem 1rem;margin:0;display:grid}.track-meta dt{color:var(--tm-text-subtle);font-family:var(--tm-font-mono);font-size:var(--tm-text-xs);letter-spacing:.04em;text-transform:uppercase}.track-meta dd{color:var(--tm-text);overflow-wrap:anywhere;margin:0}.steps{color:var(--tm-text-muted);gap:.5rem;margin:0;padding-inline-start:1.25rem;line-height:1.55;display:grid}.play-bar{z-index:10;min-height:var(--tm-play-bar-height);background:var(--tm-surface);border-block-start:1px solid var(--tm-border);box-shadow:var(--tm-shadow);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:1rem;padding:.6rem 1rem;display:grid;position:fixed;inset-block-end:0;inset-inline:0}.play-bar-info{gap:.1rem;display:grid}.play-bar-identity{align-items:center;gap:.65rem;display:flex}.play-bar-title{color:var(--tm-text);font-size:var(--tm-text-base);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:600;overflow:hidden}.play-bar-artist{color:var(--tm-text-subtle);font-size:var(--tm-text-xs);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.play-bar-listens,.play-bar-context{color:var(--tm-text-muted);font-size:var(--tm-text-xs);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.play-bar-context-link{text-decoration:none}@media (hover:hover) and (pointer:fine){.play-bar-context-link:hover{color:var(--tm-accent-strong);text-decoration:underline}}.play-bar-center{grid-template-columns:auto minmax(12rem,28rem);align-items:center;gap:.85rem;display:grid}.play-bar-controls{align-items:center;gap:.15rem;display:flex}.play-bar-icon-button{border-radius:var(--tm-radius-sm);width:1.85rem;height:1.85rem;color:var(--tm-text-muted);cursor:pointer;transition:background .12s var(--ease-out), color .12s var(--ease-out);background:0 0;border:1px solid #0000;flex:none;place-items:center;padding:0;display:inline-grid}@media (prefers-reduced-motion:no-preference){.play-bar-icon-button{transition:background .12s var(--ease-out), color .12s var(--ease-out), transform var(--duration-press) var(--ease-out)}}.play-bar-icon-button:disabled{cursor:not-allowed;opacity:.35}.play-bar-icon-button-active{background:var(--tm-surface-muted);color:var(--tm-accent)}.play-bar-icon-button-primary{background:var(--tm-text);width:2.1rem;height:2.1rem;color:var(--tm-bg);border-radius:999px}@media (hover:hover) and (pointer:fine){.play-bar-icon-button:hover:not(:disabled){background:var(--tm-surface-muted);color:var(--tm-text)}.play-bar-icon-button-primary:hover:not(:disabled){background:var(--tm-accent);color:var(--tm-accent-text)}}.play-bar-icon-button:active:not(:disabled){transform:scale(var(--press-scale))}.play-bar-icon{width:.95rem;height:.95rem}.play-bar-icon-button-primary .play-bar-icon{width:1rem;height:1rem}.play-bar-timeline{grid-template-columns:2.5rem 1fr 2.5rem;align-items:center;gap:.5rem;display:grid}.play-bar-time{color:var(--tm-text-subtle);font-family:var(--tm-font-mono);font-size:var(--tm-text-xs);font-variant-numeric:tabular-nums;text-align:center}.play-bar-slider{padding:.35rem 0;position:relative}.play-bar-slider-track{background:var(--tm-surface-muted);cursor:pointer;border-radius:999px;height:.2rem;overflow:clip}.play-bar-slider-fill{border-radius:inherit;background:var(--tm-accent)}.play-bar-slider-thumb{background:var(--tm-accent);cursor:grab;opacity:0;width:.7rem;height:.7rem;transition:opacity .12s var(--ease-out);border:0;border-radius:999px;margin-block-start:-.35rem;inset-block-start:50%}@media (prefers-reduced-motion:no-preference){.play-bar-slider-thumb{transition:opacity .12s var(--ease-out), transform .12s var(--ease-out)}}.play-bar-slider-thumb[data-dragging]{opacity:1}@media (hover:hover) and (pointer:fine){.play-bar-slider:hover .play-bar-slider-thumb{opacity:1}}.play-bar-slider-thumb[data-dragging]{cursor:grabbing;transition-duration:60ms}.play-bar-slider[data-disabled]{opacity:.4}.play-bar-slider[data-disabled] .play-bar-slider-track,.play-bar-slider[data-disabled] .play-bar-slider-thumb{cursor:not-allowed}.play-bar-actions{color:var(--tm-text-subtle);font-size:var(--tm-text-xs);justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.play-bar-volume-popover{display:inline-flex;position:relative}.play-bar-volume-button[data-open]{background:var(--tm-surface-muted);color:var(--tm-text)}.play-bar-volume-panel{z-index:20;border:1px solid var(--tm-border-strong);border-radius:var(--tm-radius-md);background:var(--tm-surface-raised);width:10rem;box-shadow:var(--tm-shadow);padding:.75rem}.play-bar-volume-control{gap:.55rem;display:grid}.play-bar-volume-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.play-bar-volume-label{color:var(--tm-text-subtle);cursor:pointer;font-size:var(--tm-text-xs)}.play-bar-volume-slider{width:100%;padding:.45rem 0}.play-bar-volume-panel .play-bar-slider-thumb{opacity:1}.play-bar-volume-value{color:var(--tm-text-subtle);font-family:var(--tm-font-mono);font-size:var(--tm-text-xs);font-variant-numeric:tabular-nums;text-align:end}.play-bar-queue{color:var(--tm-text-subtle);font-family:var(--tm-font-mono);font-size:var(--tm-text-xs);font-variant-numeric:tabular-nums}.toast-stack{width:min(28rem,100vw - 1.5rem);padding:calc(env(safe-area-inset-top,0px) + .75rem) 1rem 0!important}.toast-entry{opacity:1;transform-origin:top;display:block;transform:translateY(0)scale(1)}.toast-entry[data-transition]{transition:opacity .22s var(--ease-out)}@media (prefers-reduced-motion:no-preference){.toast-entry[data-transition]{transition:opacity .22s var(--ease-out), transform .32s cubic-bezier(.34, 1.56, .64, 1)}}.toast-entry[data-closed]{opacity:0;transform:translateY(-120%)scale(.94)}.toast-entry[data-closed][data-leave]{transform:translateY(-30%)scale(.96)}.toast{border:1px solid var(--tm-border-strong);border-left:3px solid var(--tm-text-subtle);border-radius:var(--tm-radius-md);background:var(--tm-surface-raised);width:100%;color:var(--tm-text);font-size:var(--tm-text-base);align-items:center;gap:.7rem;padding:.85rem .75rem .85rem 1rem;font-weight:500;line-height:1.35;display:flex;position:relative;box-shadow:0 16px 40px oklch(0% none none/.55),0 2px 6px oklch(0% none none/.4),inset 0 1px oklch(100% 5.96046e-8 none/.03)}.toast--info{border-left-color:var(--tm-info)}.toast--success{border-left-color:var(--tm-success)}.toast--warning{border-left-color:var(--tm-warning)}.toast--danger{border-left-color:var(--tm-danger)}.toast-icon{width:1.6rem;height:1.6rem;color:var(--tm-text-subtle);background:color-mix(in srgb, currentcolor 14%, transparent);border-radius:999px;flex:none;place-items:center;display:inline-grid}.toast-icon .tm-icon{width:1rem;height:1rem}.toast--info .toast-icon{color:var(--tm-info)}.toast--success .toast-icon{color:var(--tm-success)}.toast--warning .toast-icon{color:var(--tm-warning)}.toast--danger .toast-icon{color:var(--tm-danger)}.toast-message{overflow-wrap:anywhere;flex:auto}.toast-dismiss{border-radius:var(--tm-radius-sm);width:1.6rem;height:1.6rem;color:var(--tm-text-subtle);cursor:pointer;transition:color .12s var(--ease-out), background .12s var(--ease-out);background:0 0;border:0;flex:none;place-items:center;padding:0;display:inline-grid}@media (hover:hover) and (pointer:fine){.toast-dismiss:hover{background:var(--tm-surface-muted);color:var(--tm-text)}}.toast-dismiss:active{transform:scale(var(--press-scale))}@media (prefers-reduced-motion:no-preference){.toast-dismiss{transition:color .12s var(--ease-out), background .12s var(--ease-out), transform var(--duration-press) var(--ease-out)}}.toast-dismiss .tm-icon{width:.85rem;height:.85rem}@media (width<50rem){.play-bar{grid-template-columns:minmax(0,1fr) auto}.play-bar-center{grid-template-columns:auto minmax(0,1fr)}.play-bar-actions{grid-column:1/-1;justify-content:space-between}}@media (width<36rem){.app{padding:1rem 1rem calc(var(--tm-play-bar-height) + 1.5rem)}.app-header{flex-direction:column;align-items:flex-start;gap:.75rem}.session-actions{justify-content:flex-end;align-self:stretch}.panel{padding:1rem}.track{gap:.5rem;padding-inline:.35rem}.artwork--track,.artwork--playlist{height:2.25rem}.playlist-create-form{grid-template-rows:auto auto auto auto;grid-template-columns:minmax(0,1fr)}.playlist-create-form>.tm-field{grid-row:1/4}.playlist-create-form>.tm-button{grid-area:4/1;justify-self:start;margin-block-start:var(--tm-space-1)}.play-bar{grid-template-columns:minmax(0,1fr)}.play-bar-center{grid-template-columns:auto minmax(0,1fr)}.play-bar-actions{gap:.5rem}.toast-stack{width:calc(100vw - 1.25rem);padding:calc(env(safe-area-inset-top,0px) + .5rem) .625rem 0!important}.toast{font-size:var(--tm-text-sm);padding:.75rem .65rem .75rem .85rem}}}
