/* MUSIC FM Classic — generated stylesheet bundle. See AUDIT-AND-DEPLOY.md. */

/* ===== BEGIN calm-experience.css ===== */
/* =========================================================
   MUSIC FM — Calm Experience
   Calm, editorial motion. Content cards stay completely still;
   only their artwork moves, gently, like the main HERO.
========================================================= */

:root{
  --mf-calm-fast:220ms;
  --mf-calm-normal:380ms;
  --mf-calm-slow:620ms;
  --mf-calm-image:680ms;
  --mf-calm-ease:cubic-bezier(.22,.72,.22,1);
  --mf-calm-ease-soft:cubic-bezier(.25,.6,.25,1);
}

/* Header / navigation — smooth and deliberate. */
body:not(.mf-admin) :is(
  .v4-action,.v4-more,.v4-mainnav a,.mf-header-account__trigger,
  .mf-header-account__close,.v4-mega-close,.search-close,
  .mf-mobile-menu-toggle,.mf-search-premium-drop__close
){
  transition-duration:var(--mf-calm-normal)!important;
  transition-timing-function:var(--mf-calm-ease)!important;
}

body:not(.mf-admin) :is(
  .mf-header-popover,.mf-notification-dropdown,.mega-menu,.v4-mega,
  .search-overlay,.premium-search,.mf-search-stage
){
  transition-duration:460ms!important;
  transition-timing-function:var(--mf-calm-ease)!important;
}

/* ---------------------------------------------------------
   GLOBAL IMAGE-ONLY INTERACTION
   JS records each card's resting appearance. On hover/touch we
   keep that exact appearance and animate only the image inside.
--------------------------------------------------------- */
html body:not(.mf-admin) #mainContent .mf-calm-image-surface{
  transition-property:background-color,border-color,color,opacity!important;
  transition-duration:var(--mf-calm-normal)!important;
  transition-timing-function:var(--mf-calm-ease-soft)!important;
}

@media (hover:hover) and (pointer:fine){
  html body:not(.mf-admin) #mainContent .mf-calm-image-surface:hover{
    transform:var(--mf-calm-rest-transform,none)!important;
    translate:var(--mf-calm-rest-translate,none)!important;
    rotate:var(--mf-calm-rest-rotate,none)!important;
    scale:var(--mf-calm-rest-scale,none)!important;
    filter:var(--mf-calm-rest-filter,none)!important;
    box-shadow:var(--mf-calm-rest-shadow,none)!important;
    background-color:var(--mf-calm-rest-bg,transparent)!important;
    border-top-color:var(--mf-calm-rest-border-top,transparent)!important;
    border-right-color:var(--mf-calm-rest-border-right,transparent)!important;
    border-bottom-color:var(--mf-calm-rest-border-bottom,transparent)!important;
    border-left-color:var(--mf-calm-rest-border-left,transparent)!important;
  }

  html body:not(.mf-admin) #mainContent .mf-calm-image-surface:hover::before{
    opacity:var(--mf-calm-before-opacity,1)!important;
    transform:var(--mf-calm-before-transform,none)!important;
    box-shadow:var(--mf-calm-before-shadow,none)!important;
  }

  html body:not(.mf-admin) #mainContent .mf-calm-image-surface:hover::after{
    opacity:var(--mf-calm-after-opacity,1)!important;
    transform:var(--mf-calm-after-transform,none)!important;
    box-shadow:var(--mf-calm-after-shadow,none)!important;
  }

  html body:not(.mf-admin) #mainContent .mf-calm-image-surface:hover .mf-calm-static-text{
    color:var(--mf-calm-text-color,inherit)!important;
    transform:var(--mf-calm-text-transform,none)!important;
    text-decoration-color:var(--mf-calm-text-decoration-color,currentColor)!important;
    background-size:var(--mf-calm-text-bg-size,auto)!important;
  }

  /* The one intentional movement: a very soft artwork zoom. */
  html body:not(.mf-admin) #mainContent .mf-calm-image-surface:hover .mf-calm-image-media{
    transform:var(--mf-calm-image-transform,none)!important;
    filter:var(--mf-calm-image-filter,none)!important;
    scale:1.014!important;
  }
}

html body:not(.mf-admin) #mainContent .mf-calm-image-media{
  transform:var(--mf-calm-image-transform,none)!important;
  filter:var(--mf-calm-image-filter,none)!important;
  scale:1;
  transform-origin:50% 48%;
  transition:scale var(--mf-calm-image) var(--mf-calm-ease),filter var(--mf-calm-normal) ease!important;
  backface-visibility:hidden;
}

/* The main HERO already has the exact motion language we want — keep it calmer still. */
@media (hover:hover) and (pointer:fine){
  html body.home-page #mainContent .mf-home-hero-main:hover .mf-home-hero-image.is-active,
  html body.home-page #mainContent .mf-lead-image:hover img{
    transform:none!important;
    scale:1.012!important;
    transition:scale var(--mf-calm-image) var(--mf-calm-ease)!important;
  }
}

