/* MP Studio is a product section in the existing MPKaraoke page.
   Container, typography, section spacing, buttons, download-shell and its
   responsive breakpoints are inherited from styles.min.css unchanged. */
#mp-studio { border-top: 1px solid var(--line); }
#mp-studio .mp-studio-heading-line { display:flex; flex-wrap:wrap; align-items:center; gap:12px 24px; }
#mp-studio .mp-studio-status { padding:4px 10px; border:1px solid var(--line-strong); border-radius:var(--radius-sm); color:var(--muted-strong); font-size:.72rem; }
#mp-studio .section-heading p { max-width:850px; }
#mp-studio .mp-studio-content { align-items:start; }
#mp-studio h3 { margin:0 0 14px; font-size:1.08rem; line-height:1.45; }
#mp-studio .mp-studio-gallery { min-width:0; }
#mp-studio .mp-studio-placeholder { display:flex; min-height:240px; padding:24px; align-items:center; justify-content:center; flex-direction:column; gap:8px; text-align:center; color:var(--muted); }
#mp-studio .mp-studio-placeholder strong { font-size:1.2rem; color:var(--muted-strong); font-weight:700; }
#mp-studio .mp-studio-placeholder span { font-size:.74rem; }
#mp-studio .mp-studio-image-button { display:block; width:100%; padding:0; background:transparent; cursor:zoom-in; }
#mp-studio .mp-studio-image-button img { width:100%; object-fit:contain; }
#mp-studio .mp-studio-gallery-tabs { display:flex; flex-wrap:wrap; gap:6px; margin-top:12px; }
#mp-studio .mp-studio-gallery-tabs .button { min-height:36px; padding:8px 10px; border-radius:var(--radius-sm); font-size:.7rem; font-weight:650; }
#mp-studio .mp-studio-gallery-tabs [aria-pressed=true] { color:var(--cyan); border-color:var(--line-strong); }
#mp-studio .mp-studio-caption { margin:10px 0 0; color:var(--muted); font-size:.75rem; line-height:1.7; }
#mp-studio .mp-studio-feature-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
#mp-studio .mp-studio-feature { display:flex; min-width:0; min-height:38px; padding:9px 12px; align-items:center; gap:8px; border:1px solid var(--line); border-radius:var(--radius-sm); background:var(--surface); font-size:.76rem; overflow-wrap:anywhere; }
#mp-studio .mp-studio-feature::before { content:'·'; color:var(--cyan); font-weight:900; }
#mp-studio .mp-studio-compact-copy { margin-top:22px; }
#mp-studio .mp-studio-compact-copy h3 { margin-bottom:6px; }
#mp-studio .mp-studio-compact-copy p:not(.mp-studio-caption) { margin:0; color:var(--muted-strong); font-size:.85rem; }
#mp-studio .mp-studio-release { display:flex; flex-wrap:wrap; gap:28px 44px; margin-top:32px; padding-top:28px; border-top:1px solid var(--line); }
#mp-studio .mp-studio-release-info { flex:2 1 480px; min-width:0; }
#mp-studio .mp-studio-purchase { flex:1 1 240px; min-width:0; }
#mp-studio .mp-studio-metadata { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr)); gap:14px 20px; margin:0 0 20px; }
#mp-studio .mp-studio-metadata dt { color:var(--muted); font-size:.7rem; }
#mp-studio .mp-studio-metadata dd { margin:3px 0 0; font-size:.8rem; color:var(--text); overflow-wrap:anywhere; }
#mp-studio .mp-studio-notes { white-space:pre-wrap; margin-bottom:16px; }
#mp-studio .mp-studio-pricing { margin:16px 0; }
#mp-studio .mp-studio-pricing p { margin:6px 0; font-size:.85rem; }
#mp-studio .mp-studio-pricing .mp-studio-caption { font-size:.72rem; }
#mp-studio .button:disabled { opacity:.65; cursor:not-allowed; transform:none; box-shadow:none; }
#mp-studio .mp-studio-image-dialog { width:min(94vw,var(--container)); max-height:92vh; padding:16px; color:var(--text); border:1px solid var(--line-strong); border-radius:var(--radius); background:var(--surface); }
#mp-studio .mp-studio-image-dialog::backdrop { background:rgba(0,0,0,.82); }
#mp-studio .mp-studio-image-dialog img { width:100%; max-height:74vh; object-fit:contain; margin-top:16px; }
#mp-studio .mp-studio-image-dialog p { text-align:center; margin-bottom:0; }
