/*
Theme Name: آونگ موزیک
*/

@font-face {
    font-family: 'Estedad';
    src: url('assets/fonts/Estedad-Light.woff2') format('woff2');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Estedad';
    src: url('assets/fonts/Estedad-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
.am-theme-body { margin:0; background:#101010; }
.admin-bar .am-theme .am-fixed-player { top:114px; }


.am-theme {
    --am-bg: #101010;
    --am-bg-soft: #151515;
    --am-panel: #181818;
    --am-panel-2: #202020;
    --am-line: rgba(255,255,255,.085);
    --am-line-strong: rgba(255,255,255,.15);
    --am-text: #f8f8f8;
    --am-muted: #9a9a9f;
    --am-red: #b30024;
    --am-red-2: #770013;
    --am-red-bright: #dc173f;
    --am-radius: 10px;
    --am-player-w: 320px;
    min-height: 100vh;
    background: var(--am-bg);
    color: var(--am-text);
    font-family: Estedad, sans-serif;
    direction: rtl;
}

.am-theme *,
.am-theme *::before,
.am-theme *::after { box-sizing: border-box; }
.am-theme a { color: inherit; text-decoration: none; }
.am-theme button,
.am-theme input,
.am-theme select,
.am-theme textarea { font: inherit; }
.am-theme button { color: inherit; }
.am-theme img { display: block; max-width: 100%; }
.am-theme .screen-reader-text { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.am-theme .am-icon { width: 20px; height: 20px; display:inline-block; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.am-theme .am-no-scrollbar { scrollbar-width:none; }
.am-theme .am-no-scrollbar::-webkit-scrollbar { display:none; }
body {
	overflow-x:hidden;
}
/* header */
.am-theme .am-header {
    position: sticky;
    top: 0;
    z-index: 80;
    min-height: 66px;
    display: grid;
    grid-template-columns: auto 1fr minmax(260px, 340px) auto;
    align-items: center;
    gap: 22px;
    padding: 10px 18px;
    border-bottom: 1px solid var(--am-line);
    background: rgba(16,16,16,.96);
    backdrop-filter: blur(16px);
}
.am-theme .am-brand { display:flex; align-items:center; gap:10px; min-width:max-content; font-size:18px; font-weight:900; }
.am-theme .am-brand img {
    width: 38px;
}
.am-theme .am-brand__mark { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; background:linear-gradient(145deg,var(--am-red-bright),var(--am-red-2)); }
.am-theme .am-brand__mark .am-icon { width:22px; height:22px; }
.am-theme .am-menu { display:flex; align-items:center; justify-content:flex-start; gap:26px; padding:0; margin:0; list-style:none; }
.am-theme .am-menu > li { list-style:none; }
.am-theme .am-menu a { color:#e4e4e4; font-size:13px; font-weight:800; transition:.2s ease; }
.am-theme .am-menu a:hover,
.am-theme .am-menu .current-menu-item > a { color:#fff; }
.am-theme .am-search { position:relative; width:100%; }
.am-theme .am-search__input { width:100%; height:38px; border:0; outline:0; border-radius:12px; padding:0 42px 0 14px; background:#2b2b2b; color:#fff; }
.am-theme .am-search__input::placeholder { color:#aaa; }
.am-theme .am-search__icon { position:absolute; right:13px; top:50%; transform:translateY(-50%); color:#d8d8d8; pointer-events:none; }
.am-theme .am-call { height:42px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:0 16px; border-radius:10px; background:linear-gradient(145deg,#c80028,#8f001c); color:#fff; font-size:12px; font-weight:900; white-space:nowrap; }

/* AJAX shell */
.am-theme .am-page-shell { min-height: calc(100vh - 66px); transition: opacity .16s ease, transform .16s ease; }
.am-theme .am-page-shell.is-loading { opacity:.38; transform:translateY(3px); pointer-events:none; }
.am-theme .am-ajax-progress { position:fixed; top:0; right:0; z-index:200; height:2px; width:0; background:var(--am-red-bright); box-shadow:0 0 18px var(--am-red-bright); opacity:0; transition:width .2s ease, opacity .2s ease; }
.am-theme .am-ajax-progress.is-active { width:72%; opacity:1; }
.am-theme .am-ajax-progress.is-done { width:100%; opacity:0; }

/* desktop layout: content + fixed left player */
.am-theme .am-main-wrap { padding: 0 18px 34px; margin-left: calc(var(--am-player-w) + 28px); }
.am-theme .am-home { max-width: 1500px; margin:0 auto; }

/* top hero: intentionally landscape to match supplied reference */
.am-theme .am-hero-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; padding-top:0; }
.am-theme .am-hero-card { min-width:0; }
.am-theme .am-hero-card__media { position:relative; overflow:hidden; aspect-ratio:16/9; background:#171717; }
.am-theme .am-hero-card__cover { width:100%; height:100%; object-fit:cover; transition:transform .35s ease, filter .35s ease; }
.am-theme .am-hero-card:hover .am-hero-card__cover { transform:scale(1.025); filter:brightness(1.05); }
.am-theme .am-hero-card__play { position:absolute; left:14px; bottom:14px; width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.45); border-radius:50%; background:rgba(10,10,10,.72); cursor:pointer; }
.am-theme .am-hero-card__play .am-icon { fill:#fff; }
.am-theme .am-hero-card__body { padding:11px 0 4px; }
.am-theme .am-hero-card__title { margin:0; font-size:14px; font-weight:900; }
.am-theme .am-hero-card__meta { margin-top:8px; color:var(--am-muted); font-size:12px; }

/* sections */
.am-theme .am-section { margin-top:44px; }
.am-theme .am-section__head { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:18px; }
.am-theme .am-section__title { margin:0; font-size:16px; font-weight:950; }
.am-theme .am-section__more { min-height:30px; display:inline-flex; align-items:center; justify-content:center; padding:0 12px; border:1px solid var(--am-line-strong); border-radius:7px; color:#eee; font-size:11px; }
.am-theme .am-card-rail { display:grid; grid-auto-flow:column; grid-auto-columns:minmax(145px,1fr); gap:18px; overflow-x:auto; padding-bottom:4px; scroll-snap-type:x proximity; }
.am-theme .am-square-card { scroll-snap-align:start; min-width:0; }
.am-theme .am-square-card__media { position:relative; aspect-ratio:1/1; overflow:hidden; border-radius:8px; background:#1b1b1b; }
.am-theme .am-square-card__cover { width:100%; height:100%; object-fit:cover; }
.am-theme .am-square-card__body { padding-top:9px; }
.am-theme .am-square-card__title { display:block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; font-size:12px; font-weight:900; }
.am-theme .am-square-card__artist { display:block; margin-top:5px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; color:var(--am-muted); font-size:11px; }
.am-theme .am-square-card__actions { display:flex; align-items:center; gap:7px; margin-top:9px; direction:ltr; }
.am-theme .am-card-action { width:26px; height:26px; border:0; padding:0; display:grid; place-items:center; background:transparent; color:#ddd; cursor:pointer; }
.am-theme .am-card-action .am-icon { width:17px; height:17px; }
.am-theme .am-card-action.is-liked { color:#ed3358; }
.am-theme .am-card-action.is-liked .am-icon { fill:currentColor; }

/* recommendation strip, different from standard cards */
.am-theme .am-mini-rail { display:grid; grid-auto-flow:column; grid-auto-columns:minmax(260px,1fr); gap:16px; overflow-x:auto; }
.am-theme .am-mini-card { display:grid; grid-template-columns:78px minmax(0,1fr) 46px; align-items:center; gap:12px; min-height:84px; padding:8px; background:#171717; border:1px solid var(--am-line); border-radius:9px; }
.am-theme .am-mini-card__cover { width:68px; aspect-ratio:1/1; object-fit:cover; border-radius:6px; }
.am-theme .am-mini-card__title { display:block; font-size:12px; font-weight:900; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.am-theme .am-mini-card__artist { display:block; margin-top:5px; color:var(--am-muted); font-size:10px; }
.am-theme .am-mini-card__play { width:38px; height:38px; border:0; border-radius:50%; display:grid; place-items:center; background:#fff; color:#121212; cursor:pointer; }
.am-theme .am-mini-card__play .am-icon { fill:currentColor; }

/* artist tags */
.am-theme .am-artists { display:flex; flex-wrap:wrap; gap:9px; }
.am-theme .am-artist { min-height:34px; display:inline-flex; align-items:center; justify-content:center; padding:0 14px; border-radius:999px; background:#1d1d1d; border:1px solid var(--am-line); color:#ddd; font-size:11px; transition:.2s ease; }
.am-theme .am-artist:hover { border-color:rgba(220,23,63,.45); background:#24181b; color:#fff; }

/* generic grids and archive */
.am-theme .am-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:24px 18px; }
.am-theme .am-archive-head { padding:28px 0 2px; }
.am-theme .am-archive-title { margin:0; font-size:24px; }
.am-theme .am-pagination { display:flex; flex-wrap:wrap; gap:7px; justify-content:center; margin:32px 0 10px; direction:ltr; }
.am-theme .am-pagination .page-numbers { min-width:34px; height:34px; display:grid; place-items:center; padding:0 10px; border-radius:7px; border:1px solid var(--am-line); color:#ddd; }
.am-theme .am-pagination .current { background:var(--am-red); border-color:var(--am-red); color:#fff; }
.am-theme .am-empty { padding:50px 20px; text-align:center; color:var(--am-muted); border:1px dashed var(--am-line); border-radius:10px; }

/* single: structure distinct from previous themes */
.am-theme .am-single { max-width:1280px; margin:0 auto; padding-top:26px; }
.am-theme .am-single-stage { display:grid; grid-template-columns:360px minmax(0,1fr); gap:30px; align-items:stretch; padding:20px; background:linear-gradient(125deg,#211014,#141414 52%,#111); border:1px solid var(--am-line); border-radius:12px; }
.am-theme .am-single-stage__cover { width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:9px; }
.am-theme .am-single-stage__body { min-width:0; display:flex; flex-direction:column; justify-content:center; }
.am-theme .am-single-stage__eyebrow { color:#e35a75; font-size:11px; font-weight:900; }
.am-theme .am-single-stage__title { margin:10px 0 0; font-size:clamp(34px,4vw,62px); line-height:1.15; }
.am-theme .am-single-stage__artist { margin-top:12px; font-size:16px; color:#ddd; }
.am-theme .am-single-stage__facts { display:flex; flex-wrap:wrap; gap:14px; margin-top:16px; color:var(--am-muted); font-size:11px; }
.am-theme .am-single-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:25px; }
.am-theme .am-btn { min-height:42px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:0 15px; border:1px solid var(--am-line-strong); border-radius:8px; background:#1c1c1c; color:#fff; cursor:pointer; }
.am-theme .am-btn--primary { border-color:transparent; background:linear-gradient(145deg,var(--am-red-bright),var(--am-red-2)); }
.am-theme .am-btn.is-liked { color:#ff6b87; }
.am-theme .am-btn.is-liked .am-icon { fill:currentColor; }
.am-theme .am-single-content-grid { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:22px; margin-top:22px; }
.am-theme .am-content-box,
.am-theme .am-side-box { background:#151515; border:1px solid var(--am-line); border-radius:10px; padding:22px; }
.am-theme .am-content-box h2,
.am-theme .am-side-box h2 { margin:0 0 18px; font-size:16px; }
.am-theme .am-content-box { color:#d5d5d5; line-height:2.15; font-size:13px; }
.am-theme .am-content-box img,
.am-theme .am-content-box figure { display:none!important; }
.am-theme .am-info { display:grid; gap:10px; }
.am-theme .am-info__row { display:flex; justify-content:space-between; gap:12px; padding-bottom:10px; border-bottom:1px solid var(--am-line); color:var(--am-muted); font-size:11px; }
.am-theme .am-info__row strong { color:#eee; font-weight:800; }
.am-theme .am-share { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.am-theme .am-share a { min-height:34px; display:inline-flex; align-items:center; gap:7px; padding:0 10px; border:1px solid var(--am-line); border-radius:7px; font-size:11px; }

/* fixed left player */
.am-theme .am-fixed-player {
    position: fixed;
    left: 16px;
    top: 82px;
    bottom: 16px;
    z-index: 70;
    width: var(--am-player-w);
    display:flex;
    flex-direction:column;
    overflow:hidden;
    border-radius:10px;
    background:linear-gradient(160deg,#bc062b 0%,#5d0713 52%,#2c0a0d 100%);
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 22px 60px rgba(0,0,0,.3);
    direction:rtl;
}
.am-theme .am-player-scroll { padding:16px; overflow:auto; scrollbar-width:thin; scrollbar-color:#ddd transparent; }
.am-theme .am-player-cover { width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:7px; background:#1b1b1b; }
.am-theme .am-player-track { margin-top:17px; }
.am-theme .am-player-title { display:block; font-size:14px; font-weight:950; }
.am-theme .am-player-artist { display:block; margin-top:7px; color:rgba(255,255,255,.64); font-size:11px; }
.am-theme .am-player-timeline { margin-top:20px; }
.am-theme .am-player-time-row { display:flex; align-items:center; justify-content:space-between; margin-top:4px; color:rgba(255,255,255,.65); font-size:9px; direction:ltr; }
.am-theme .am-player-range { -webkit-appearance:none; appearance:none; width:100%; height:14px; background:transparent; cursor:pointer; }
.am-theme .am-player-range::-webkit-slider-runnable-track { height:4px; border-radius:999px; background:linear-gradient(to right,#fff 0%,#fff var(--range-progress,0%),rgba(255,255,255,.25) var(--range-progress,0%),rgba(255,255,255,.25) 100%); }
.am-theme .am-player-range::-webkit-slider-thumb { -webkit-appearance:none; appearance:none; width:12px; height:12px; margin-top:-4px; border:0; border-radius:50%; background:#fff; }
.am-theme .am-player-range::-moz-range-track { height:4px; border-radius:999px; background:rgba(255,255,255,.25); }
.am-theme .am-player-range::-moz-range-progress { height:4px; border-radius:999px; background:#fff; }
.am-theme .am-player-range::-moz-range-thumb { width:12px; height:12px; border:0; border-radius:50%; background:#fff; }
.am-theme .am-player-transport { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:23px; direction:ltr; }
.am-theme .am-player-control { width:38px; height:38px; border:0; padding:0; border-radius:50%; display:grid; place-items:center; background:transparent; color:#fff; cursor:pointer; }
.am-theme .am-player-control:hover { background:rgba(255,255,255,.1); }
.am-theme .am-player-control--main { width:56px; height:56px; background:#fff; color:#171717; }
.am-theme .am-player-control--main:hover { background:#fff; }
.am-theme .am-player-control--main .am-icon { fill:currentColor; }
.am-theme .am-player-tools { display:flex; align-items:center; gap:8px; margin-top:18px; direction:ltr; }
.am-theme .am-player-volume { flex:1; }
.am-theme .am-player-error { display:none; margin-top:8px; color:#ffd2da; font-size:10px; text-align:center; }
.am-theme .am-player-secondary { margin-top:20px; padding-top:18px; border-top:1px solid rgba(255,255,255,.18); }
.am-theme .am-player-secondary__label { margin:0 0 12px; color:#fff; font-size:11px; font-weight:900; }
.am-theme .am-player-secondary__list { display:grid; gap:10px; }
.am-theme .am-player-secondary__item { display:grid; grid-template-columns:48px minmax(0,1fr); gap:9px; align-items:center; }
.am-theme .am-player-secondary__cover { width:48px; aspect-ratio:1/1; object-fit:cover; border-radius:5px; }
.am-theme .am-player-secondary__title { display:block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; font-size:10px; font-weight:800; }
.am-theme .am-player-secondary__artist { display:block; margin-top:4px; color:rgba(255,255,255,.58); font-size:9px; }

@media (max-width: 1240px) {
    .am-theme { --am-player-w: 286px; }
    .am-theme .am-header { grid-template-columns:auto 1fr minmax(220px,300px) auto; gap:14px; }
    .am-theme .am-menu { gap:18px; }
    .am-theme .am-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}

@media (max-width: 980px) {
    .am-theme { padding-bottom:110px; }
    .am-theme .am-header { grid-template-columns:auto minmax(0,1fr) auto; padding:10px 12px; }
    .am-theme .am-menu { display:none; }
    .am-theme .am-call span { display:none; }
    .am-theme .am-call { width:42px; padding:0; }
    .am-theme .am-main-wrap { margin-left:0; padding:0 14px 30px; }
    .am-theme .am-hero-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .am-theme .am-hero-grid .am-hero-card:last-child { display:none; }
    .am-theme .am-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .am-theme .am-single-stage { grid-template-columns:260px minmax(0,1fr); }
    .am-theme .am-single-content-grid { grid-template-columns:1fr; }

    .am-theme .am-fixed-player { top:auto; right:0; left:0; bottom:0; width:100%; height:96px; border-radius:0; flex-direction:row; background:rgba(42,7,13,.98); backdrop-filter:blur(16px); }
    .am-theme .am-player-scroll { width:100%; display:grid; grid-template-columns:64px minmax(160px,1fr) minmax(320px,2fr) 190px; gap:12px; align-items:center; padding:9px 14px; overflow:hidden; }
    .am-theme .am-player-cover { width:64px; }
    .am-theme .am-player-track { margin-top:0; }
    .am-theme .am-player-timeline { margin-top:0; }
    .am-theme .am-player-transport { margin-top:0; }
    .am-theme .am-player-tools { margin-top:0; }
    .am-theme .am-player-secondary { display:none; }
}

@media (max-width: 720px) {
    .am-theme { padding-bottom:128px; }
    .am-theme .am-brand span:last-child { display:none; }
    .am-theme .am-search__input { height:36px; }
    .am-theme .am-hero-grid { grid-template-columns:1fr; }
    .am-theme .am-hero-grid .am-hero-card:nth-child(n+2) { display:none; }
    .am-theme .am-card-rail { grid-auto-columns:42vw; gap:12px; }
    .am-theme .am-mini-rail { grid-auto-columns:82vw; }
    .am-theme .am-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 12px; }
    .am-theme .am-single-stage { grid-template-columns:1fr; }
    .am-theme .am-single-stage__cover { max-width:320px; margin:0 auto; }
    .am-theme .am-single-stage__title { font-size:38px; }
    .am-theme .am-player-scroll { grid-template-columns:50px minmax(0,1fr) auto; grid-template-areas:"cover track controls" "timeline timeline timeline"; gap:6px 10px; }
    .am-theme .am-player-cover { grid-area:cover; width:50px; }
    .am-theme .am-player-track { grid-area:track; }
    .am-theme .am-player-transport { grid-area:controls; gap:2px; }
    .am-theme .am-player-transport #am-back,
    .am-theme .am-player-transport #am-forward { display:none; }
    .am-theme .am-player-control { width:32px; height:32px; }
    .am-theme .am-player-control--main { width:44px; height:44px; }
    .am-theme .am-player-timeline { grid-area:timeline; }
    .am-theme .am-player-tools { display:none; }
}

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

/* =========================================================
   AVANG MUSIC — requested layout revision
   ========================================================= */

.am-theme {
    --am-player-w: 340px;
}

/* Desktop: the player is a full-height left column. Header/content stop at it. */
.am-theme .am-header {
    width: calc(100% - var(--am-player-w));
    margin-left: var(--am-player-w);
    grid-template-columns: auto minmax(0, 1fr) minmax(260px, 360px) auto;
    padding-inline: 22px;
}

.am-theme .am-nav {
    min-width: 0;
}

.am-theme .am-main-wrap {
    width: calc(100% - var(--am-player-w));
    max-width: none;
    margin-left: var(--am-player-w);
    margin-right: 0;
    padding: 0 22px 42px;
}

.am-theme .am-home {
    max-width: none;
    margin-right: 0;
}

.am-theme .am-fixed-player {
    top: 0;
    left: 0;
    bottom: 0;
    width: var(--am-player-w);
    border-radius: 0;
    border-top: 0;
    border-bottom: 0;
    border-left: 0;
    z-index: 95;
}

.admin-bar .am-theme .am-fixed-player {
    top: 32px;
}

.am-theme .am-player-scroll {
    height: 100%;
    padding: 18px;
    overflow-y: auto;
    overflow-x: hidden;
}

.am-theme .am-player-cover {
    border-radius: 9px;
}

.am-theme .am-player-title {
    line-height: 1.8;
}

.am-theme .am-player-range {
    position: relative;
    z-index: 2;
    direction: ltr;
    touch-action: none;
    pointer-events: auto;
}

.am-theme .am-player-range::-webkit-slider-runnable-track {
    height: 5px;
}

.am-theme .am-player-range::-webkit-slider-thumb {
    width: 14px;
    height: 14px;
    margin-top: -4.5px;
}

.am-theme .am-player-range::-moz-range-track,
.am-theme .am-player-range::-moz-range-progress {
    height: 5px;
}

.am-theme .am-player-range::-moz-range-thumb {
    width: 14px;
    height: 14px;
}

.am-theme .am-player-secondary__title {
    white-space: normal;
    line-height: 1.65;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

/* Featured: 12 posts total, exactly 6 visible on desktop. */
.am-theme .am-featured-section {
    margin-top: 28px;
}

.am-theme .am-featured-shell {
    position: relative;
    padding-inline: 2px;
	overflow:hidden;
}

.am-theme .am-featured-carousel {
    --am-featured-gap: 14px;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - (5 * var(--am-featured-gap))) / 6);
    gap: var(--am-featured-gap);
    overflow-x: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
}

.am-theme .am-featured-carousel .am-square-card {
    scroll-snap-align: start;
    min-width: 0;
}

.am-theme .am-carousel-button {
    position: absolute;
    top: 35%;
    z-index: 8;
    width: 40px;
    height: 40px;
    border: 1px solid var(--am-line-strong);
    border-radius: 50%;
    background: rgba(24,24,24,.94);
    color: #fff;
    display: grid;
    place-items: center;
    cursor: pointer;
    box-shadow: 0 8px 24px rgba(0,0,0,.28);
}

.am-theme .am-carousel-button--prev {
    right: -12px;
}

.am-theme .am-carousel-button--next {
    left: -12px;
}

.am-theme .am-square-card__title {
    white-space: normal;
    text-overflow: unset;
    line-height: 1.75;
    min-height: 42px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

.am-theme .am-square-card__artist {
    display: none;
}

/* Latest posts: no horizontal scrolling, three posts per row. */
.am-theme .am-latest-grid,
.am-theme .am-related-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 24px 18px;
    overflow: visible;
}

.am-theme .am-latest-card {
    min-width: 0;
    border: 1px solid var(--am-line);
    border-radius: 12px;
    background: #151515;
    overflow: hidden;
    transition: transform .2s ease, border-color .2s ease;
}

.am-theme .am-latest-card:hover {
    transform: translateY(-2px);
    border-color: rgba(255,255,255,.16);
}

.am-theme .am-latest-card__media {
    display: block;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #1a1a1a;
}

.am-theme .am-latest-card__cover {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

.am-theme .am-latest-card:hover .am-latest-card__cover {
    transform: scale(1.025);
}

.am-theme .am-latest-card__body {
    padding: 15px;
}

.am-theme .am-latest-card__title {
    margin: 0;
    font-size: 14px;
    font-weight: 900;
    line-height: 1.9;
    min-height: 54px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

.am-theme .am-latest-card__meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 9px;
    color: var(--am-muted);
    font-size: 10px;
}

.am-theme .am-latest-card__meta span + span::before {
    content: "•";
    margin-left: 8px;
    color: #5e5e63;
}

.am-theme .am-latest-card__actions {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 13px;
    direction: ltr;
}

/* Single page no artist custom field. */
.am-theme .am-single-stage__artist {
    display: none;
}

/* Make sure old horizontal song rails are not used as scrolling lists. */
.am-theme .am-related-grid .am-latest-card {
    width: auto;
}

/* Tablet/mobile: desktop sidebar player becomes a compact fixed bottom player. */
@media (max-width: 1024px) {
    .am-theme {
        --am-player-w: 0px;
        padding-bottom: 96px;
    }

    .am-theme .am-header {
        width: 100%;
        margin-left: 0;
        grid-template-columns: auto minmax(0, 1fr) auto;
        padding: 10px 14px;
    }

    .am-theme .am-nav {
        display: none;
    }

    .am-theme .am-main-wrap {
        width: 100%;
        margin-left: 0;
        padding: 0 14px 30px;
		overflow-x:hidden;
    }

    .am-theme .am-fixed-player,
    .admin-bar .am-theme .am-fixed-player {
        top: auto;
        right: 0;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 88px;
        border: 0;
        border-top: 1px solid rgba(255,255,255,.10);
        border-radius: 0;
        background: rgba(23,11,14,.97);
        backdrop-filter: blur(18px);
        box-shadow: 0 -15px 40px rgba(0,0,0,.35);
    }

    .am-theme .am-player-scroll {
        width: 100%;
        height: 100%;
        display: grid;
        grid-template-columns: 54px minmax(120px, 1fr) auto minmax(180px, .8fr);
        grid-template-areas: "cover track controls timeline";
        align-items: center;
        gap: 10px;
        padding: 8px 14px;
        overflow: hidden;
    }

    .am-theme .am-player-cover {
        grid-area: cover;
        width: 54px;
        height: 54px;
    }

    .am-theme .am-player-track {
        grid-area: track;
        margin-top: 0;
        min-width: 0;
    }

    .am-theme .am-player-title {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .am-theme .am-player-artist {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .am-theme .am-player-transport {
        grid-area: controls;
        margin-top: 0;
        justify-content: center;
        gap: 4px;
    }

    .am-theme .am-player-timeline {
        grid-area: timeline;
        margin-top: 0;
        min-width: 0;
    }

    .am-theme .am-player-desktop-control,
    .am-theme .am-player-desktop-only,
    .am-theme .am-player-error {
        display: none !important;
    }

    .am-theme .am-player-control {
        width: 34px;
        height: 34px;
    }

    .am-theme .am-player-control--main {
        width: 46px;
        height: 46px;
    }

    .am-theme .am-featured-carousel {
        grid-auto-columns: calc((100% - (2 * 12px)) / 3);
        gap: 12px;
    }

    .am-theme .am-latest-grid,
    .am-theme .am-related-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .am-theme {
        padding-bottom: 84px;
    }

    .am-theme .am-call span,
    .am-theme .am-brand > span:last-child {
        display: none;
    }

    .am-theme .am-call {
        width: 40px;
        padding: 0;
    }

    .am-theme .am-hero-grid {
        grid-template-columns: 1fr;
    }

    .am-theme .am-hero-grid .am-hero-card:nth-child(n+2) {
        display: none;
    }

    .am-theme .am-featured-carousel {
        grid-auto-columns: calc((100% - 10px) / 2);
        gap: 10px;
    }

    .am-theme .am-carousel-button {
        width: 34px;
        height: 34px;
    }

    .am-theme .am-latest-grid,
    .am-theme .am-related-grid {
        grid-template-columns: 1fr;
    }

    .am-theme .am-player-scroll {
        grid-template-columns: 44px minmax(0, 1fr) auto;
        grid-template-areas:
            "cover track controls"
            "timeline timeline timeline";
        gap: 4px 8px;
        padding: 6px 10px;
    }

    .am-theme .am-fixed-player,
    .admin-bar .am-theme .am-fixed-player {
        height: 82px;
    }

    .am-theme .am-player-cover {
        width: 44px;
        height: 44px;
    }

    .am-theme .am-player-timeline {
        margin-top: -2px;
    }

    .am-theme .am-player-time-row {
        display: none;
    }

    .am-theme .am-player-control {
        width: 30px;
        height: 30px;
    }

    .am-theme .am-player-control--main {
        width: 40px;
        height: 40px;
    }
}

@media (max-width: 420px) {
    .am-theme .am-featured-carousel {
        grid-auto-columns: 72vw;
    }
}

@media (max-width: 782px) {

}


/* Final layout adjustments */
.am-theme .am-hero-grid {
    display: none !important;
}

.am-theme .am-featured-section {
    margin-top: 22px;
}

.am-theme .am-featured-carousel {
    --am-featured-gap: 12px;
    grid-auto-columns: calc((100% - (5 * var(--am-featured-gap))) / 6);
    gap: var(--am-featured-gap);
    align-items: start;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 2px 0 8px;
    scroll-snap-type: x mandatory;
}

.am-theme .am-featured-carousel .am-square-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: auto;
    overflow: visible;
    scroll-snap-align: start;
}

.am-theme .am-featured-carousel .am-square-card__media {
    flex: 0 0 auto;
}

.am-theme .am-featured-carousel .am-square-card__body {
    flex: 0 0 auto;
    padding: 10px 2px 0;
    overflow: visible;
}

.am-theme .am-featured-carousel .am-square-card__title {
    min-height: 40px;
    max-height: 40px;
    line-height: 20px;
    white-space: normal;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

.am-theme .am-featured-carousel .am-square-card__actions {
    margin-top: 7px;
    min-height: 28px;
}

.am-theme .am-carousel-button {
    top: 42%;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #191919;
}

.am-theme .am-carousel-button .am-icon {
    width: 19px;
    height: 19px;
    stroke-width: 2;
}

/* RTL carousel: previous is on the right and points right; next is on the left and points left. */
.am-theme .am-carousel-button--prev {
    right: -11px;
    left: auto;
}

.am-theme .am-carousel-button--next {
    left: -11px;
    right: auto;
}

.am-theme .am-latest-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 22px 14px;
}

.am-theme .am-section__more {
    display: none !important;
}

.am-theme .am-single-stage__title {
    font-size: clamp(26px, 2.7vw, 44px);
    line-height: 1.35;
}

@media (max-width: 1200px) and (min-width: 721px) {
    .am-theme .am-latest-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 1024px) {
    .am-theme .am-featured-carousel {
        grid-auto-columns: calc((100% - (2 * 12px)) / 3);
        gap: 12px;
    }
}

@media (max-width: 720px) {
    .am-theme .am-header {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        width: 100%;
        margin: 0;
        border-radius: 0;
        z-index: 120;
    }

    .am-theme .am-page-shell {
        padding-top: 58px;
    }

    .am-theme .am-featured-carousel {
        grid-auto-columns: calc((100% - 10px) / 2);
        gap: 10px;
    }

    .am-theme .am-latest-grid,
    .am-theme .am-related-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px 10px;
    }

    .am-theme .am-single-stage__title {
        font-size: 28px;
        line-height: 1.45;
    }
}