/* Touch: no fake hover state. A light press moves only the image and returns slowly. */
@media (hover:none), (pointer:coarse){
  html body:not(.mf-admin) #mainContent .mf-calm-image-surface{
    transform:var(--mf-calm-rest-transform,none)!important;
    translate:var(--mf-calm-rest-translate,none)!important;
    rotate:var(--mf-calm-rest-rotate,none)!important;
    scale:var(--mf-calm-rest-scale,none)!important;
    box-shadow:var(--mf-calm-rest-shadow,none)!important;
  }

  html body:not(.mf-admin) #mainContent .mf-calm-image-surface:active .mf-calm-image-media{
    transform:var(--mf-calm-image-transform,none)!important;
    filter:var(--mf-calm-image-filter,none)!important;
    scale:1.009!important;
    transition-duration:420ms!important;
  }
}

/* Stateful actions stay pleasant, without alarm-like motion. */
body:not(.mf-admin) .mf-action-ready i,
body:not(.mf-admin) .mf-action-ready svg{
  transition-duration:240ms!important;
  transition-timing-function:var(--mf-calm-ease)!important;
}
body:not(.mf-admin) .mf-action-ready.mf-action-pressing i,
body:not(.mf-admin) .mf-action-ready.mf-action-pressing svg{
  transform:scale(.985)!important;
  transition-duration:150ms!important;
}

body:not(.mf-admin) .mf-action-fx-particle,
body:not(.mf-admin) .mf-action-fx-orbit-dot,
body:not(.mf-admin) .mf-action-fx-share-dot,
body:not(.mf-admin) .mf-action-fx-drop{
  box-shadow:0 0 3px color-mix(in srgb,currentColor 18%,transparent)!important;
}
body:not(.mf-admin) .mf-action-fx-sweep-glow{box-shadow:0 0 4px currentColor!important;}

/* Ambient movement remains slow and quiet. */
body:not(.mf-admin) .flash-title i{animation-duration:4.8s!important;}
body:not(.mf-admin) .typing-indicator span{animation-duration:1.8s!important;}
body:not(.mf-admin) .support-create-line::after{animation-duration:2.2s!important;}
body:not(.mf-admin) .is-playing .mf-radio-vinyl{animation-duration:18s!important;}
body:not(.mf-admin) .is-playing .mf-radio-live-wave i{animation-duration:1.55s!important;}
body:not(.mf-admin) .song-now-playing-bars i{animation-duration:1.45s!important;}
body:not(.mf-admin) .mf-playlists-v5 .mf-pl5-hero-mosaic{animation-duration:14s!important;}
body:not(.mf-admin) .mf-playlists-v5 .mf-pl5-now-card{animation-duration:13s!important;}
body:not(.mf-admin) .mf-playlists-v5 .mf-pl5-orbit{animation-duration:60s!important;}
body:not(.mf-admin) .mf-playlists-v5 .mf-pl5-live i{animation-duration:3.8s!important;}
body:not(.mf-admin) .mf-logo-spark-orbit{animation-duration:24s!important;}
body:not(.mf-admin) .mf-classic-ring{animation-duration:32s!important;}
body:not(.mf-admin) .mf-classic-bar{animation-duration:9s!important;}

@keyframes mfPl5Float{0%,100%{transform:rotate(-1.2deg) translateY(0)}50%{transform:rotate(-.8deg) translateY(-3px)}}
@keyframes mfPl5FloatCard{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
@keyframes mfPl5Pulse{0%,100%{opacity:.72;transform:scale(.97)}50%{opacity:1;transform:scale(1.025)}}
@keyframes spTyping{0%,65%,100%{transform:translateY(0);opacity:.55}32%{transform:translateY(-1.5px);opacity:.9}}

body:not(.mf-admin) :is(a,button,input,textarea,select,summary):focus-visible{
  outline:2px solid color-mix(in srgb,var(--mf-primary,#147cff) 48%,white)!important;
  outline-offset:3px!important;
  transition:outline-color var(--mf-calm-normal) var(--mf-calm-ease)!important;
}

@media (prefers-reduced-motion:reduce){
  html body:not(.mf-admin) #mainContent .mf-calm-image-media{
    transition:none!important;
    scale:1!important;
  }
  html body:not(.mf-admin) #mainContent .mf-calm-image-surface:hover .mf-calm-image-media,
  html body:not(.mf-admin) #mainContent .mf-calm-image-surface:active .mf-calm-image-media{
    scale:1!important;
  }
  body:not(.mf-admin) *,body:not(.mf-admin) *::before,body:not(.mf-admin) *::after{scroll-behavior:auto!important;}
}

/* One quiet page-arrival motion. It never repeats while interacting with content. */
body:not(.mf-admin) #mainContent{
  animation:mfCalmPageArrival 300ms var(--mf-calm-ease) both;
}

