/* PopShop™ — PS-MUSIC-008 Premium Music Library */
.psml{font-family:var(--ps-font,'DM Sans',sans-serif);color:var(--pssc-text,var(--ps-text,#f5f7f8));--ml-line:rgba(255,255,255,.09);--ml-muted:var(--pssc-muted,#8e96a0);--ml-surface:rgba(255,255,255,.045);min-width:0}.psml *{box-sizing:border-box}.psml button,.psml input,.psml select{font:inherit}.psml button{cursor:pointer}.psml-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:2px 0 14px}.psml-kicker{font-size:9px;font-weight:900;letter-spacing:.15em;color:var(--pssc-shop-accent,var(--pssc-accent,#00cec9));margin-bottom:5px}.psml-head h3{font:800 20px/1.05 var(--ps-display,'Outfit',sans-serif);margin:0}.psml-head p{font-size:11px;color:var(--ml-muted);margin:6px 0 0;max-width:520px;line-height:1.45}.psml-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.psml button{border:1px solid var(--ml-line);background:rgba(255,255,255,.055);color:inherit;border-radius:11px;min-height:36px;padding:0 11px;font-size:10px;font-weight:850}.psml button.primary,.psml-sheet button.primary,.psml-agree button.primary{background:linear-gradient(135deg,var(--pssc-shop-primary,var(--ps-primary,#00e676)),var(--pssc-shop-accent,var(--ps-accent,#00cec9)));color:#06100d;border-color:transparent}.psml button.danger,.psml-sheet button.danger{color:#ff8087;border-color:rgba(255,95,105,.28);background:rgba(255,95,105,.08)}.psml-switch{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--ml-line);background:rgba(255,255,255,.035);border-radius:999px;padding:5px 9px;cursor:pointer}.psml-switch input{position:absolute;opacity:0}.psml-switch span{width:28px;height:16px;border-radius:999px;background:#32363d;position:relative;transition:.18s}.psml-switch span:after{content:'';position:absolute;left:2px;top:2px;width:12px;height:12px;border-radius:50%;background:#fff;transition:.18s}.psml-switch input:checked+span{background:var(--pssc-shop-primary,var(--ps-primary,#00e676))}.psml-switch input:checked+span:after{transform:translateX(12px);background:#06100d}.psml-switch em{font-style:normal;font-size:9px;font-weight:850}.psml-now{border:1px solid color-mix(in srgb,var(--pssc-shop-accent,var(--ps-accent,#00cec9)) 28%,transparent);border-radius:17px;background:linear-gradient(135deg,color-mix(in srgb,var(--pssc-shop-primary,var(--ps-primary,#00e676)) 8%,transparent),color-mix(in srgb,var(--pssc-shop-accent,var(--ps-accent,#00cec9)) 7%,transparent));padding:11px;margin-bottom:10px}.psml-now-empty,.psml-now{display:flex;align-items:center;gap:11px}.psml-now-empty>span,.psml-now-art{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.06);font-size:19px;overflow:hidden;flex:0 0 auto}.psml-now-art img{width:100%;height:100%;object-fit:cover}.psml-now-empty strong{display:block;font-size:12px}.psml-now-empty small{display:block;color:var(--ml-muted);font-size:10px;margin-top:3px}.psml-now-copy{min-width:0;flex:1}.psml-now-copy>span{display:block;font-size:8px;font-weight:900;letter-spacing:.12em;color:var(--ml-muted)}.psml-now-copy strong{display:block;font-size:13px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.psml-now-copy small{display:block;font-size:9px;color:var(--ml-muted);margin-top:3px}.psml-now-badges{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.psml-now-badges span{font-size:8px;font-weight:850;border:1px solid var(--ml-line);border-radius:999px;padding:4px 6px;background:rgba(255,255,255,.04)}.psml-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--ml-line);margin-bottom:9px}.psml-tabs{display:flex;gap:3px}.psml-tabs button{border:0;background:transparent;border-radius:0;color:var(--ml-muted);padding:0 8px;border-bottom:2px solid transparent}.psml-tabs button.active{color:inherit;border-bottom-color:var(--pssc-shop-accent,var(--ps-accent,#00cec9))}.psml-playback label{display:flex;align-items:center;gap:7px;color:var(--ml-muted);font-size:9px;font-weight:800}.psml-playback select{height:31px;border-radius:9px;border:1px solid var(--ml-line);background:#111419;color:#e8edf0;font-size:9px;font-weight:800;padding:0 8px;outline:0}.psml-body{display:flex;flex-direction:column;gap:7px;min-height:104px}.psml-loading{padding:26px;text-align:center;color:var(--ml-muted);font-size:11px}.psml-track{display:grid;grid-template-columns:34px 44px minmax(0,1fr) auto;gap:9px;align-items:center;border:1px solid var(--ml-line);border-radius:14px;background:rgba(255,255,255,.033);padding:8px;transition:border-color .16s,transform .16s}.psml-track.is-single{border-color:color-mix(in srgb,var(--pssc-shop-accent,var(--ps-accent,#00cec9)) 48%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--pssc-shop-accent,var(--ps-accent,#00cec9)) 7%,transparent)}.psml-track-play{width:32px;height:32px;min-height:0!important;padding:0!important;border-radius:50%!important}.psml-track-art{width:44px;height:44px;border-radius:11px;display:grid;place-items:center;overflow:hidden;background:rgba(255,255,255,.06);font-size:16px}.psml-track-art img{width:100%;height:100%;object-fit:cover}.psml-track-copy{min-width:0}.psml-track-copy strong,.psml-track-copy span,.psml-track-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.psml-track-copy strong{font-size:11px}.psml-track-copy span{font-size:9px;color:#b5bcc3;margin-top:2px}.psml-track-copy small{font-size:8px;color:var(--ml-muted);margin-top:3px;letter-spacing:.04em}.psml-track-actions{display:flex;gap:5px;align-items:center}.psml-track-actions button{min-height:31px;padding:0 8px;font-size:8px}.psml-empty{border:1px dashed rgba(255,255,255,.13);border-radius:16px;padding:22px 15px;text-align:center;color:var(--ml-muted);display:grid;justify-items:center;gap:5px}.psml-empty-icon{font-size:25px;color:var(--pssc-shop-accent,var(--ps-accent,#00cec9))}.psml-empty strong{color:var(--pssc-text,var(--ps-text,#f5f7f8));font-size:12px}.psml-empty span{font-size:9px;max-width:330px;line-height:1.45}.psml-empty button{margin-top:7px}.psml-provider{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--ml-line);border-radius:14px;padding:9px;background:rgba(255,255,255,.03)}.psml-provider-icon{width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.06);display:grid;place-items:center;font-size:15px}.psml-provider-copy strong,.psml-provider-copy span{display:block}.psml-provider-copy strong{font-size:11px}.psml-provider-copy span{font-size:9px;color:var(--ml-muted);margin-top:3px}.psml-agree-overlay,.psml-sheet-overlay{position:fixed;inset:0;z-index:260000;background:rgba(0,0,0,.7);backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px);display:flex;align-items:flex-end;justify-content:center}.psml-agree,.psml-sheet{width:min(500px,100%);background:#111419;color:#f4f7f8;border:1px solid rgba(255,255,255,.1);border-radius:22px 22px 0 0;padding:18px 16px calc(18px + env(safe-area-inset-bottom));box-shadow:0 -28px 70px rgba(0,0,0,.6);font-family:var(--ps-font,'DM Sans',sans-serif)}.psml-agree h3,.psml-sheet h3{font:800 18px var(--ps-display,'Outfit',sans-serif);margin:0 0 8px}.psml-agree p,.psml-sheet p{font-size:10px;color:#929aa3;line-height:1.45}.psml-sheet-grab{width:42px;height:4px;border-radius:999px;background:rgba(255,255,255,.17);margin:-6px auto 13px}.psml-check{display:flex;align-items:flex-start;gap:10px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.035);padding:12px;font-size:11px;line-height:1.45;cursor:pointer}.psml-check input{margin-top:2px;accent-color:#00e676}.psml-agree-actions,.psml-sheet-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.psml-agree button,.psml-sheet button{min-height:40px;border:1px solid rgba(255,255,255,.1);border-radius:11px;background:rgba(255,255,255,.05);color:#f4f7f8;padding:0 13px;font-size:10px;font-weight:850}.psml-agree button:disabled{opacity:.35;cursor:not-allowed}.psml-sheet>button{display:block;width:100%;margin-top:7px;text-align:left}.psml-track-sheet label{display:block;font-size:9px;color:#949ca4;font-weight:800;margin:10px 0}.psml-track-sheet input{display:block;width:100%;margin-top:5px;height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.09);background:#0d0f12;color:#f4f7f8;padding:0 11px;outline:0}.psml-cover-row{display:flex;align-items:center;gap:10px;margin-top:9px}.psml-cover-preview{width:56px;height:56px;border-radius:12px;background:#0d0f12;border:1px solid rgba(255,255,255,.09);display:grid;place-items:center;overflow:hidden}.psml-cover-preview img{width:100%;height:100%;object-fit:cover}.psml-toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom));z-index:300000;transform:translate(-50%,18px);opacity:0;background:#15181d;color:#f4f7f8;border:1px solid rgba(255,255,255,.11);border-radius:12px;padding:10px 13px;box-shadow:0 14px 45px rgba(0,0,0,.5);font:750 11px var(--ps-font,'DM Sans',sans-serif);transition:.18s;max-width:min(90vw,420px);text-align:center}.psml-toast.show{opacity:1;transform:translate(-50%,0)}.psml-toast.error{border-color:rgba(255,90,100,.35);color:#ff9da3}.psml-store-chip{position:fixed;left:12px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:9800}.psml-chip-state{font-size:9px;font-weight:900;opacity:.72}
/* Audio Item component surfaces */
.ps-audio-item{border:1px solid color-mix(in srgb,var(--ps-primary,#00e676) 28%,transparent);border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--ps-primary,#00e676) 7%,transparent),rgba(255,255,255,.025));padding:10px;display:grid;gap:8px}.ps-audio-item__meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.ps-audio-item__artist{font-size:10px;color:var(--ps-text-muted,#8e96a0);font-weight:700}.ps-audio-item__price{font-size:11px;font-weight:900;color:var(--ps-primary,#00e676)}.ps-audio-item audio{width:100%;height:32px}.ps-audio-item__links{display:flex;gap:6px;flex-wrap:wrap}.ps-audio-item__links a{display:inline-flex;align-items:center;justify-content:center;min-height:30px;border-radius:999px;padding:0 10px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:inherit;text-decoration:none;font-size:9px;font-weight:850}.ps-audio-item__links a.primary{background:var(--ps-primary,#00e676);color:#07110d;border-color:transparent}.ps-audio-item__preview-link{font-size:10px;font-weight:800;color:var(--ps-primary,#00e676);text-decoration:none}.psf-audio-links{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.psf-audio-links a{font-size:9px;font-weight:800;color:var(--ps-text,#f0f0f5);text-decoration:none;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:4px 7px;background:rgba(255,255,255,.04)}.psf-audio-preview{width:100%;height:30px;margin-top:7px}.psf-audio-primary{display:flex;align-items:center;justify-content:center;gap:5px;padding:10px 5px;font-size:11px;font-weight:800;text-decoration:none;color:#07110d;background:var(--ps-primary,#00e676)}
@media(max-width:620px){.psml-head{display:block}.psml-head-actions{justify-content:flex-start;margin-top:10px}.psml-toolbar{align-items:flex-end}.psml-track{grid-template-columns:32px 42px minmax(0,1fr)}.psml-track-actions{grid-column:1/-1;padding-left:83px;justify-content:flex-start;flex-wrap:wrap}.psml-track-actions button{flex:0 0 auto}.psml-now-badges{display:none}.psml-playback label{display:block}.psml-playback select{display:block;margin-top:3px;max-width:145px}}
@media(max-width:380px){.psml-track-actions{padding-left:0}.psml-toolbar{display:block}.psml-playback{margin:7px 0 7px}.psml-playback label{display:flex}.psml-playback select{margin-top:0}}
/* PS-MUSIC-008 canonical PSComponents Audio renderer/editor */
.ps-comp-audio{display:grid;gap:8px;border:1px solid color-mix(in srgb,var(--ps-primary,#00e676) 24%,transparent);border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--ps-primary,#00e676) 7%,transparent),rgba(255,255,255,.025));padding:10px;margin-top:8px}.ps-comp-audio__head{display:flex;align-items:center;gap:8px}.ps-comp-audio__note{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--ps-primary,#00e676) 16%,transparent);color:var(--ps-primary,#00e676);font-weight:900}.ps-comp-audio__head>div{min-width:0;flex:1}.ps-comp-audio__head strong,.ps-comp-audio__head span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ps-comp-audio__head strong{font-size:11px}.ps-comp-audio__head span{font-size:9px;color:var(--ps-text-muted,#8e96a0);margin-top:2px}.ps-comp-audio__head em{font-style:normal;font-size:10px;font-weight:900;color:var(--ps-primary,#00e676)}.ps-comp-audio__player{width:100%;height:34px}.ps-comp-audio__preview{font-size:10px;font-weight:850;color:var(--ps-accent,#00cec9);text-decoration:none}.ps-comp-audio__primary{display:flex;align-items:center;justify-content:center;min-height:36px;border-radius:10px;background:var(--ps-primary,#00e676);color:#06100d;text-decoration:none;font-size:10px;font-weight:900;padding:0 10px}.ps-comp-audio__destinations{display:flex;gap:5px;flex-wrap:wrap}.ps-comp-audio__destinations a{display:inline-flex;min-height:28px;align-items:center;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:0 9px;color:inherit;text-decoration:none;font-size:9px;font-weight:800;background:rgba(255,255,255,.035)}.psc-ed-audio-destinations{display:grid;grid-template-columns:1fr 1fr;gap:8px}.psc-ed-audio-preview{display:grid;gap:8px}.psc-ed-audio .psc-ed-callout{line-height:1.5}@media(max-width:620px){.psc-ed-audio-destinations{grid-template-columns:1fr}}
/* PS-4343R49 — storefront mount: keep canonical Music Library chip in the shop header mount instead of fixed-page fallback placement. */
#psShopMusicMount .psml-store-chip{position:static;left:auto;bottom:auto;z-index:auto;margin:0;max-width:min(280px,52vw)}
#psShopMusicMount .ps-music-chip{display:inline-grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--ps-surface,#12161a) 76%,transparent);border:1px solid color-mix(in srgb,var(--ps-text,#fff) 16%,transparent);color:var(--ps-text,#fff);box-shadow:0 6px 18px rgba(0,0,0,.2)}
