/* Arsyi Canva Music: isolated styles; the existing cover is never rewritten. */
.acm-modal {
  position: fixed !important; inset: 0 !important; margin: 0 !important;
  padding: 0 !important; border: 0 !important; border-radius: 0 !important;
  max-width: none !important; max-height: none !important;
  width: 100% !important; height: 100vh !important; height: 100dvh !important;
  background: #f6f4ee !important; color: #2b352e !important;
  font: 14px/1.5 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  z-index: 2147483000 !important; box-sizing: border-box !important;
  overscroll-behavior: contain; display: none;
}
.acm-modal[open] { display: grid !important; grid-template: auto minmax(0, 1fr) / minmax(0, 1fr) 360px; }
.acm-modal::backdrop { background: #17231deb; }
.acm-modal *, .acm-modal *::before, .acm-modal *::after { box-sizing: border-box; }
.acm-header { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 20px; background: #fffdf8; border-bottom: 1px solid #e4e2da; min-height: 60px; }
.acm-title { font-family: Georgia, serif; font-size: 23px; line-height: 1.1; font-weight: 400; letter-spacing: -.5px; }
.acm-header-actions { display: flex; gap: 8px; align-items: center; }
.acm-modal .acm-button { appearance: none; display: inline-flex; align-items: center; justify-content: center; gap: 7px; width: auto; margin: 0; padding: 10px 15px; border: 1px solid #344d3d; border-radius: 999px; background: #344d3d; color: #fff; text-decoration: none; font: 600 13px/1.2 system-ui, sans-serif; letter-spacing: 0; text-transform: none; cursor: pointer; min-height: 40px; box-shadow: none; }
.acm-modal .acm-button:hover { background: #263d2e; color: #fff; }
.acm-modal .acm-button-secondary { background: transparent; color: #344d3d; border-color: #d5d9d0; }
.acm-modal .acm-button-secondary:hover { background: #edf0e8; color: #263d2e; }
.acm-modal .acm-button:focus-visible, .acm-modal a:focus-visible { outline: 3px solid #af914f; outline-offset: 3px; }
.acm-content { min-width: 0; min-height: 0; background: #fff; position: relative; }
.acm-modal .acm-canva { display: block; width: 100% !important; height: 100% !important; margin: 0 !important; border: 0 !important; border-radius: 0 !important; min-height: 0; }
.acm-music { min-height: 0; display: flex; flex-direction: column; padding: 25px 16px; gap: 12px; background: #f6f4ee; border-left: 1px solid #e4e2da; overflow-y: auto; }
.acm-overline { margin: 0; text-transform: uppercase; font-size: 10px; font-weight: 700; letter-spacing: 2px; color: #746d5b; }
.acm-music-heading { margin: 0; font: 400 29px/1.2 Georgia, serif; }
.acm-player-box { width: 100%; height: 200px; min-width: 200px; min-height: 200px; flex-shrink: 0; background: #18211d; }
.acm-modal .acm-youtube { display: block; width: 100% !important; height: 200px !important; min-width: 200px !important; min-height: 200px !important; margin: 0 !important; border: 0 !important; border-radius: 0 !important; }
.acm-status { margin: 0; font-size: 13px; color: #556055; min-height: 39px; }
.acm-music-actions { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; }
.acm-modal .acm-text-link { color: #45604a; text-decoration: underline; text-underline-offset: 3px; font-size: 12px; }
.acm-help { font-size: 12px; color: #697165; line-height: 1.6; margin: 6px 0 0; }
.acm-legal { margin: auto 0 0; padding-top: 18px; display: flex; flex-wrap: wrap; gap: 6px 14px; }
.acm-modal .acm-legal a { font-size: 10px; color: #697165; text-decoration: underline; }
@media (max-width: 760px) and (min-height: 501px) {
  .acm-modal[open] { grid-template: auto minmax(0, 1fr) auto / minmax(0, 1fr); }
  .acm-header { padding: 8px 12px; min-height: 52px; }
  .acm-title { font-size: 21px; }
  .acm-modal .acm-header .acm-button { padding: 9px 11px; font-size: 11px; }
  .acm-music { display: grid; grid-template-columns: minmax(200px, 356px) minmax(0, 1fr); grid-template-rows: auto auto; align-content: start; align-items: start; justify-content: center; column-gap: 12px; row-gap: 4px; padding: 8px max(10px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left)); border-left: 0; border-top: 1px solid #e4e2da; }
  .acm-player-box { grid-row: 1 / 4; grid-column: 1; }
  .acm-overline, .acm-music-heading, .acm-help { display: none; }
  .acm-status { min-height: 0; padding: 0; font-size: 11px; }
  .acm-music-actions { flex-direction: column; align-items: stretch; }
  .acm-modal .acm-music-actions .acm-button { padding: 10px 7px; font-size: 11px; }
  .acm-legal { margin: 0; padding-top: 4px; }
  .acm-modal .acm-legal a { font-size: 9px; }
}
@media (max-width: 480px) and (min-height: 501px) {
  .acm-music { grid-template: auto auto / minmax(0, 1fr); gap: 6px; }
  .acm-player-box { grid-area: auto; width: min(100%, 356px); justify-self: center; }
  .acm-status { grid-row: 2; padding-right: 93px; font-size: 11px; min-height: 30px; }
  .acm-music-actions { position: relative; grid-row: 2; grid-column: 1; justify-self: end; align-self: start; }
  .acm-music-actions .acm-text-link { display: none; }
  .acm-legal { display: flex; grid-row: 3; justify-content: center; padding: 0; }
  .acm-modal .acm-music-actions .acm-button { min-height: 30px; padding: 7px 10px; }
}
@media (max-height: 500px) {
  .acm-modal[open] { grid-template: auto minmax(0, 1fr) / minmax(0, 1fr) 300px; }
  .acm-header { min-height: 44px; padding: 5px 12px; }
  .acm-music { padding: 8px; gap: 7px; }
  .acm-music-heading, .acm-overline, .acm-help, .acm-legal { display: none; }
  .acm-status { min-height: 0; font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) { .acm-modal * { scroll-behavior: auto !important; } }
