.yz {
  /* Music-first surfaces: YAAZH branding, not a provider impersonation. */
  --yz-ink: #172522; --yz-muted: #63716b; --yz-paper: #fff; --yz-soft: #f3f5f1;
  --yz-green: #234c3c; --yz-copper: #8d5539; --yz-border: rgba(23, 37, 34, .12);
  --yz-xs: .75rem; --yz-sm: .875rem; --yz-base: 1rem; --yz-lg: 1.25rem; --yz-xl: clamp(1.6rem, 2vw, 2rem);
  --yz-s1: .25rem; --yz-s2: .5rem; --yz-s3: .75rem; --yz-s4: 1rem; --yz-s5: 1.25rem; --yz-s6: 1.5rem; --yz-s8: 2rem;
  color: var(--yz-ink); font-family: "Inter", sans-serif; max-width: 1440px; margin-inline: auto; padding: var(--yz-s2) var(--yz-s2) 8rem;
}

.yz[data-music-theme] { --yz-ink:#202024; --yz-muted:#626268; --yz-paper:#fff; --yz-soft:#f5f5f7; --yz-green:#b91c43; --yz-copper:#b91c43; --yz-border:#e3e3e8; background:var(--yz-paper); border-radius:16px; padding:24px 28px 120px; }
.yz[data-music-theme=dark] { --yz-ink:#f5f5f7; --yz-muted:#b0b0ba; --yz-paper:#1c1c20; --yz-soft:#29292f; --yz-green:#ff7897; --yz-copper:#ff7897; --yz-border:#414149; color-scheme:dark; }
.yz[data-music-theme] :is(h2,h3,h4,strong,.yz-track) { color:var(--yz-ink); }
.yz .yz-music-intro { display:flex; flex-wrap:wrap; align-items:end; justify-content:space-between; gap:16px; padding:24px 0; border-bottom:1px solid var(--yz-border); margin-bottom:16px; }
.yz-music-intro h3 { font:750 var(--yz-xl)/1.15 Inter,sans-serif; letter-spacing:-.04em; margin:8px 0; }
.yz-music-intro p { color:var(--yz-muted); font-size:var(--yz-sm); margin:0; }
.yz-music-shortcuts { display:flex; flex-wrap:wrap; gap:6px; }
.yz:not([data-music-tab=scenes]) .yz-stage { display:none; }
.yz .yz-heading { gap:12px; flex-wrap:wrap; }
.yz .yz-heading>div { margin-right:auto; }
.yz .yz-heading h2 { letter-spacing:-.045em; }
.yz .yz-tabs button.is-active { color:var(--yz-green); border-color:var(--yz-green); }
.yz .yz-dialog { background:var(--yz-paper); color:var(--yz-ink); }
.yz[data-music-theme=dark] :is(.yz-primary,[data-yz-action=play]) { color:#18181c; }
.yz .yz-song-row:nth-child(even) { background:var(--yz-soft); }
.yz .yz-song-row { padding:10px; border:0; border-radius:7px; }
.yz .yz-song-art { border-radius:7px; box-shadow:0 2px 6px #0002; }
.yz.yz-compact .yz-song-row { padding-block:4px; }
.yz.yz-compact .yz-song-art { width:38px; height:38px; }
.yz [data-yz-native-player] { inset:auto 20px 16px auto; width:min(500px,calc(100vw - 32px)); max-width:none; min-height:80px; display:grid; grid-template-columns:44px minmax(0,1fr) 34px 56px 34px 38px; gap:8px; padding:12px; border-radius:14px; background:var(--yz-paper); color:var(--yz-ink); box-shadow:0 8px 36px #0003; border:1px solid var(--yz-border); }
.yz [data-yz-native-player] .yz-player-art { width:44px; height:44px; grid-area:1/1; border-radius:7px; }
.yz [data-yz-native-player] .yz-track { min-width:0; grid-area:1/2; }
.yz:not(.yz-expanded) [data-yz-native-player] .yz-track :is(strong,span) { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.yz:not(.yz-expanded) [data-yz-native-player] .yz-transport { display:contents; }
.yz [data-yz-native-player] [data-yz-action=previous] { grid-area:1/3; }
.yz [data-yz-native-player] [data-yz-action=play] { grid-area:1/4; padding:8px; }
.yz [data-yz-native-player] [data-yz-action=next] { grid-area:1/5; }
.yz [data-yz-native-player] .yz-expand { grid-area:1/6; overflow:hidden; font-size:0; padding:4px; min-width:32px; }
.yz [data-yz-native-player] .yz-expand::after { content:"↗"; font-size:20px; }
.yz:not(.yz-expanded) [data-yz-native-player] :is(.yz-progress,.yz-volume,.yz-repeat,.yz-listening-tools) { display:none; }
.yz:not(.yz-expanded) [data-yz-native-player] .yz-player-status { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.yz.yz-robot-controls:not(.yz-expanded) [data-yz-native-player] { visibility:hidden; }
.yz.yz-expanded [data-yz-native-player] { width:min(480px,calc(100vw - 32px)); max-height:calc(100dvh - 100px); overflow-y:auto; display:flex; flex-wrap:wrap; justify-content:center; gap:16px; padding:24px; }
.yz.yz-expanded [data-yz-native-player] .yz-player-art { width:180px; height:180px; margin:0 calc(50% - 90px); }
.yz.yz-expanded [data-yz-native-player] .yz-track { flex-basis:100%; text-align:center; }
.yz.yz-expanded [data-yz-native-player] .yz-expand { order:-1; width:100%; font-size:var(--yz-sm); }
.yz.yz-expanded [data-yz-native-player] .yz-expand::after { content:none; }
.yz.yz-expanded [data-yz-native-player] .yz-progress { width:100%; }
.yz.yz-expanded [data-yz-native-player] .yz-player-status { width:100%; }
@media(max-width:600px) {
  .yz[data-music-theme] { padding:16px 12px 110px; }
  .yz .yz-heading [data-yz-action=workspace] { width:100%; }
  .yz [data-yz-native-player] { right:8px; bottom:8px; width:calc(100vw - 16px); grid-template-columns:36px minmax(0,1fr) 0 48px 44px 32px; gap:5px; min-height:72px; padding:10px; }
  .yz:not(.yz-expanded) [data-yz-native-player] [data-yz-action=previous] { display:none; }
  .yz [data-yz-native-player] .yz-player-art { width:36px; height:36px; }
}
/* An authenticated music frame, never a second provider session. */
body.yz-mini-host { margin:0!important; background:#fff; }
body.yz-mini-host :is(.portal-side,.portal-top,.portal-sidebar,.sidebar,.portal-topbar,.portal-header,.topbar,.yz-float,.yz-heading,.yz-music-intro,.yz-stage,.yz-shared-admin,.yz-private,.yz-provider-dock,[data-yz-tab=services],.yz-footer) { display:none!important; }
body.yz-mini-host :is(.portal-main,.portal-content,main,.portal-shell,.portal-layout) { margin:0!important; padding:0!important; width:100%!important; min-height:0!important; }
body.yz-mini-host .yz { border-radius:0; padding:8px 8px 96px; }
body.yz-mini-host .yz-library-top { margin-top:0; }
body.yz-mini-host [data-yz-panel=shared]>.yz-section-title,body.yz-mini-host [data-yz-shared-status] { display:none; }
body.yz-mini-host .yz-catalogue-search { display:grid; grid-template-columns:minmax(0,1fr) 100px; gap:6px; }
body.yz-mini-host .yz-catalogue-search>label { font-size:0!important; }
body.yz-mini-host .yz-catalogue-search input { font-size:14px; }
body.yz-mini-host .yz-catalogue-search :is(label:has(#yzCatalogueView),[data-yzc-clear]) { display:none; }
body.yz-mini-host .yz-catalogue-search label { font-size:12px; }
body.yz-mini-host .yz-collection .yz-section-title { display:none; }
body.yz-mini-host .yz-song-row { flex-wrap:wrap; }
.yz *, .yz *::before, .yz *::after { box-sizing: border-box; }
.yz-shared-admin { margin-top: var(--yz-s8); padding-top: var(--yz-s6); border-top: 1px solid var(--yz-border); }
.yz-pending-toolbar { position: sticky; top: 5.5rem; z-index: 8; display: flex; flex-wrap: wrap; align-items: center; gap: var(--yz-s3); margin-block: var(--yz-s4); padding: var(--yz-s3); border: 1px solid var(--yz-border); border-radius: 12px; background: var(--yz-paper); box-shadow: 0 4px 16px rgba(23,37,34,.08); }
.yz-pending-toolbar .yz-check { min-height: 44px; margin: 0; font-weight: 600; }
.yz-pending-toolbar small, .yz-pending-toolbar [data-yz-pending-count] { font-size: var(--yz-sm); color: var(--yz-muted); }
.yz-pending-toolbar .yz-focus-actions { margin: 0; margin-left: auto; }
@media(max-width: 650px) { .yz-pending-toolbar { top: 5rem; } .yz-pending-toolbar .yz-focus-actions { width: 100%; margin-left: 0; } .yz-pending-toolbar button { flex: 1; min-width: 0; } }
.yz-library-form { margin: var(--yz-s5) 0; }
.yz-library-form fieldset { border: 1px solid var(--yz-border); border-radius: 12px; padding: var(--yz-s5); min-width: 0; }
.yz-library-form legend { font-size: var(--yz-base); font-weight: 700; padding: 0 var(--yz-s2); }
.yz-library-form label:not(.yz-check) { display: grid; gap: var(--yz-s2); font-size: var(--yz-sm); font-weight: 600; margin: var(--yz-s3) 0; min-width: 0; }
.yz-library-form input:not([type=checkbox]), .yz-library-form textarea, .yz-library-form select { width: 100%; min-width: 0; max-width: 100%; background: var(--yz-paper); color: var(--yz-ink); border: 1px solid var(--yz-border); border-radius: 8px; padding: var(--yz-s3); font: inherit; font-weight: 400; }
.yz-library-form textarea { resize: vertical; }
.yz-library-fields { display: grid; grid-template-columns: 1fr 1fr; gap: var(--yz-s4); }
.yz-library-sources { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: var(--yz-s4); margin-bottom: var(--yz-s4); }
.yz-library-sources label { margin: 0 !important; }
.yz-shared-details { min-width: 0; overflow-wrap: anywhere; }
.yz-shared-details p { margin-top: var(--yz-s1); }
.yz-shared-actions { display: flex; flex-wrap: wrap; gap: var(--yz-s2); }
.yz [data-yz-people-results], .yz [data-yz-chosen-people] { display: flex; flex-wrap: wrap; gap: var(--yz-s2); margin: var(--yz-s3) 0; }
.yz [data-yz-people-results] button, .yz [data-yz-chosen-people] button { overflow-wrap: anywhere; text-align: left; max-width: 100%; }
@media(max-width: 650px) { .yz-library-fields, .yz-library-sources { grid-template-columns: 1fr; } .yz-shared-admin .yz-file-row { align-items: flex-start; flex-direction: column; } .yz [data-yz-shared-list] .yz-overline { display: none; } }
.yz [hidden] { display: none !important; }
.yz h2, .yz h3, .yz h4, .yz p { margin: 0; }
.yz button, .yz input, .yz select { font: inherit; }
.yz button { cursor: pointer; }
.yz button:disabled, .yz input:disabled { cursor: not-allowed; opacity: .55; }
.yz button:focus-visible, .yz select:focus-visible, .yz input:focus-visible { outline: 3px solid #a55f3b; outline-offset: 4px; }
.yz-overline { font-size: var(--yz-xs); font-weight: 600; letter-spacing: .09em; }
.yz-heading { display: flex; align-items: center; justify-content: space-between; gap: var(--yz-s4); margin-bottom: var(--yz-s6); }
.yz-heading .yz-overline { color: var(--yz-muted); }
.yz-heading h2 { font: 700 var(--yz-xl)/1.4 "Manrope", "Inter", sans-serif; letter-spacing: .12em; margin-top: var(--yz-s2); }
.yz-heading h2 span { color: var(--yz-copper); letter-spacing: 0; font-size: var(--yz-lg); margin-left: var(--yz-s3); font-weight: 500; }
.yz-soft, .yz-primary, .yz-file-picker { display: inline-flex; justify-content: center; align-items: center; gap: var(--yz-s2); border: 1px solid var(--yz-border); padding: var(--yz-s3) var(--yz-s4); min-height: 44px; border-radius: 9px; font-size: var(--yz-sm); font-weight: 600; text-decoration: none; }
.yz .yz-soft { background: var(--yz-paper); color: var(--yz-ink); }
.yz .yz-primary, .yz-file-picker { background: var(--yz-green); border-color: var(--yz-green); color: var(--yz-paper); }
.yz button:not(:disabled):hover { filter: brightness(.94); }
.yz-status { padding: var(--yz-s4); margin-bottom: var(--yz-s4); border-radius: 10px; background: #f7f0e6; font-size: var(--yz-sm); }
.yz-stage { display: grid; grid-template-columns: minmax(0, 1fr) 290px; gap: var(--yz-s5); }
.yz-feature { position: relative; min-height: 370px; overflow: hidden; border-radius: 16px; background: #dbe5df; }
.yz-feature > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.yz-feature-copy { position: relative; z-index: 1; padding: var(--yz-s8); width: 65%; }
.yz-feature-copy .yz-overline { color: #325246; }
.yz-feature-copy h3 { font: 600 clamp(1.45rem, 2vw, 2rem)/1.25 "Manrope", sans-serif; letter-spacing: -.035em; margin-block: var(--yz-s4); color: #152e25; }
.yz-feature-copy p { color: #2b453b; font-size: var(--yz-sm); line-height: 1.8; margin-bottom: var(--yz-s6); }
.yz-feature-caption { position: absolute; bottom: var(--yz-s5); left: var(--yz-s8); color: #30483e; background: rgba(246, 249, 244, .8); padding: var(--yz-s1) var(--yz-s2); border-radius: 4px; font-size: var(--yz-xs); }
.yz-focus { padding: var(--yz-s6); background: var(--yz-soft); border: 1px solid var(--yz-border); border-radius: 16px; }
.yz-focus > .yz-overline { color: var(--yz-copper); }
.yz-focus h3 { font-size: var(--yz-lg); font-weight: 600; margin-block: var(--yz-s3) var(--yz-s2); line-height: 1.4; }
.yz-focus > p { color: var(--yz-muted); font-size: var(--yz-sm); line-height: 1.6; }
.yz-clock { display: block; font: 500 var(--yz-xl)/1.1 "Manrope", sans-serif; font-variant-numeric: tabular-nums; letter-spacing: -.04em; margin-block: var(--yz-s6); }
.yz-label { display: block; font-size: var(--yz-xs); margin-bottom: var(--yz-s2); color: var(--yz-muted); }
.yz select { width: 100%; padding: var(--yz-s2) var(--yz-s3); min-height: 44px; border-radius: 8px; border: 1px solid var(--yz-border); background: var(--yz-paper); color: var(--yz-ink); font-size: var(--yz-sm); }
.yz-focus-actions { display: flex; gap: var(--yz-s2); margin-block: var(--yz-s3); }
.yz-focus-actions .yz-primary { flex: 1; }
.yz-check { display: flex; align-items: center; gap: var(--yz-s2); min-height: 44px; font-size: var(--yz-xs); color: var(--yz-muted); }
.yz-check input { accent-color: var(--yz-green); width: 18px; height: 18px; }
.yz-focus .yz-focus-note { margin-top: var(--yz-s3); font-size: var(--yz-xs); }
.yz-library-top { display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid var(--yz-border); margin-top: var(--yz-s8); gap: var(--yz-s4); }
.yz-tabs { display: flex; gap: var(--yz-s5); overflow: auto; }
.yz-tabs button { min-height: 52px; background: transparent; border: 0; border-bottom: 2px solid transparent; color: var(--yz-muted); padding: var(--yz-s3) 0; white-space: nowrap; font-size: var(--yz-sm); }
.yz-tabs button.is-active { color: var(--yz-green); font-weight: 600; border-bottom-color: var(--yz-green); }
.yz-private { font-size: var(--yz-xs); color: var(--yz-muted); white-space: nowrap; }
.yz-section-title { display: flex; justify-content: space-between; align-items: center; gap: var(--yz-s4); margin-block: var(--yz-s6) var(--yz-s5); }
.yz-section-title h3 { font-size: var(--yz-lg); font-weight: 600; letter-spacing: -.02em; }
.yz-section-title p { font-size: var(--yz-sm); color: var(--yz-muted); margin-top: var(--yz-s2); line-height: 1.6; max-width: 680px; }
.yz-section-title > .yz-overline { color: var(--yz-muted); font-size: var(--yz-xs); white-space: nowrap; }
.yz-scenes { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--yz-s5); }
.yz-scene { min-width: 0; }
.yz-scene-art { position: relative; aspect-ratio: 1.7; border-radius: 9px; overflow: hidden; background: var(--cover-color); display: flex; align-items: center; justify-content: center; }
.yz-scene-art::before { content: ""; position: absolute; inset: 18% 24%; border: 1px solid var(--cover-line); border-radius: 50% 50% 4% 4%; transform: rotate(12deg); background: repeating-linear-gradient(90deg, transparent, transparent 11px, var(--cover-line) 12px, transparent 13px); opacity: .8; }
.yz-scene-art span { position: relative; color: var(--cover-text); font-size: var(--yz-xl); font-weight: 500; }
.yz-copper { --cover-color: #e9d4bf; --cover-line: #ba9878; --cover-text: #63472f; }
.yz-sea { --cover-color: #b7ceca; --cover-line: #6a9390; --cover-text: #284e4b; }
.yz-rain { --cover-color: #c6cbd2; --cover-line: #8a98aa; --cover-text: #374960; }
.yz-sun { --cover-color: #e6dfbb; --cover-line: #b8a66a; --cover-text: #625226; }
.yz-scene-title-row { display: flex; align-items: center; gap: var(--yz-s1); margin-top: var(--yz-s2); }
.yz-scene-title { flex: 1; text-align: left; border: 0; background: transparent; padding: var(--yz-s2) 0; color: var(--yz-ink); font-size: var(--yz-sm); font-weight: 600; min-height: 44px; }
.yz-save { border: 0; background: transparent; color: var(--yz-muted); padding: var(--yz-s2) var(--yz-s1); font-size: var(--yz-xs); min-height: 44px; }
.yz-save[aria-pressed=true] { color: var(--yz-green); font-weight: 600; }
.yz-scene.is-selected .yz-scene-art { outline: 2px solid var(--yz-green); outline-offset: 3px; }
.yz-scene-mood { display: block; color: var(--yz-muted); font-size: var(--yz-xs); }
.yz-scene > p { font-size: var(--yz-xs); line-height: 1.6; color: var(--yz-muted); margin-top: var(--yz-s2); }
.yz-file-picker { cursor: pointer; position: relative; }
.yz-file-picker input { position: absolute; inset: 0; opacity: 0; width: 100%; cursor: pointer; }
.yz-file-picker:focus-within { outline: 3px solid var(--yz-copper); outline-offset: 3px; }
.yz-help { font-size: var(--yz-xs); color: var(--yz-muted); line-height: 1.7; margin-block: var(--yz-s4) !important; }
.yz-file-row { display: flex; align-items: center; gap: var(--yz-s3); padding-block: var(--yz-s3); border-bottom: 1px solid var(--yz-border); }
.yz-file-name { flex: 1; border: 0; background: transparent; text-align: left; color: var(--yz-ink); min-height: 44px; font-size: var(--yz-sm); overflow-wrap: anywhere; }
.yz-empty { padding: var(--yz-s6) 0; color: var(--yz-muted); font-size: var(--yz-sm); }
.yz-services article { display: flex; justify-content: space-between; gap: var(--yz-s6); padding-block: var(--yz-s5); border-bottom: 1px solid var(--yz-border); }
.yz-services h4 { font-size: var(--yz-base); font-weight: 600; }
.yz-services p { font-size: var(--yz-sm); color: var(--yz-muted); line-height: 1.7; max-width: 640px; margin-top: var(--yz-s2); }
.yz-services article > span { font-size: var(--yz-xs); color: var(--yz-muted); flex: 0 0 120px; text-align: right; padding-top: var(--yz-s1); }
.yz-services article > div { min-width: 0; }
.yz-services input[type=url] { display: block; width: 100%; max-width: 640px; min-height: 44px; padding: 10px 12px; border: 1px solid var(--yz-border); border-radius: 8px; color: var(--yz-ink); background: white; }
.yz-services .yz-label { margin-top: var(--yz-s4); }
.yz-provider-actions { display: flex; gap: var(--yz-s2); flex-wrap: wrap; margin-block: var(--yz-s3); }
.yz-provider-consent { max-width: 680px; line-height: 1.8; align-items: flex-start; margin-block: var(--yz-s4); }
.yz-provider-consent input { flex: 0 0 18px; margin-top: 4px; }
.yz-provider-consent a { color: var(--yz-green); text-decoration: underline; }
.yz-provider-video:not(:empty) { min-height: 300px; max-width: 720px; margin-block: 24px; }
.yz-provider-video iframe { width: 100%; min-width: 200px; height: 300px; border: 0; display: block; }
.yz-provider-dock .yz-transport { flex-wrap: wrap; }
.yz-provider-dock .yz-volume { display: flex; }
.yz-foot { display: flex; justify-content: space-between; gap: var(--yz-s4); align-items: center; border-top: 1px solid var(--yz-border); margin-top: var(--yz-s8); padding-top: var(--yz-s4); color: var(--yz-muted); font-size: var(--yz-xs); }
.yz-link { border: 0; background: transparent; color: var(--yz-green); font-size: var(--yz-xs); min-height: 44px; padding: var(--yz-s2); }
.yz-player { position: fixed; bottom: 16px; left: max(300px, calc((100vw - 1120px) / 2)); right: 24px; z-index: 600; display: flex; flex-wrap: wrap; align-items: center; gap: var(--yz-s4); padding: var(--yz-s3) var(--yz-s5) var(--yz-s2); background: rgba(255, 255, 255, .97); border: 1px solid rgba(45, 65, 56, .17); box-shadow: 0 8px 40px rgba(28, 47, 38, .15); border-radius: 15px; }
.yz-player-art { width: 48px; height: 48px; object-fit: cover; object-position: right; border-radius: 8px; }
.yz-track { flex: 1; min-width: 100px; display: grid; gap: var(--yz-s1); }
.yz-track strong { font-size: var(--yz-sm); font-weight: 600; overflow-wrap: anywhere; }
.yz-track > span { color: var(--yz-muted); font-size: var(--yz-xs); }
.yz-transport { display: flex; align-items: center; gap: var(--yz-s2); }
.yz-icon { border: 0; background: transparent; color: var(--yz-ink); min-width: 44px; height: 44px; font-size: var(--yz-lg); }
.yz-play { background: var(--yz-green); border: 0; color: var(--yz-paper); border-radius: 24px; min-width: 74px; min-height: 44px; padding-inline: var(--yz-s4); font-size: var(--yz-sm); font-weight: 600; }
.yz-volume { display: flex; align-items: center; gap: var(--yz-s2); font-size: var(--yz-xs); color: var(--yz-muted); }
.yz input[type=range] { accent-color: var(--yz-green); height: 44px; width: 85px; cursor: pointer; }
.yz-progress { display: flex; align-items: center; gap: var(--yz-s2); width: 100%; order: 4; }
.yz-progress input[type=range] { width: 100%; }
.yz-progress span { font-size: var(--yz-xs); white-space: nowrap; font-variant-numeric: tabular-nums; }
.yz-player-status { flex: 0 0 100%; font-size: var(--yz-xs); color: var(--yz-muted); line-height: 1.5; }
.yz-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.yz-workspace { position: fixed; inset: 0; z-index: 500; background: var(--yz-soft); padding-bottom: 116px; }
.yz-workspace > header { min-height: 66px; display: flex; align-items: center; justify-content: space-between; padding: var(--yz-s2) var(--yz-s5); gap: var(--yz-s3); border-bottom: 1px solid var(--yz-border); background: var(--yz-paper); }
.yz-workspace header strong { font-size: var(--yz-base); letter-spacing: .08em; }
.yz-workspace header span { font-size: var(--yz-xs); color: var(--yz-muted); }
.yz-workspace-body { height: calc(100% - 66px); }
.yz-workspace iframe { display: block; border: 0; width: 100%; height: 100%; background: var(--yz-paper); }
.yz-working .yz-player { left: 24px; }
.yz-working .portal-shell > .portal-side, .yz-working .portal-top { visibility: hidden; }
.yz-dialog { border: 1px solid var(--yz-border); border-radius: 16px; background: var(--yz-paper); padding: var(--yz-s8); max-width: min(580px, calc(100vw - 32px)); color: var(--yz-ink); }
.yz-dialog::backdrop { background: rgba(17, 35, 25, .45); }
.yz-dialog h3 { font-size: var(--yz-lg); margin-bottom: var(--yz-s4); }
.yz-dialog p { font-size: var(--yz-sm); line-height: 1.8; color: var(--yz-muted); margin-bottom: var(--yz-s4); }
.pnav-yaazh .pnav-gadget img { object-fit: cover; object-position: 80% 50%; border-radius: 10px; }
@media (max-width: 1180px) {
  .yz-stage { grid-template-columns: minmax(0, 1fr) 250px; }
  .yz-feature-copy { padding: var(--yz-s6); width: 75%; }
  .yz-feature-caption { left: var(--yz-s6); }
  .yz-volume { display: none; }
  .yz-player { left: 285px; right: 16px; gap: var(--yz-s2); }
}
@media (max-width: 960px) {
  .yz-stage { grid-template-columns: 1fr; }
  .yz-focus { display: grid; grid-template-columns: 1fr 1fr; gap: var(--yz-s2) var(--yz-s5); }
  .yz-focus > .yz-overline, .yz-focus h3, .yz-focus > p { grid-column: 1; }
  .yz-clock { grid-column: 2; grid-row: 1 / 4; align-self: center; justify-self: center; }
  .yz-label, .yz-focus select { grid-column: 1; }
  .yz-focus-actions { grid-column: 2; grid-row: 4 / 6; align-self: center; }
  .yz-check { grid-column: 1 / -1; }
  .yz-scenes { gap: var(--yz-s4); grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .yz-player { left: 16px; }
  .yz-private, .yz-section-title > .yz-overline { display: none; }
}
@media (max-width: 600px) {
  .yz { padding: 0 0 12rem; }
  .yz-heading { align-items: flex-start; flex-direction: column; gap: var(--yz-s3); }
  .yz-heading > .yz-soft { width: 100%; }
  .yz-heading .yz-overline { font-size: var(--yz-xs); letter-spacing: .04em; }
  .yz-feature { min-height: 380px; }
  .yz-feature > img { object-position: 68% 50%; opacity: .8; }
  .yz-feature-copy { width: 100%; padding: var(--yz-s5); background: linear-gradient(90deg, rgba(235, 242, 235, .93), rgba(235, 242, 235, .2)); }
  .yz-feature-copy h3 { max-width: 230px; }
  .yz-feature-caption { left: var(--yz-s5); right: var(--yz-s5); font-size: var(--yz-xs); }
  .yz-feature-copy .yz-overline { font-size: var(--yz-xs); }
  .yz-focus { padding: var(--yz-s5); gap: var(--yz-s2); }
  .yz-focus h3 { font-size: var(--yz-base); }
  .yz-focus-actions { flex-direction: column; margin: 0; }
  .yz-clock { font-size: var(--yz-xl); }
  .yz-tabs { gap: var(--yz-s5); width: 100%; }
  .yz-section-title { align-items: flex-start; }
  .yz-scenes { gap: var(--yz-s5) var(--yz-s3); }
  .yz-scene-title-row { flex-wrap: wrap; gap: 0; }
  .yz-scene-title { font-size: var(--yz-sm); }
  .yz-save { min-width: 44px; }
  .yz-player { left: 8px; right: 8px; bottom: 8px; padding: var(--yz-s3); gap: var(--yz-s2); }
  .yz-player-art { display: none; }
  .yz-transport { gap: 0; }
  .yz-track { flex-basis: calc(100% - 165px); }
  .yz-repeat { order: 3; min-height: 32px; font-size: var(--yz-xs); padding: var(--yz-s1) var(--yz-s2); }
  .yz-volume { display: flex; order: 2; }
  .yz-player-status { order: 5; }
  .yz-progress { order: 4; }
  .yz-workspace { padding-bottom: 180px; }
  .yz-working .yz-player { left: 8px; }
  .yz-workspace header { padding-inline: var(--yz-s3); }
  .yz-workspace header div > span { display: none; }
  .yz-workspace header .yz-soft { font-size: var(--yz-xs); }
  .yz-foot { align-items: flex-start; flex-direction: column; gap: var(--yz-s1); }
  .yz-services article { flex-direction: column; gap: var(--yz-s2); }
  .yz-services article > span { flex-basis: auto; text-align: left; color: var(--yz-copper); }
}
@media (prefers-reduced-motion: reduce) { .yz *, .yz *::before, .yz *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
.yz-embedded-panel { margin-block: 24px; padding: 16px; border: 1px solid var(--yz-border, #d7ded9); border-radius: 16px; }
.yz-embedded-panel iframe { display: block; width: 100%; max-width: 100%; min-height: 450px; border: 0; border-radius: 12px; margin-bottom: 16px; }

/* Keep provider frames mounted outside view panels. CSS, not DOM reparenting,
   docks them so a scroll, tab switch or work-surface entry cannot reload media. */
.yz .yz-floating-media {
  position: fixed; right: 16px; bottom: 16px; z-index: 1200;
  box-sizing: border-box; width: min(480px, calc(100vw - 24px));
  max-height: calc(100dvh - 24px); overflow: auto;
  margin: 0; padding: 12px; border: 1px solid var(--yz-border);
  border-radius: 15px; background: var(--yz-paper);
  box-shadow: 0 8px 40px rgba(28, 47, 38, .18);
}
.yz-floating-media > header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 8px; }
.yz-floating-media > header strong { font-size: var(--yz-sm); }
.yz-floating-media > header button { font-size: var(--yz-xs); min-height: 44px; }
.yz .yz-floating-media .yz-provider-video { margin: 0; max-width: none; }
.yz .yz-floating-media .yz-provider-video iframe { height: clamp(200px, 34dvh, 300px); min-height: 200px; width: 100%; min-width: 200px; }
.yz .yz-floating-media [data-yze-frame] iframe { height: clamp(200px, 28dvh, 300px); min-height: 200px; margin: 0; }
.yz-floating-media .yz-help { margin: 8px 0 0; }
.yz-floating-media > a { display: block; font-size: var(--yz-xs); padding-block: var(--yz-s3); color: var(--yz-green); overflow-wrap: anywhere; }
@media (max-width: 600px) {
  .yz .yz-floating-media { right: 12px; bottom: 12px; }
}
.yz-services input[type=url] { width: 100%; min-width: 0; }
.yz-review-row { border: 1px solid rgba(72,94,98,.25); border-radius: 14px; padding: 16px; margin: 12px 0; overflow-wrap: anywhere; }
.yz-review-row input { min-width: 0; width: 100%; box-sizing: border-box; }
.yz-review-row a { text-decoration: underline; }
.yz-collection { margin-top: var(--yz-s5); }
.yz-catalogue-search { display: flex; gap: var(--yz-s3); align-items: end; flex-wrap: wrap; margin-bottom: var(--yz-s5); }
.yz-catalogue-search > label:first-child { flex: 1 1 280px; }
.yz-catalogue-search label, .yz-dialog label { display: grid; gap: var(--yz-s2); font-size: var(--yz-sm); min-width: 0; }
.yz-catalogue-search input, .yz-catalogue-search select, .yz-dialog input, .yz-dialog select {
  width: 100%; min-width: 0; min-height: 44px; padding: var(--yz-s2) var(--yz-s3);
  border: 1px solid var(--yz-border); border-radius: var(--yz-s2); color: var(--yz-ink);
  background: var(--yz-paper); font: inherit; box-sizing: border-box;
}
.yz-song-row { display: flex; align-items: center; gap: var(--yz-s3); padding-block: var(--yz-s3); border-bottom: 1px solid var(--yz-border); flex-wrap: wrap; }
.yz-song-row .yz-file-name { white-space: normal; overflow-wrap: anywhere; text-align: left; }
.yz-song-caption { color: var(--yz-muted); font-size: var(--yz-sm); margin: var(--yz-s1) 0 0; overflow-wrap: anywhere; }
.yz-song-art, .yz-album-placeholder { flex: 0 0 56px; width: 56px; height: 56px; object-fit: cover; border-radius: var(--yz-s2); background: var(--yz-paper); }
.yz-album-placeholder { display: grid; place-items: center; color: var(--yz-muted); font-size: var(--yz-xs); }
.yz-playlists { display: flex; gap: var(--yz-s3); flex-wrap: wrap; }
.yz-playlist-item { display: flex; gap: var(--yz-s1); align-items: center; flex-wrap: wrap; padding-block: var(--yz-s2); }
.yz-listening-tools { display: flex; align-items: center; gap: var(--yz-s2); flex-basis: 100%; flex-wrap: wrap; }
.yz-listening-tools label { display: flex; align-items: center; gap: var(--yz-s2); font-size: var(--yz-xs); color: var(--yz-muted); }
.yz-listening-tools select { min-height: 44px; max-width: 148px; font: inherit; color: var(--yz-ink); border: 1px solid var(--yz-border); background: var(--yz-paper); border-radius: var(--yz-s2); }
.yz-listening-tools [role=status] { color: var(--yz-muted); font-size: var(--yz-xs); }
.yz-dialog { max-height: 80dvh; overflow: auto; overflow-wrap: anywhere; }
.yz-dialog dl { display: grid; grid-template-columns: minmax(100px, 1fr) minmax(0, 2fr); gap: var(--yz-s2) var(--yz-s4); }
.yz-dialog dt { font-weight: 600; }
.yz-dialog dd { margin: 0; min-width: 0; }
.yz { padding-bottom: 16rem; }
@media (max-width: 600px) {
  .yz { padding-bottom: 22rem; }
  .yz-listening-tools { order: 4; }
  .yz-song-row .yz-shared-actions { flex: 1 1 100%; }
  .yz-song-row .yz-shared-actions button { min-height: 44px; }
  .yz-dialog dl { display: block; }
  .yz-dialog dd { margin-bottom: var(--yz-s3); }
  .yz-catalogue-search { align-items: stretch; }
}