@keyframes mfCalmPageArrival{
  from{opacity:.01;transform:translateY(4px)}
  to{opacity:1;transform:translateY(0)}
}

@media (prefers-reduced-motion:reduce){
  body:not(.mf-admin) #mainContent{animation:none!important}
}

/* ===== END calm-experience.css ===== */

/* ===== BEGIN calm-ui.css ===== */
/* MUSIC FM — calm interaction finish
   Lightweight final layer: deliberate motion without adding layout work or
   expensive global animation observers. The dedicated like/action engine is
   intentionally left untouched. */

:root{
  --mf-calm-ease:cubic-bezier(.22,.72,.22,1);
  --mf-calm-soft:cubic-bezier(.25,.62,.25,1);
  --mf-calm-ui:300ms;
  --mf-calm-layer:360ms;
  --mf-calm-image:680ms;
  --mf-calm-focus:0 0 0 3px rgba(20,124,255,.09);
  --mf-ui-motion-fast:180ms;
  --mf-ui-motion-ui:300ms;
  --mf-ui-motion-layer:360ms;
  --mf-ui-motion-image:680ms;
  --mf-ui-ease:var(--mf-calm-ease);
  --mf-top-panel-duration:360ms;
  --mf-top-panel-ease:var(--mf-calm-ease);
}

/* Controls react softly, but we never delay the action itself. */
body:not(.mf-admin) :is(
  .v4-mainnav a,.v4-more,.v4-action,.mf-mobile-menu-toggle,
  .mf-header-account__trigger,.mf-header-account__close,
  .v4-mega-close,.search-close,.mf-search-premium-drop__close
){
  transition-duration:var(--mf-calm-ui)!important;
  transition-timing-function:var(--mf-calm-ease)!important;
}

body:not(.mf-admin) :is(
  .mega-menu,.v4-mega,.mf-header-popover,.mf-header-account__menu,
  .mf-notification-dropdown,.search-overlay,.premium-search,.mf-search-stage,
  .mf-a11y-center,dialog
){
  transition-duration:var(--mf-calm-layer)!important;
  transition-timing-function:var(--mf-calm-ease)!important;
}

body:not(.mf-admin) .mf-nav-backdrop{
  transition:opacity 360ms var(--mf-calm-soft)!important;
}

body:not(.mf-admin) :is(input:not([type="checkbox"]):not([type="radio"]),textarea,select):focus{
  box-shadow:var(--mf-calm-focus)!important;
}
body:not(.mf-admin) :is(input,textarea,select,button,a,summary):focus-visible{
  outline-offset:3px!important;
}
body:not(.mf-admin) :is(.settings-switch i,.mf-a11y-switch-row>i,.toggle,.switch,[class*="switch"] i,[class*="toggle"] i){
  transition-duration:360ms!important;
  transition-timing-function:var(--mf-calm-ease)!important;
}

/* Brand ring is intentionally alive — calm, continuous rotation. */
body:not(.mf-admin) .mf-classic-ring{
  animation-duration:32s!important;
  animation-play-state:running!important;
}

/* Keep route transitions elegant but fast enough that navigation never feels blocked. */
body .mf-page-transition{
  transition:opacity 180ms var(--mf-calm-soft),visibility 0s linear 180ms!important;
  background:rgba(249,251,253,.992)!important;
}
body.mf-page-leaving .mf-page-transition{
  transition:opacity 180ms var(--mf-calm-soft)!important;
}
body .mf-page-transition__inner{
  transition:opacity 220ms var(--mf-calm-ease),transform 240ms var(--mf-calm-ease)!important;
}
body .mf-page-transition__ring{animation-duration:1.8s!important}
body .mf-page-transition__bar--1{animation-duration:1.2s!important}
body .mf-page-transition__bar--2{animation-duration:1.1s!important}
body .mf-page-transition__bar--3{animation-duration:1.3s!important}
body .mf-page-transition__line::after{animation-duration:1.3s!important;opacity:.68}

/* Online/live indicators breathe instead of blink. */
body:not(.mf-admin) :is(.mf-header-account__online,.mf-hd-live-dot,.mf-community-live-dot,.online-users i,.auth-live i){
  animation:mfCalmStatusPulse 4.8s ease-in-out infinite!important;
  box-shadow:0 0 0 3px rgba(37,200,195,.055),0 0 6px rgba(37,200,195,.10)!important;
}
@keyframes mfCalmStatusPulse{
  0%,100%{opacity:.88}
  50%{opacity:1}
}

/* HOME HERO — one clean editorial frame, no frame-on-frame treatment. */
body.home-page #mainContent .mf-hero-board{
  border:0!important;
  box-shadow:none!important;
  background:#fff!important;
}
body.home-page #mainContent .mf-lead-image{
  box-sizing:border-box!important;
  padding:6px!important;
  background:#e7eaee!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
