.album-tracklist{background:#ffd220;border:1px solid #00000014;width:100%;margin-top:12px;overflow:hidden}.album-tracklist-header{flex-direction:column;gap:2px;padding:12px 14px;display:flex}.album-tracklist-headerTop{justify-content:flex-start;align-items:center;gap:12px;padding-right:36px;display:flex;position:relative}.album-tracklist-title{color:#1f2a5a;font-weight:800}.album-tracklist-title-suffix{color:#1f2a5a9e}.album-tracklist-title-link{color:inherit;text-decoration:none}.album-tracklist-title-link:hover{text-decoration:underline}.album-tracklist-toggle{color:#1f2a5ab3;cursor:pointer;background:0 0;border:none;border-radius:10px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;transition:background .12s,color .12s,transform 80ms;display:inline-flex;position:absolute;top:50%;right:0;transform:translateY(-50%)}.album-tracklist-toggle:active{transform:translateY(calc(1px - 50%))}.album-tracklist-toggle:focus-visible{outline:none;box-shadow:0 0 0 3px #667eea38}.album-tracklist-meta{color:#1f2a5ab3;gap:4px;margin-top:6px;font-family:Monaco,Menlo,monospace;font-size:12px;display:grid}.album-tracklist-meta-row{grid-template-columns:78px 1fr;align-items:baseline;gap:10px;display:grid}.album-tracklist-meta-key{color:#1f2a5a73;letter-spacing:.02em}.album-tracklist-meta-value{color:#0f172ab3;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.album-tracklist-empty{color:#0009;padding:14px 16px;font-size:13px}.skeleton-line{background:linear-gradient(90deg,#0000000f 0%,#0000001f 40%,#0000000f 80%) 0 0/240px 100%;border-radius:8px;animation:1.2s ease-in-out infinite shimmer;display:inline-block}.skeleton-line--metaValue{width:min(360px,92%);height:12px}.skeleton-line--metaValueShort{width:min(120px,46%);height:12px}@keyframes shimmer{0%{background-position:-240px 0}to{background-position:240px 0}}.album-tracklist-items{margin:0;padding:0;list-style:none}.album-tracklist-itemsWrap{opacity:0;max-height:0;transition:max-height .26s,opacity .2s;overflow:hidden}.album-tracklist-itemsWrap.is-expanded{opacity:1}@media (prefers-reduced-motion:reduce){.album-tracklist-itemsWrap{transition:none}}.album-tracklist-disc{letter-spacing:.06em;text-transform:uppercase;color:#0f172a99;background:#00000005;border-top:1px solid #0000000f;padding:8px 14px;font-size:11px;font-weight:800}.album-tracklist-item{padding:8px 14px}.album-tracklist-item:first-child{border-top:none}.album-tracklist-item.is-current{background:#ff00801a}.album-tracklist-main{grid-template-columns:34px 1fr auto;align-items:center;gap:10px;display:grid}.album-tracklist-left{justify-content:flex-start;align-items:center;display:flex}.album-tracklist-num{font-variant-numeric:tabular-nums;color:#0f172a94;font-size:11px}.album-tracklist-track{flex-direction:column;gap:1px;min-width:0;display:flex}.album-tracklist-track-title{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.album-tracklist-track-meta{color:#0f172a9e;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.album-tracklist-right{align-items:center;display:flex}.album-tracklist-duration{color:#0f172a9e;font-variant-numeric:tabular-nums;font-size:11px}.debug-panel{z-index:9999;color:#e8e8e8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#101012eb;border:1px solid #ffffff24;border-radius:8px;flex-direction:column;width:280px;max-height:70vh;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;line-height:1.5;display:flex;position:fixed;bottom:12px;right:12px;box-shadow:0 8px 28px #00000073}.debug-panel__header{border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:center;padding:6px 10px;display:flex}.debug-panel__title{letter-spacing:.04em;text-transform:uppercase;color:#ffd200;font-weight:700}.debug-panel__close{color:#aaa;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:16px;line-height:1}.debug-panel__close:hover{color:#fff}.debug-panel__body{padding:6px 10px 10px;overflow-y:auto}.debug-panel__section{margin-top:8px}.debug-panel__section:first-child{margin-top:0}.debug-panel__sectionTitle{color:#ff0080;margin:4px 0 2px;font-weight:700}.debug-panel__row{justify-content:space-between;gap:8px;display:flex}.debug-panel__key{color:#9aa;flex:none}.debug-panel__value{color:#e8e8e8;text-align:right;word-break:break-all}.now-playing{flex-direction:column;display:flex}.cover-art{aspect-ratio:1;background:0 0;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.cover-art__img{object-fit:contain;width:100%;height:100%}.cover-art__img.is-loading{opacity:0}.cover-art__placeholder{background:0 0;border-radius:0;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.cover-art__spinner{border:3px solid #00000029;border-top-color:#0000006b;border-radius:999px;width:28px;height:28px;animation:.9s linear infinite spin}.now-playing__skeletonText{padding:2px 0}.skeleton-block,.skeleton-line{background:linear-gradient(90deg,#0000000f 0%,#0000001f 40%,#0000000f 80%) 0 0/240px 100%;animation:1.2s ease-in-out infinite shimmer}.skeleton-line{border-radius:8px}.skeleton-line--title{width:min(440px,92%);height:28px;margin-bottom:12px}.skeleton-line--artist{width:min(260px,60%);height:18px;margin-bottom:8px}@keyframes spin{to{transform:rotate(360deg)}}.track-info{justify-content:space-between;align-items:center;width:100%;padding:0 14px;display:flex}.track-info__left{flex:none}.track-info__text{text-align:left;flex:auto;min-width:0}.track-info__right{flex:none;justify-content:flex-end;margin-left:auto;display:flex}.track-title{color:#1a1a1a;word-break:break-word;margin-bottom:12px;font-size:28px;font-weight:800}.track-artist{color:#666;margin-bottom:8px;font-size:18px;font-weight:800}.album-info{color:#999;font-size:12px;line-height:1.4}.progress-bar{background:repeating-linear-gradient(45deg,#ccc 0 12px,#aaa 12px 24px);width:auto;height:12px;margin-bottom:14px}.progress-fill{height:100%;transition:width .1s linear;position:relative;overflow:hidden}.progress-fill:before{content:"";pointer-events:none;background:repeating-linear-gradient(45deg,#ffd200 0 12px,#ff0080 12px 24px);width:200vw;height:100%;position:absolute;top:0;left:0}.now-playing-controls{justify-content:center;width:100%;padding:6px 0 0;display:flex}.volume{flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative}.volume__mute{color:#1f2a5ad9;cursor:pointer;background:#ffffffbf;border:none;border-radius:10px;justify-content:center;align-items:center;width:28px;height:28px;transition:transform 80ms,background .12s;display:inline-flex}.volume__mute:focus-visible{outline:none;box-shadow:0 0 0 3px #667eea38}.volume__mute:active{transform:translateY(1px)}.volume__mute--silent{color:#a00}.volume__slider:hover{cursor:pointer}.volume__slider{touch-action:none;outline:none;width:100%;min-width:0;height:28px;position:relative}.volume__sliderTrack{background:#667eea38;border-radius:999px;height:6px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.volume__sliderFill{background:#667eeae6;border-radius:999px;height:6px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.volume__sliderThumb{background:#667eea;border:2px solid #fffffff2;border-radius:50%;width:14px;height:14px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 2px 8px #667eea47}.volume__slider:focus-visible{box-shadow:0 0 0 3px #667eea38}.volume__slider--muted .volume__sliderTrack{background:#7a141438}.volume__slider--muted .volume__sliderFill{background:#7a1414e6}.volume__slider--muted .volume__sliderThumb{background:#7a1414;box-shadow:0 2px 8px #ff008040}.volume--blocked{justify-content:center}.volume__popup{transform:translateX(var(--volume-popup-shift,0px)) translateY(-50%);opacity:0;pointer-events:none;background:#fff;border:1px solid #00000014;width:clamp(160px,30vw,320px);max-width:calc(100vw - 16px);padding:10px 12px;transition:opacity .12s,transform .12s;position:absolute;top:50%;right:calc(100% + 10px)}.volume__popup:before{content:"";width:10px;position:absolute;top:10px;bottom:10px;right:-10px}@media (hover:hover) and (pointer:fine){.volume:hover .volume__popup{opacity:1;pointer-events:auto;transform:translateX(var(--volume-popup-shift,0px)) translateY(-50%)}}@media (hover:none){.volume:focus-within .volume__popup{opacity:1;pointer-events:auto;transform:translateX(var(--volume-popup-shift,0px)) translateY(-50%)}}.player-wrapper{background:0 0;border:none;width:100%;position:relative;overflow:hidden}.player-media{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0}audio,video{width:100%;height:auto;display:block}
