.mz-ai-playlist-overlay{--ai-bg:hsl(var(--mz-background,240 10% 2%)/.82);--ai-card:hsl(var(--mz-card,240 6% 6%)/.94);--ai-muted:hsl(var(--mz-muted,240 5% 12%));--ai-border:hsl(var(--mz-border,240 4% 14%)/.9);--ai-fg:hsl(var(--mz-foreground,0 0% 98%));--ai-muted-fg:hsl(var(--mz-muted-foreground,240 5% 64%));--ai-primary:hsl(var(--mz-primary,22 96% 56%));--ai-accent:hsl(var(--mz-accent,265 68% 58%));--ai-radius:var(--mz-radius-lg,1.125rem);--ai-ease:cubic-bezier(.22,1,.36,1);--ai-spring:cubic-bezier(.34,1.56,.64,1);z-index:10100;background:var(--ai-bg);-webkit-backdrop-filter:blur(12px)saturate(1.2);opacity:0;visibility:hidden;transition:opacity .35s var(--ai-ease),visibility .35s;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.mz-ai-playlist-overlay.is-open{opacity:1;visibility:visible}body.mz-ai-playlist-open{overflow:hidden}.mz-ai-playlist-sheet{background:var(--ai-card);border:1px solid var(--ai-border);border-radius:var(--ai-radius)var(--ai-radius)0 0;opacity:0;width:100%;max-width:28rem;max-height:min(94vh,42rem);transition:transform .45s var(--ai-ease),opacity .35s var(--ai-ease);border-bottom:none;flex-direction:column;display:flex;position:relative;overflow:hidden;transform:translateY(calc(100% + 1rem))scale(.98);box-shadow:0 -24px 80px #0000008c,inset 0 0 0 1px #ffffff0a}.mz-ai-playlist-overlay.is-open .mz-ai-playlist-sheet{opacity:1;transform:translateY(0)scale(1)}@media (width>=768px){.mz-ai-playlist-overlay{align-items:center;padding:1.25rem}.mz-ai-playlist-sheet{border-radius:var(--ai-radius);border-bottom:1px solid var(--ai-border);max-height:min(88vh,40rem);transform:translateY(1.5rem)scale(.96)}.mz-ai-playlist-overlay.is-open .mz-ai-playlist-sheet{transform:translateY(0)scale(1)}}.mz-ai-playlist-handle{background:hsl(var(--mz-border,240 4% 14%)/.9);border-radius:999px;flex-shrink:0;width:2.5rem;height:.28rem;margin:.65rem auto 0}@media (width>=768px){.mz-ai-playlist-handle{display:none}}.mz-ai-playlist-mesh{pointer-events:none;border-radius:inherit;z-index:0;position:absolute;inset:0;overflow:hidden}.mz-ai-playlist-mesh:before,.mz-ai-playlist-mesh:after{content:"";filter:blur(48px);opacity:.45;border-radius:50%;animation:8s ease-in-out infinite alternate mz-ai-mesh-drift;position:absolute}.mz-ai-playlist-mesh:before{background:radial-gradient(circle,var(--ai-primary),transparent 70%);width:55%;height:40%;top:-8%;right:-10%}.mz-ai-playlist-mesh:after{background:radial-gradient(circle,var(--ai-accent),transparent 70%);width:50%;height:45%;animation-delay:-4s;bottom:10%;left:-15%}@keyframes mz-ai-mesh-drift{0%{transform:translate(0)scale(1)}to{transform:translate(8%,6%)scale(1.08)}}.mz-ai-playlist-inner{z-index:1;min-height:0;padding:.85rem 1.1rem calc(.85rem + env(safe-area-inset-bottom,0px));flex-direction:column;flex:1;display:flex;position:relative}.mz-ai-playlist-head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.mz-ai-playlist-head__brand{align-items:center;gap:.55rem;min-width:0;display:flex}.mz-ai-playlist-orb{background:linear-gradient(135deg,var(--ai-primary),var(--ai-accent));width:2.1rem;height:2.1rem;box-shadow:0 0 24px hsl(var(--mz-primary,22 96% 56%)/.45);border-radius:999px;flex-shrink:0;position:relative}.mz-ai-playlist-orb:after{content:"";border-radius:inherit;border:1px solid #ffffff40;position:absolute;inset:-3px}.mz-ai-playlist-overlay.is-generating .mz-ai-playlist-orb{animation:1.6s ease-in-out infinite mz-ai-orb-pulse}@keyframes mz-ai-orb-pulse{0%,to{box-shadow:0 0 24px hsl(var(--mz-primary)/.45);transform:scale(1)}50%{box-shadow:0 0 36px hsl(var(--mz-accent)/.55);transform:scale(1.06)}}.mz-ai-playlist-title{color:var(--ai-fg);font-size:1rem;font-weight:700;line-height:1.3;font-family:var(--mz-font-display,system-ui,sans-serif);margin:0}.mz-ai-playlist-badge{text-transform:uppercase;letter-spacing:.04em;border:1px solid hsl(var(--mz-primary)/.35);background:hsl(var(--mz-primary)/.12);color:var(--ai-primary);vertical-align:middle;border-radius:999px;align-items:center;margin-inline-start:.35rem;padding:.12rem .45rem;font-size:.62rem;font-weight:600;display:inline-flex}.mz-ai-playlist-close{border:1px solid var(--ai-border);border-radius:calc(var(--ai-radius) - .5rem);background:hsl(var(--mz-muted,240 5% 12%)/.6);width:2rem;height:2rem;color:var(--ai-muted-fg);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.mz-ai-playlist-close:hover{background:var(--ai-muted);color:var(--ai-fg);border-color:hsl(var(--mz-border)/1)}.mz-ai-playlist-close svg{width:1rem;height:1rem}.mz-ai-playlist-quota{color:var(--ai-muted-fg);border-radius:calc(var(--ai-radius) - .65rem);background:hsl(var(--mz-muted)/.5);border:1px solid hsl(var(--mz-border)/.5);margin:0 0 .85rem;padding:.35rem .55rem;font-size:.75rem}.mz-ai-playlist-quota.is-empty{color:var(--ai-primary);border-color:hsl(var(--mz-primary)/.35);background:hsl(var(--mz-primary)/.08)}.mz-ai-playlist-body{scrollbar-width:thin;flex:1;min-height:0;overflow:auto}.mz-ai-playlist-view{animation:mz-ai-view-out .28s var(--ai-ease)both;display:none}.mz-ai-playlist-view.is-active{animation:mz-ai-view-in .42s var(--ai-ease)both;display:block}@keyframes mz-ai-view-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes mz-ai-view-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}.mz-ai-playlist-prompt-lead{color:var(--ai-fg);font-size:1.35rem;font-weight:700;line-height:1.35;font-family:var(--mz-font-display,system-ui,sans-serif);margin:0 0 .65rem}.mz-ai-playlist-prompt-sub{color:var(--ai-muted-fg);margin:0 0 1rem;font-size:.82rem;line-height:1.5}.mz-ai-playlist-field{flex-direction:column;gap:.4rem;margin-bottom:.75rem;display:flex}.mz-ai-playlist-label{color:var(--ai-muted-fg);font-size:.78rem;font-weight:500}.mz-ai-playlist-input-wrap{border-radius:calc(var(--ai-radius) - .25rem);background:hsl(var(--mz-muted)/.55);border:1px solid var(--ai-border);transition:border-color .2s,box-shadow .2s;position:relative}.mz-ai-playlist-input-wrap:focus-within{border-color:hsl(var(--mz-primary)/.55);box-shadow:0 0 0 3px hsl(var(--mz-primary)/.15)}.mz-ai-playlist-input{box-sizing:border-box;width:100%;color:var(--ai-fg);font:inherit;resize:none;background:0 0;border:0;min-height:5.5rem;padding:.85rem .9rem;font-size:.92rem;line-height:1.55}.mz-ai-playlist-input:focus{outline:none}.mz-ai-playlist-input::placeholder{color:hsl(var(--mz-muted-foreground,240 5% 64%)/.75)}.mz-ai-playlist-char{color:var(--ai-muted-fg);pointer-events:none;font-size:.65rem;position:absolute;bottom:.45rem;left:.65rem}.mz-ai-playlist-presets{flex-wrap:wrap;gap:.45rem;margin-bottom:1rem;display:flex}.mz-ai-playlist-preset{border:1px solid var(--ai-border);background:hsl(var(--mz-muted)/.35);color:var(--ai-fg);cursor:pointer;transition:transform .18s var(--ai-spring),background .2s,border-color .2s;border-radius:999px;align-items:center;gap:.3rem;padding:.38rem .72rem;font-size:.76rem;font-weight:500;display:inline-flex}.mz-ai-playlist-preset:hover{background:hsl(var(--mz-muted)/.75);border-color:hsl(var(--mz-primary)/.35)}.mz-ai-playlist-preset:active{transform:scale(.96)}.mz-ai-playlist-preset svg{opacity:.7;width:.85rem;height:.85rem;color:var(--ai-accent)}.mz-ai-playlist-gen{text-align:center;padding:1.5rem .5rem 1rem}.mz-ai-playlist-gen-visual{width:7.5rem;height:7.5rem;margin:0 auto 1.25rem;position:relative}.mz-ai-playlist-gen-ring{border:2px solid #0000;border-top-color:var(--ai-primary);border-right-color:var(--ai-accent);border-radius:50%;animation:1.1s linear infinite mz-ai-spin;position:absolute;inset:0}.mz-ai-playlist-gen-ring:nth-child(2){border-top-color:var(--ai-accent);border-right-color:#0000;animation-duration:1.6s;animation-direction:reverse;inset:10%}@keyframes mz-ai-spin{to{transform:rotate(360deg)}}.mz-ai-playlist-gen-core{background:linear-gradient(145deg,var(--ai-primary),var(--ai-accent));box-shadow:0 0 40px hsl(var(--mz-primary)/.5);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;inset:22%}.mz-ai-playlist-gen-bars{justify-content:center;align-items:flex-end;gap:3px;height:1.4rem;display:flex}.mz-ai-playlist-gen-bars span{background:#ffffffeb;border-radius:2px;width:3px;animation:.9s ease-in-out infinite mz-ai-bar}.mz-ai-playlist-gen-bars span:first-child{height:40%;animation-delay:0s}.mz-ai-playlist-gen-bars span:nth-child(2){height:70%;animation-delay:.12s}.mz-ai-playlist-gen-bars span:nth-child(3){height:55%;animation-delay:.24s}.mz-ai-playlist-gen-bars span:nth-child(4){height:85%;animation-delay:80ms}.mz-ai-playlist-gen-bars span:nth-child(5){height:50%;animation-delay:.18s}@keyframes mz-ai-bar{0%,to{opacity:.65;transform:scaleY(.45)}50%{opacity:1;transform:scaleY(1)}}.mz-ai-playlist-gen-title{color:var(--ai-fg);margin:0 0 .35rem;font-size:1.05rem;font-weight:700}.mz-ai-playlist-gen-status{color:var(--ai-muted-fg);min-height:1.25rem;margin:0 0 1.1rem;font-size:.82rem;transition:opacity .25s}.mz-ai-playlist-gen-status.is-fade{opacity:0}.mz-ai-playlist-steps{text-align:start;margin:0;max-width:16rem;margin-inline:auto;padding:0;list-style:none}.mz-ai-playlist-steps li{color:var(--ai-muted-fg);align-items:center;gap:.55rem;padding:.4rem 0;font-size:.78rem;transition:color .3s;display:flex}.mz-ai-playlist-steps li.is-done{color:var(--ai-fg)}.mz-ai-playlist-steps li.is-active{color:var(--ai-primary);font-weight:600}.mz-ai-playlist-step-dot{background:hsl(var(--mz-border));width:.45rem;height:.45rem;transition:background .3s,box-shadow .3s,transform .3s var(--ai-spring);border-radius:50%;flex-shrink:0}.mz-ai-playlist-steps li.is-active .mz-ai-playlist-step-dot{background:var(--ai-primary);box-shadow:0 0 10px hsl(var(--mz-primary)/.6);transform:scale(1.25)}.mz-ai-playlist-steps li.is-done .mz-ai-playlist-step-dot{box-shadow:none;background:#2eb860}.mz-ai-playlist-hero{border-radius:calc(var(--ai-radius) - .15rem);background:hsl(var(--mz-muted)/.45);border:1px solid var(--ai-border);animation:mz-ai-hero-in .55s var(--ai-ease)both;margin-bottom:1rem;padding:1rem;position:relative;overflow:hidden}@keyframes mz-ai-hero-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.mz-ai-playlist-mosaic{border-radius:.55rem;flex-shrink:0;grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:3px;width:5.5rem;height:5.5rem;display:grid;overflow:hidden;box-shadow:0 8px 28px #00000073}.mz-ai-playlist-mosaic__cell{background:hsl(var(--mz-muted));animation:mz-ai-mosaic-cell .5s var(--ai-ease)both;background-position:50%;background-size:cover}.mz-ai-playlist-mosaic__cell:first-child{animation-delay:50ms}.mz-ai-playlist-mosaic__cell:nth-child(2){animation-delay:.1s}.mz-ai-playlist-mosaic__cell:nth-child(3){animation-delay:.15s}.mz-ai-playlist-mosaic__cell:nth-child(4){animation-delay:.2s}@keyframes mz-ai-mosaic-cell{0%{opacity:0;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.mz-ai-playlist-hero-row{align-items:flex-end;gap:.85rem;display:flex}.mz-ai-playlist-hero-text{flex:1;min-width:0}.mz-ai-playlist-result-title{color:var(--ai-fg);font-size:1.15rem;font-weight:800;line-height:1.3;font-family:var(--mz-font-display,system-ui,sans-serif);margin:0 0 .25rem}.mz-ai-playlist-result-meta{color:var(--ai-muted-fg);margin:0;font-size:.75rem}.mz-ai-playlist-result-meta .mz-ai-tag{background:hsl(var(--mz-accent)/.15);color:var(--ai-accent);border:1px solid hsl(var(--mz-accent)/.25);border-radius:999px;align-items:center;margin-inline-end:.35rem;padding:.1rem .4rem;font-size:.65rem;font-weight:600;display:inline-flex}.mz-ai-playlist-tracks{scrollbar-width:thin;max-height:11rem;margin:0;padding:0;list-style:none;overflow:auto}.mz-ai-playlist-tracks li{border-radius:calc(var(--ai-radius) - .55rem);color:var(--ai-fg);animation:mz-ai-track-in .4s var(--ai-ease)both;align-items:center;gap:.65rem;padding:.45rem .35rem;font-size:.82rem;transition:background .15s;display:flex}.mz-ai-playlist-tracks li:hover{background:hsl(var(--mz-muted)/.55)}@keyframes mz-ai-track-in{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.mz-ai-playlist-input-wrap.is-shake{animation:mz-ai-shake .38s var(--ai-ease)}@keyframes mz-ai-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.mz-ai-playlist-tracks li:first-child{animation-delay:80ms}.mz-ai-playlist-tracks li:nth-child(2){animation-delay:.12s}.mz-ai-playlist-tracks li:nth-child(3){animation-delay:.16s}.mz-ai-playlist-tracks li:nth-child(4){animation-delay:.2s}.mz-ai-playlist-tracks li:nth-child(5){animation-delay:.24s}.mz-ai-playlist-tracks li:nth-child(6){animation-delay:.28s}.mz-ai-playlist-tracks li:nth-child(7){animation-delay:.32s}.mz-ai-playlist-tracks li:nth-child(8){animation-delay:.36s}.mz-ai-playlist-tracks__idx{text-align:center;width:1.1rem;color:var(--ai-muted-fg);flex-shrink:0;font-size:.7rem}.mz-ai-playlist-tracks img{object-fit:cover;background:var(--ai-muted);border-radius:.4rem;flex-shrink:0;width:2.35rem;height:2.35rem;box-shadow:0 2px 8px #00000059}.mz-ai-playlist-tracks__title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.mz-ai-playlist-foot{border-top:1px solid hsl(var(--mz-border)/.55);flex-shrink:0;margin-top:auto;padding-top:.75rem}.mz-ai-playlist-actions{gap:.55rem;display:flex}.mz-ai-playlist-btn{cursor:pointer;min-height:2.65rem;transition:transform .18s var(--ai-spring),opacity .2s,box-shadow .2s;border:1px solid #0000;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:.45rem;font-size:.88rem;font-weight:700;display:inline-flex}.mz-ai-playlist-btn:active:not(:disabled){transform:scale(.98)}.mz-ai-playlist-btn:disabled{opacity:.45;cursor:not-allowed}.mz-ai-playlist-btn--primary{background:linear-gradient(135deg,var(--ai-primary),#e9430c);color:#fff;box-shadow:0 4px 20px hsl(var(--mz-primary)/.35)}.mz-ai-playlist-btn--primary:hover:not(:disabled){box-shadow:0 6px 28px hsl(var(--mz-primary)/.45)}.mz-ai-playlist-btn--ghost{background:hsl(var(--mz-muted)/.5);border-color:var(--ai-border);color:var(--ai-fg);flex:none;padding-inline:1rem}.mz-ai-playlist-btn svg{width:1.05rem;height:1.05rem}.mz-ai-playlist-btn--primary.is-loading{pointer-events:none}.mz-ai-playlist-btn--primary.is-loading .mz-ai-btn-label{opacity:.85}.mz-ai-playlist-status{min-height:0;color:var(--ai-muted-fg);text-align:center;margin-top:.5rem;font-size:.78rem}.mz-ai-playlist-status.is-error{color:#e45858}@media (prefers-reduced-motion:reduce){.mz-ai-playlist-sheet,.mz-ai-playlist-view,.mz-ai-playlist-orb,.mz-ai-playlist-gen-ring,.mz-ai-playlist-gen-bars span,.mz-ai-playlist-mesh:before,.mz-ai-playlist-mesh:after,.mz-ai-playlist-tracks li,.mz-ai-playlist-mosaic__cell{transition-duration:.01ms!important;animation:none!important}}