body.home-page #mainContent .mf-lead-image::before,
body.home-page #mainContent .mf-lead-image::after{
  content:none!important;
  display:none!important;
}
body.home-page #mainContent .mf-lead-image>img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
body.home-page #mainContent .mf-lead-copy{
  border:0!important;
  box-shadow:none!important;
}

/* Dark surfaces keep explicit readable type; pure CSS only, no runtime scanning. */
body :is(
  [data-mf-surface="dark"],.is-dark,.dark-surface,
  .news-masthead,.dedications-masthead,.profile-hero,.settings-hero,.notifications-hero,
  .legal-hero,.terms-hero,.artist-hero,.contact-hero,.help-hero,.about-hero,
  .news-breaking,.mf-dedications-rail,.site-footer,.mf-footer,.mf-editorial-footer,
  .auth-visual,.legal-final,.terms-final,.about-vision-band,.about-future,
  .history-volume-front,.history-endnote,.history-radio-art,.history-mobile-scene
) :is(h1,h2,h3,h4,h5,h6,strong,b){color:#f7fbff!important}
body :is(
  [data-mf-surface="dark"],.is-dark,.dark-surface,
  .news-masthead,.dedications-masthead,.profile-hero,.settings-hero,.notifications-hero,
  .legal-hero,.terms-hero,.artist-hero,.contact-hero,.help-hero,.about-hero,
  .news-breaking,.mf-dedications-rail,.site-footer,.mf-footer,.mf-editorial-footer,
  .auth-visual,.legal-final,.terms-final,.about-vision-band,.about-future,
  .history-volume-front,.history-endnote,.history-radio-art,.history-mobile-scene
) :is(p,span,small,time,label,li){color:#bdccda}

/* Admin receives the same measured response without card movement. */
body.mf-admin :is(
  .adm-button,.adm-icon-button,.adm-mobile-trigger,.adm-site-link,
  .adm-sidebar nav a,.adm-app-nav a,.adm-app-nav button,input,textarea,select
){
  transition-duration:280ms!important;
  transition-timing-function:var(--mf-calm-soft)!important;
}
@media (hover:hover) and (pointer:fine){
  body.mf-admin :is(.adm-panel,.adm-stat,.ow-brief,.ow-shortcut,.ow-module,.an-card,.adm-welcome):hover{
    transform:none!important;
    translate:none!important;
    scale:none!important;
  }
}
body.mf-admin .adm-welcome :is(h1,h2,h3,strong,b){color:#f8fbff!important}
body.mf-admin .adm-welcome :is(p,span,small,time){color:#c0cfdd!important}
body.mf-admin .adm-welcome .adm-eyebrow{color:#7fdff0!important}

@media (max-width:640px){
  body.home-page #mainContent .mf-lead-image{padding:4px!important}
}

html[data-mf-a11y-calm="on"] body :is(.mf-header-account__online,.mf-hd-live-dot,.mf-community-live-dot,.online-users i,.auth-live i),
html[data-mf-a11y-reduced-motion="on"] body :is(.mf-header-account__online,.mf-hd-live-dot,.mf-community-live-dot,.online-users i,.auth-live i){animation:none!important}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* ===== END calm-ui.css ===== */

/* ===== BEGIN v3-luxury-unified.css ===== */
/* ========================================================================== 
   MUSIC FM V3 — Luxury Unified Finish
   Final visual authority loaded after page-level styles.
   Purpose: make legacy and new pages share one calm, premium editorial DNA.
   ========================================================================== */
:root{
  --mf-v3-bg:#f4f7fb;
  --mf-v3-surface:#ffffff;
  --mf-v3-surface-soft:#f8fafc;
  --mf-v3-ink:#10233f;
  --mf-v3-muted:#68778b;
  --mf-v3-line:#dfe6ef;
  --mf-v3-line-soft:#edf1f6;
  --mf-v3-navy:#041327;
  --mf-v3-navy-2:#071d37;
  --mf-v3-blue:#147cff;
  --mf-v3-cyan:#59c7ff;
  --mf-v3-success:#14825f;
  --mf-v3-danger:#c93649;
  --mf-v3-radius:4px;
  --mf-v3-radius-sm:3px;
  --mf-v3-shadow:0 18px 48px rgba(4,19,39,.07);
  --mf-v3-shadow-hover:0 22px 58px rgba(4,19,39,.10);
  --mf-v3-ease:cubic-bezier(.2,.75,.25,1);
}

html{background:var(--mf-v3-bg)}
body{background:var(--mf-v3-bg);color:var(--mf-v3-ink)}
main{min-width:0}

/* Consistent page rhythm without flattening purpose-built hero sections. */
.inner-page main{padding-bottom:clamp(54px,7vw,96px)}
.mf-container,.container{max-width:1240px}

/* Universal premium surfaces. Deliberately excludes nav/player/toasts/dialog chrome. */
:where(main) :is(
  .card,.panel,.box,.widget,.surface,.content-card,.info-card,.feature-card,.stat-card,
  .article-card,.news-card,.song-card,.album-card,.artist-card,.playlist-card,.poll-card,
  .profile-card,.settings-card,.support-card,.community-card,.chart-card,.form-card,
  .contact-form-card,.side-card,.post,.composer,.auth-shell,.legal-document,.terms-document
){
  border-color:var(--mf-v3-line)!important;
  box-shadow:var(--mf-v3-shadow);
}

/* Where old pages used extreme rounding, converge to one restrained premium radius. */
:where(main) :is(
  .card,.panel,.box,.widget,.surface,.content-card,.info-card,.feature-card,.stat-card,
  .article-card,.news-card,.song-card,.album-card,.artist-card,.playlist-card,.poll-card,
  .profile-card,.settings-card,.support-card,.community-card,.chart-card,.form-card,
  .contact-form-card,.side-card,.post,.composer,.auth-shell
){border-radius:var(--mf-v3-radius)!important}

:where(main) :is(.card,.panel,.content-card,.feature-card,.article-card,.news-card,.song-card,.album-card,.artist-card,.playlist-card,.poll-card,.community-card){
  transition:transform .22s var(--mf-v3-ease),box-shadow .22s var(--mf-v3-ease),border-color .22s var(--mf-v3-ease);
}
@media (hover:hover) and (pointer:fine){
  :where(main) :is(.article-card,.news-card,.song-card,.album-card,.artist-card,.playlist-card,.poll-card,.feature-card):hover{
    transform:translateY(-2px);
    box-shadow:var(--mf-v3-shadow-hover);
    border-color:#d2dce8!important;
  }
}

/* Headlines and supporting copy get the same editorial hierarchy. */
:where(main) :is(h1,h2,h3,h4){font-family:var(--mf-font,"IBM Plex Sans Hebrew",Arial,sans-serif)}
:where(main) :is(.eyebrow,.kicker,.section-kicker,[class*="__eyebrow"],[class*="__kicker"]){
  font-weight:800;
  letter-spacing:.08em;
}
/* Foreground shades are intentionally owned by each light/dark surface. */

/* One button language across old and new modules. */
:where(main) :is(button,.btn,[class*="btn"],.button,[class*="button"]){
  min-height:42px;
  border-radius:var(--mf-ui-radius-control,4px);
  font-weight:750;
  transition:transform .18s var(--mf-v3-ease),box-shadow .18s var(--mf-v3-ease),background-color .18s var(--mf-v3-ease),border-color .18s var(--mf-v3-ease);
}
:where(main) :is(.btn-primary,.primary-btn,.button-primary,[class*="btn--primary"],[class*="button--primary"]){
  background:var(--mf-ui-blue-deep,#0d5fc2)!important;
  border-color:var(--mf-ui-blue-deep,#0d5fc2)!important;
  color:#fff!important;
  box-shadow:0 9px 22px rgba(20,124,255,.16)!important;
}
@media (hover:hover) and (pointer:fine){
  :where(main) :is(.btn-primary,.primary-btn,.button-primary,[class*="btn--primary"],[class*="button--primary"]):hover{
    transform:translateY(-1px);
    box-shadow:0 12px 26px rgba(20,124,255,.20)!important;
  }
}

/* Forms: same height, focus, contrast and radius everywhere. */
:where(main) :is(input:not([type]),input[type="text"],input[type="email"],input[type="password"],input[type="search"],input[type="tel"],input[type="url"],input[type="number"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"],input[type="week"],select,textarea){
  border:1px solid var(--mf-v3-line)!important;
  border-radius:var(--mf-ui-radius-control,4px)!important;
  background:#fff;
  color:var(--mf-v3-ink);
  box-shadow:none;
}
:where(main) :is(input:not([type]),input[type="text"],input[type="email"],input[type="password"],input[type="search"],input[type="tel"],input[type="url"],input[type="number"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"],input[type="week"],select){min-height:44px}
:where(main) textarea{min-height:112px}
:where(main) :is(input:not([type]),input[type="text"],input[type="email"],input[type="password"],input[type="search"],input[type="tel"],input[type="url"],input[type="number"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"],input[type="week"],select,textarea):focus{
  outline:2px solid transparent;
  outline-offset:2px;
  border-color:#8dbdf5!important;
  box-shadow:0 0 0 4px rgba(20,124,255,.09)!important;
}
:where(main) :is(input:not([type]),input[type="text"],input[type="email"],input[type="password"],input[type="search"],input[type="tel"],input[type="url"],input[type="number"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"],input[type="week"],textarea)::placeholder{color:#68788c;opacity:1}

/* Tables and data-heavy pages. */
:where(main) table{border-color:var(--mf-v3-line);background:var(--mf-v3-surface)}
:where(main) thead th{background:#f7f9fc;color:#30435e;border-color:var(--mf-v3-line);font-weight:800}
:where(main) tbody td{border-color:var(--mf-v3-line-soft)}
:where(main) tbody tr{transition:background-color .16s ease}
@media (hover:hover){:where(main) tbody tr:hover{background:#fafcff}}

/* Tags/status chips stop looking like unrelated mini products. */
:where(main) :is(.badge,.chip,.tag,.pill,[class*="__badge"],[class*="__chip"],[class*="__tag"]){
  border-radius:999px;
  font-weight:750;
}

/* Media behaves predictably on every page. */
:where(main) img{max-width:100%;height:auto}
:where(main) :is(.cover,.thumbnail,.artwork,[class*="__image"],[class*="__cover"]) img{object-fit:cover}

/* Header/footer remain the strongest brand anchors. */
.site-header.v4-site-header{box-shadow:0 8px 30px rgba(4,19,39,.12)}
.mf-footer-pro{border-top:1px solid rgba(255,255,255,.08)}

/* Calm premium mobile behavior. */
@media (max-width:760px){
  :root{--mf-v3-radius:4px;--mf-v3-shadow:0 10px 30px rgba(4,19,39,.055)}
  .mf-container,.container{width:min(100% - 28px,1240px)}
  :where(main) :is(button,.btn,[class*="btn"],.button,[class*="button"]){min-height:44px}
  :where(main) :is(.card,.panel,.content-card,.article-card,.news-card,.song-card,.album-card,.artist-card,.playlist-card,.poll-card){box-shadow:var(--mf-v3-shadow)}
}

/* Accessibility / motion preferences are always authoritative. */
@media (prefers-reduced-motion:reduce){
  :where(main) *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}

/* Consistent touch targets without enlarging icons, close controls or embedded toggles. */
:where(main) :is(.btn,.button,.primary-btn,.secondary-btn,button[type="submit"],input[type="submit"]):not(.icon-btn):not([class*="__icon"]){
  min-height:44px;
}
:where(main) :is(button,.btn,.button,[role="button"]):focus-visible{
  outline:2px solid var(--mf-ui-focus-color,#1265bb)!important;
  outline-offset:3px!important;
}
/* Avoid large card motion/shadows on touch and for people who reduce motion. */
@media (prefers-reduced-motion:reduce){
  :where(main) :is(.card,.panel,.content-card,.feature-card,.article-card,.news-card,.song-card,.album-card,.artist-card,.poll-card,.community-card){
    transform:none!important;transition:none!important;
  }
}

/* ===== END v3-luxury-unified.css ===== */

/* ===== BEGIN mega-directory-classic.css ===== */
/* MUSIC FM V3 — coherent editorial directory, 2026-10-19.
   Intentionally loaded after the legacy shared chrome layers.
   Scope: the "עוד" mega menu only. No page or header redesign. */

html body:not(.mf-admin) .mega-menu.v4-mega.mf-expanded-mega{
  background:#fff!important;
  color:#132a44!important;
  max-height:calc(100dvh - 80px);
  overflow-y:auto!important;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  border-top:1px solid #e4eaf0!important;
  border-bottom:1px solid #dfe6ed!important;
  box-shadow:0 26px 60px rgba(9,29,52,.12)!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-editorial-shell{
  width:min(100% - 36px,1440px)!important;
  margin-inline:auto!important;
  padding:0!important;
  background:#fff!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-headline-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:40px!important;
  padding:28px 60px 24px 6px!important;
  border:0!important;
  border-bottom:1px solid #e6ecf2!important;
  background:#fff!important;
}
html body:not(.mf-admin) .mf-expanded-mega .v4-mega-intro{
  max-width:780px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  opacity:1!important;
}
html body:not(.mf-admin) .mf-expanded-mega .v4-mega-intro>span{
  margin-bottom:9px!important;
  font-size:10px!important;
  font-weight:750!important;
  letter-spacing:.4px!important;
  color:#427ba9!important;
  direction:rtl!important;
  text-align:right!important;
}
html body:not(.mf-admin) .mf-expanded-mega .v4-mega-intro h2{
  margin:0 0 7px!important;
  color:#102b46!important;
  font-size:clamp(24px,2vw,31px)!important;
  font-weight:800!important;
  letter-spacing:-.6px!important;
  line-height:1.25!important;
}
html body:not(.mf-admin) .mf-expanded-mega .v4-mega-intro p{
  margin:0!important;
  max-width:700px!important;
  color:#6f8193!important;
  font-size:13px!important;
  font-weight:450!important;
  line-height:1.65!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-note{
  flex:0 0 auto;
  min-width:0!important;
  padding:8px 0 8px 22px!important;
  border-left:1px solid #e6ecf2!important;
  text-align:left!important;
  direction:ltr!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-note small{
  color:#8ca0b4!important;
  font-size:9px!important;
  letter-spacing:1.3px!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-note strong{
  font-size:11px!important;
  letter-spacing:.7px!important;
  color:#38536e!important;
}
html body:not(.mf-admin) .mf-expanded-mega .v4-mega-grid.mf-mega-directory{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  column-gap:0!important;
  row-gap:0!important;
  margin:0!important;
  padding:0!important;
  background:#fff!important;
  border:0!important;
  border-bottom:1px solid #e6ecf2!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-directory>.mf-mega-group,
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-directory>.mf-mega-group:nth-child(n){
  min-height:0!important;
  min-width:0!important;
  padding:25px 22px 28px!important;
  margin:0!important;
  border:0!important;
  border-left:1px solid #ebeff4!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
  opacity:1!important;
  transform:none!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-directory>.mf-mega-group:last-child{border-left:0!important}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-group>small{
  display:block!important;
  margin:0 0 11px!important;
  padding:0!important;
  color:#6e99bb!important;
  font-size:9px!important;
  font-weight:750!important;
  letter-spacing:.9px!important;
  line-height:1.2!important;
  direction:ltr;
  text-align:right;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-group>h3{
  margin:0 0 12px!important;
  color:#132d4c!important;
  font-size:17px!important;
  font-weight:800!important;
  line-height:1.4!important;
  letter-spacing:-.3px!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-group>a,
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-group>a:is(:hover,:focus-visible,:active){
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  min-height:38px!important;
  margin:0!important;
  padding:7px 10px!important;
  border:0!important;
  border-bottom:1px solid #f0f3f6!important;
  border-radius:3px!important;
  background:transparent!important;
  color:#536982!important;
  box-shadow:none!important;
  font-size:13px!important;
  font-weight:550!important;
  line-height:1.5!important;
  text-align:right!important;
  transform:none!important;
  transition:background-color .23s ease,color .23s ease!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-group>a:last-child{border-bottom-color:transparent!important}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-group>a:is(:hover,:focus-visible){
  background:#f3f7fb!important;
  color:#115d9e!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-group>a:focus-visible{
  outline:2px solid #2c7ab4!important;
  outline-offset:0!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-group>a[aria-current="page"]{
  background:#f3f7fb!important;
  color:#145c9b!important;
  font-weight:750!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-group>a::before,
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-group>a::after{content:none!important;display:none!important}

/* The bottom is a quiet utility row, not a second copy of the site directory. */
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-bottomline{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px 30px!important;
  min-height:76px!important;
  padding:14px 20px!important;
  margin:0!important;
  border:0!important;
  background:#f9fbfd!important;
  box-shadow:none!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-account-strip{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px 13px;
  min-width:0;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-account-strip__eyebrow{
  font-size:10px;
  font-weight:700;
  color:#8494a4;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-account-strip :is(a.mf-mega-account-strip__primary,a.mf-mega-account-strip__secondary){
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 12px;
  border-radius:4px;
  font-size:12px;
  font-weight:750;
  text-decoration:none;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-account-strip__primary{
  color:#fff!important;
  background:#183d61!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-account-strip__primary:hover{background:#24587d!important}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-account-strip__secondary{
  color:#183d61!important;
  background:#edf3f8!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-quicklinks{
  display:flex!important;
  justify-content:flex-start!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:0 3px!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-quicklinks :is(a,button),
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-quicklinks .mf-mega-accessibility--bottom{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-height:34px!important;
  padding:6px 10px!important;
  margin:0!important;
  border:0!important;
  border-radius:3px!important;
  background:transparent!important;
  color:#66798c!important;
  font-size:11px!important;
  font-weight:650!important;
  white-space:nowrap!important;
  text-align:center!important;
  box-shadow:none!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-quicklinks :is(a,button):is(:hover,:focus-visible){
  background:#edf3f8!important;
  color:#195e97!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-quicklinks :is(a,button):focus-visible,
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-account-strip a:focus-visible{outline:2px solid #2c7ab4!important;outline-offset:1px!important}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-quicklinks button>.mf-icon{width:15px!important;height:15px!important;margin-inline-end:5px!important}
html body:not(.mf-admin) .mf-expanded-mega .v4-mega-close{
  position:absolute!important;
  top:25px!important;
  left:4px!important;
  right:auto!important;
  width:38px!important;
  height:38px!important;
  padding:0!important;
  border:1px solid #dce5ee!important;
  border-radius:5px!important;
  background:#fff!important;
  box-shadow:none!important;
}
html body:not(.mf-admin) .mf-expanded-mega .v4-mega-close:focus-visible{outline:2px solid #2c7ab4!important;outline-offset:2px!important}

@media (max-width:1199px) and (min-width:981px){
  html body:not(.mf-admin) .mf-expanded-mega .v4-mega-grid.mf-mega-directory{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-directory>.mf-mega-group{border-bottom:1px solid #e9eff4!important}
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-bottomline{flex-wrap:wrap!important}
}
@media (max-width:980px){
  html body:not(.mf-admin) .mega-menu.v4-mega.mf-expanded-mega,
  html body:not(.mf-admin).scrolled .mega-menu.v4-mega.mf-expanded-mega{
    top:72px!important;
    bottom:0!important;
    height:auto!important;
    max-height:calc(100dvh - 72px)!important;
    background:#fff!important;
    box-shadow:none!important;
  }
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-editorial-shell{width:100%!important}
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-headline-row{
    padding:22px 20px 20px!important;
    gap:0!important;
  }
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-note{display:none!important}
  html body:not(.mf-admin) .mf-expanded-mega .v4-mega-intro h2{font-size:25px!important}
  html body:not(.mf-admin) .mf-expanded-mega .v4-mega-intro p{font-size:12px!important}
  html body:not(.mf-admin) .mf-expanded-mega .v4-mega-grid.mf-mega-directory{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    padding:0 12px!important;
  }
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-directory>.mf-mega-group,
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-directory>.mf-mega-group:nth-child(n){
    padding:20px 13px 22px!important;
    border-left:0!important;
    border-bottom:1px solid #ebeff4!important;
  }
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-directory>.mf-mega-group:nth-child(odd){border-left:1px solid #ebeff4!important}
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-directory>.mf-mega-group--service,
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-directory>.mf-mega-group--service:nth-child(n){
    grid-column:1/-1!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:18px;
    border-left:0!important;
  }
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-group--service>small,
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-group--service>h3{grid-column:1/-1}
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-bottomline{
    flex-direction:column!important;
    align-items:stretch!important;
    gap:13px!important;
    padding:17px 20px calc(22px + env(safe-area-inset-bottom))!important;
  }
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-quicklinks{
    width:100%!important;
    display:flex!important;
    justify-content:flex-start!important;
    border-top:1px solid #e5ebf2!important;
    padding-top:10px!important;
  }
  html body:not(.mf-admin) .mf-expanded-mega .v4-mega-close{display:none!important}
}
@media (max-width:560px){
  html body:not(.mf-admin) .mf-expanded-mega .v4-mega-grid.mf-mega-directory{grid-template-columns:1fr!important;padding:0 18px!important}
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-directory>.mf-mega-group,
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-directory>.mf-mega-group:nth-child(n){
    grid-column:auto!important;
    display:block!important;
    padding:18px 0 18px!important;
    border:0!important;
    border-bottom:1px solid #ebeff4!important;
  }
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-group>h3{margin-bottom:8px!important;font-size:16px!important}
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-group>a{min-height:36px!important}
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-headline-row{padding:20px 18px 18px!important}
  html body:not(.mf-admin) .mf-expanded-mega .v4-mega-intro h2{font-size:23px!important}
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-bottomline{padding-inline:18px!important}
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-account-strip{gap:9px!important}
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-account-strip__eyebrow{flex-basis:100%}
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-quicklinks :is(a,button){font-size:11px!important;min-height:32px!important;padding:6px 9px!important}
}
@media (prefers-reduced-motion:reduce){
  html body:not(.mf-admin) .mf-expanded-mega :is(.mf-mega-group,.v4-mega-intro,.mf-mega-group>a){transition:none!important;animation:none!important}
}

/* FAQ link in the shared "עוד" menu: editorial styling, no pill treatment. */
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-quicklinks a.mf-mega-quicklinks__faq{
  color:#244f75!important;
  font-weight:800!important;
}
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-quicklinks a.mf-mega-quicklinks__faq:is(:hover,:focus-visible),
html body:not(.mf-admin) .mf-expanded-mega .mf-mega-quicklinks a.mf-mega-quicklinks__faq[aria-current="page"]{
  color:#0d548a!important;
  background:#eaf2f8!important;
}
/* On narrow phones the utility links form an orderly two-column directory.
   This keeps the new link and all existing links tappable without horizontal overflow. */
@media (max-width:560px){
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-quicklinks{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    align-items:stretch!important;
    column-gap:12px!important;
    row-gap:0!important;
    min-width:0!important;
    padding-top:12px!important;
  }
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-quicklinks :is(a,button),
  html body:not(.mf-admin) .mf-expanded-mega .mf-mega-quicklinks .mf-mega-accessibility--bottom{
    display:flex!important;
    min-width:0!important;
    width:100%!important;
    min-height:44px!important;
    padding:9px 6px!important;
    justify-content:flex-start!important;
    text-align:right!important;
    border-radius:0!important;
    border-bottom:1px solid #e9eef3!important;
    white-space:normal!important;
    line-height:1.35!important;
    text-decoration:none!important;
  }
}

/* ===== END mega-directory-classic.css ===== */
