/**
 * Kurd Music Design System
 * Additive compatibility layer: preserves legacy selectors and behavior.
 * Version: 2.0.0
 */

/* 1. Foundations / design tokens */
:root {
  color-scheme: light;
  --km-primary: #6d28d9;
  --km-primary-hover: #5b21b6;
  --km-primary-active: #4c1d95;
  --km-primary-soft: #f3e8ff;
  --km-secondary: #0f172a;
  --km-accent: #f59e0b;
  --km-success: #16803c;
  --km-warning: #b45309;
  --km-danger: #c62828;
  --km-info: #0369a1;
  --km-background: #f7f7fb;
  --km-surface: #ffffff;
  --km-surface-raised: #ffffff;
  --km-card: #ffffff;
  --km-border: #e5e7eb;
  --km-divider: #eef0f4;
  --km-text-primary: #17151f;
  --km-text-secondary: #565363;
  --km-text-muted: #777485;
  --km-link: #6025c7;
  --km-overlay: rgba(15, 23, 42, .62);
  --km-focus: rgba(109, 40, 217, .28);

  --km-space-1: 4px;
  --km-space-2: 8px;
  --km-space-3: 12px;
  --km-space-4: 16px;
  --km-space-5: 20px;
  --km-space-6: 24px;
  --km-space-8: 32px;
  --km-space-10: 40px;
  --km-space-12: 48px;
  --km-space-16: 64px;
  --km-space-20: 80px;
  --km-space-24: 96px;

  --km-radius-sm: 8px;
  --km-radius-md: 12px;
  --km-radius-lg: 16px;
  --km-radius-xl: 24px;
  --km-radius-round: 999px;

  --km-shadow-xs: 0 1px 2px rgba(15, 23, 42, .05);
  --km-shadow-sm: 0 3px 10px rgba(15, 23, 42, .07);
  --km-shadow-md: 0 10px 28px rgba(15, 23, 42, .09);
  --km-shadow-lg: 0 18px 44px rgba(15, 23, 42, .12);
  --km-shadow-xl: 0 28px 70px rgba(15, 23, 42, .16);

  --km-duration-fast: 140ms;
  --km-duration-normal: 220ms;
  --km-duration-slow: 360ms;
  --km-ease: cubic-bezier(.2, .8, .2, 1);
  --km-ease-emphasized: cubic-bezier(.16, 1, .3, 1);

  --km-font: IRANSans, Tahoma, Arial, sans-serif;
  --km-display: clamp(2rem, 4vw, 3.75rem);
  --km-h1: clamp(1.55rem, 3vw, 2.35rem);
  --km-h2: clamp(1.3rem, 2.4vw, 1.85rem);
  --km-h3: clamp(1.15rem, 2vw, 1.5rem);
  --km-h4: clamp(1.05rem, 1.6vw, 1.25rem);
  --km-h5: 1rem;
  --km-h6: .925rem;
  --km-body-lg: 1.0625rem;
  --km-body-md: .9375rem;
  --km-body-sm: .8125rem;
  --km-caption: .75rem;
  --km-line: 1.85;
  --km-container: 1240px;
}

html.dark-mode,
body.dark-mode {
  color-scheme: dark;
  --km-primary: #a78bfa;
  --km-primary-hover: #c4b5fd;
  --km-primary-active: #8b5cf6;
  --km-primary-soft: rgba(139, 92, 246, .14);
  --km-secondary: #f8fafc;
  --km-accent: #fbbf24;
  --km-success: #4ade80;
  --km-warning: #fbbf24;
  --km-danger: #fb7185;
  --km-info: #38bdf8;
  --km-background: #0d0c12;
  --km-surface: #15131c;
  --km-surface-raised: #1c1925;
  --km-card: #181620;
  --km-border: #2d2938;
  --km-divider: #26222f;
  --km-text-primary: #f7f4fb;
  --km-text-secondary: #c5bfce;
  --km-text-muted: #918a9c;
  --km-link: #c4b5fd;
  --km-overlay: rgba(0, 0, 0, .72);
  --km-focus: rgba(167, 139, 250, .34);
  --km-shadow-xs: 0 1px 2px rgba(0, 0, 0, .28);
  --km-shadow-sm: 0 4px 14px rgba(0, 0, 0, .25);
  --km-shadow-md: 0 12px 32px rgba(0, 0, 0, .3);
  --km-shadow-lg: 0 20px 48px rgba(0, 0, 0, .36);
  --km-shadow-xl: 0 30px 80px rgba(0, 0, 0, .44);
}

/* 2. Base and typography */
html { scroll-behavior: smooth; }
body {
  background: var(--km-background);
  color: var(--km-text-primary);
  font-family: var(--km-font);
  font-size: var(--km-body-md);
  line-height: var(--km-line);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
*, *::before, *::after { box-sizing: border-box; }
img, svg, video { max-width: 100%; }
a { color: var(--km-link); text-underline-offset: 3px; }
a, button, input, textarea, select { transition: color var(--km-duration-fast) var(--km-ease), background-color var(--km-duration-fast) var(--km-ease), border-color var(--km-duration-fast) var(--km-ease), box-shadow var(--km-duration-fast) var(--km-ease), transform var(--km-duration-fast) var(--km-ease); }
h1, h2, h3, h4, h5, h6 { color: var(--km-text-primary); line-height: 1.45; text-wrap: balance; }
h1 { font-size: var(--km-h1); } h2 { font-size: var(--km-h2); } h3 { font-size: var(--km-h3); }
h4 { font-size: var(--km-h4); } h5 { font-size: var(--km-h5); } h6 { font-size: var(--km-h6); }
p { color: var(--km-text-secondary); }
::selection { background: var(--km-primary); color: #fff; }
:where(a, button, input, textarea, select, summary, [tabindex]):focus-visible {
  outline: 3px solid var(--km-focus);
  outline-offset: 3px;
}
.screen-reader-text:focus { z-index: 999999; }

/* 3. Layout primitives */
.tarlanweb_center, .center_box { width: min(calc(100% - 32px), var(--km-container)); margin-inline: auto; }
.flex { gap: var(--km-space-4); }
#main, main { min-width: 0; }

/* 4. Shared surfaces */
:where(.single_box, .post, .archive_card, .playlist_card, .km-singer-card, .km-singer-featured-card,
.km-ultra-download-box, .km-same-singer-box, .km-seo-text-box, .km-term-description,
.widgets, .widget, .comments-area, .comment-respond, .not_found_box, .km-singer-faq,
.km-single-info-text-box, .km-download-core-play-panel) {
  background: var(--km-card);
  border-color: var(--km-border);
  border-radius: var(--km-radius-lg);
  box-shadow: var(--km-shadow-xs);
}
:where(.archive_card, .playlist_card, .km-singer-card, .km-singer-featured-card) {
  overflow: hidden;
  transition: transform var(--km-duration-normal) var(--km-ease-emphasized), box-shadow var(--km-duration-normal) var(--km-ease), border-color var(--km-duration-normal) var(--km-ease);
}
@media (hover:hover) {
  :where(.archive_card, .playlist_card, .km-singer-card, .km-singer-featured-card):hover {
    transform: translateY(-4px);
    box-shadow: var(--km-shadow-md);
    border-color: color-mix(in srgb, var(--km-primary) 32%, var(--km-border));
  }
}

/* 5. Header and navigation */
#header {
  background: color-mix(in srgb, var(--km-surface) 92%, transparent);
  border-bottom: 1px solid var(--km-divider);
  box-shadow: var(--km-shadow-xs);
  backdrop-filter: blur(16px) saturate(140%);
}
.top_header { min-height: 72px; gap: var(--km-space-5); }
.logo img, .logo_mobiles img { border-radius: var(--km-radius-md); }
#rkianoosh > li > a { border-radius: var(--km-radius-md); color: var(--km-text-secondary); }
#rkianoosh > li > a:hover, #rkianoosh > li.active > a, #rkianoosh > li.current-menu-item > a { background: var(--km-primary-soft); color: var(--km-primary); }
#rkianoosh ul { background: var(--km-surface-raised); border: 1px solid var(--km-border); border-radius: var(--km-radius-lg); box-shadow: var(--km-shadow-lg); padding: var(--km-space-2); }
#rkianoosh ul a { border-radius: var(--km-radius-sm); color: var(--km-text-secondary); }
#rkianoosh ul a:hover { background: var(--km-primary-soft); color: var(--km-primary); }
.km-search-pro-trigger, .km-theme-switch-pro, .km-theme-toggle-mobile, .search_mobile_box {
  background: var(--km-surface-raised);
  border-color: var(--km-border);
  color: var(--km-text-primary);
}
.km-search-pro-trigger:hover { border-color: var(--km-primary); box-shadow: 0 0 0 4px var(--km-focus); }
#mobiles_header { background: var(--km-surface); border-bottom: 1px solid var(--km-divider); box-shadow: var(--km-shadow-sm); }

/* 6. Buttons and controls */
:where(button, .button, input[type="submit"], .km-secondary-btn, .archive_sort_btn, .playlist_view_all,
.km-same-singer-more, .km-share-btn, .km-core-play-btn, .km-ultra-download-btn) {
  min-height: 44px;
  border-radius: var(--km-radius-md);
  font-family: inherit;
  font-weight: 700;
  cursor: pointer;
}
:where(button, .button, input[type="submit"]):disabled, .disabled, [aria-disabled="true"] { opacity: .5; cursor: not-allowed; pointer-events: none; }
.archive_sort_btn { background: var(--km-surface); border: 1px solid var(--km-border); color: var(--km-text-secondary); }
.archive_sort_btn:hover, .archive_sort_btn.active { background: var(--km-primary); border-color: var(--km-primary); color: #fff; }
.km-secondary-btn, .playlist_view_all, .km-same-singer-more { background: var(--km-primary-soft); color: var(--km-primary); border: 1px solid transparent; }
.km-secondary-btn:hover, .playlist_view_all:hover, .km-same-singer-more:hover { background: var(--km-primary); color: #fff; transform: translateY(-1px); }

/* 7. Cards and grids */
.archive_grid, .playlist_grid, .km-singer-grid, .km-singer-featured-grid { gap: var(--km-space-5); }
.archive_card_img img, .playlist_card_img img, .km-singer-avatar img { aspect-ratio: 1; object-fit: cover; }
.archive_card_body, .playlist_card_info { padding: var(--km-space-4); }
.archive_card_title, .playlist_card_title { color: var(--km-text-primary); line-height: 1.65; }
.archive_card_meta, .playlist_card_meta { color: var(--km-text-muted); }
.archive_card_play, .playlist_card_play { background: var(--km-primary); color: #fff; box-shadow: var(--km-shadow-sm); }
.archive_card_play:hover, .playlist_card_play:hover { background: var(--km-primary-hover); transform: scale(1.05); }

/* 8. Single song / download experience */
.single_box { padding: clamp(16px, 2.6vw, 32px); }
.single_post_txt { color: var(--km-text-secondary); font-size: clamp(.9375rem, 1.2vw, 1.025rem); line-height: 2; }
.single_post_txt :where(h2, h3) { scroll-margin-top: 100px; margin-block: var(--km-space-8) var(--km-space-4); }
.km-single-info-stack { gap: var(--km-space-3); }
.km-single-info-text-box { border: 1px solid var(--km-border); padding: var(--km-space-4); }
.km-info-dot { background: var(--km-primary-soft); color: var(--km-primary); border-radius: var(--km-radius-round); }
.km-ultra-download-box { position: relative; border: 1px solid var(--km-border); padding: clamp(16px, 2.5vw, 28px); overflow: clip; }
.km-ultra-download-glow { opacity: .16; pointer-events: none; }
.km-ultra-download-head { border-bottom-color: var(--km-divider); gap: var(--km-space-4); }
.km-ultra-download-head h2 { margin: 0; }
.km-ultra-download-head p { color: var(--km-text-muted); }
.km-ultra-download-icon { background: var(--km-primary-soft); color: var(--km-primary); border-radius: var(--km-radius-md); }
.km-download-core-play-panel { border: 1px solid var(--km-border); padding: var(--km-space-4); }
.km-download-core-play-btn { background: var(--km-primary); color: #fff; border: 0; }
.km-download-core-play-btn:hover { background: var(--km-primary-hover); transform: translateY(-1px); box-shadow: var(--km-shadow-sm); }
.km-ultra-download-links { gap: var(--km-space-3); }
.km-ultra-download-btn { background: var(--km-surface-raised); border: 1px solid var(--km-border); color: var(--km-text-primary); }
.km-ultra-download-btn:hover { background: var(--km-primary-soft); border-color: var(--km-primary); color: var(--km-primary); transform: translateY(-2px); box-shadow: var(--km-shadow-sm); }
.km-ultra-download-btn small { color: var(--km-text-muted); }
.km-tg-cta { border-radius: var(--km-radius-lg); }
.km-download-mini-help { background: color-mix(in srgb, var(--km-info) 8%, var(--km-surface)); border-color: color-mix(in srgb, var(--km-info) 24%, var(--km-border)); color: var(--km-text-secondary); }

/* 9. Forms, search and modal */
:where(input[type="text"], input[type="search"], input[type="email"], input[type="url"], input[type="password"], textarea, select, .searchfield, .km-singer-search) {
  width: 100%;
  min-height: 46px;
  background: var(--km-surface);
  color: var(--km-text-primary);
  border: 1px solid var(--km-border);
  border-radius: var(--km-radius-md);
  padding-inline: var(--km-space-4);
  font: inherit;
}
textarea { min-height: 140px; padding-block: var(--km-space-3); resize: vertical; }
:where(input, textarea, select):focus { border-color: var(--km-primary); box-shadow: 0 0 0 4px var(--km-focus); outline: 0; }
::placeholder { color: var(--km-text-muted); opacity: 1; }
.km-search-modal { background: var(--km-overlay); backdrop-filter: blur(10px); }
.km-search-modal__panel { background: var(--km-surface-raised); border: 1px solid var(--km-border); border-radius: var(--km-radius-xl); box-shadow: var(--km-shadow-xl); }

/* 10. Breadcrumb, pagination, tags and feedback */
.breadcrumb, .breadcrumbs, .yoast-breadcrumb { color: var(--km-text-muted); }
.pagination { gap: var(--km-space-2); }
.pagination li, .pagination a { border-radius: var(--km-radius-md); }
.pagination a { background: var(--km-surface); border: 1px solid var(--km-border); color: var(--km-text-secondary); }
.pagination a:hover, .pagination .current { background: var(--km-primary); border-color: var(--km-primary); color: #fff; }
.tags_box a, .tagcloud a { background: var(--km-primary-soft); color: var(--km-primary); border: 1px solid transparent; border-radius: var(--km-radius-round); }
.tags_box a:hover, .tagcloud a:hover { background: var(--km-primary); color: #fff; }

/* 11. Sidebar, footer and empty/error states */
.widgets_title { color: var(--km-text-primary); border-bottom-color: var(--km-divider); }
#footer, footer { background: var(--km-secondary); }
#footer, #footer a, footer, footer a { color: #e8e5ee; }
#footer a:hover, footer a:hover { color: #fff; }
.not_found_box { border: 1px solid var(--km-border); padding: clamp(24px, 5vw, 64px); }
.not_found_number { color: var(--km-primary); font-size: clamp(4rem, 15vw, 9rem); line-height: 1; }

/* 12. Motion */
@keyframes km-fade-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes km-slide-up { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@keyframes km-scale-in { from { opacity: 0; transform: scale(.96); } to { opacity: 1; transform: scale(1); } }
@keyframes km-skeleton { 0% { background-position: 100% 0; } 100% { background-position: -100% 0; } }
.km-animate-fade { animation: km-fade-in var(--km-duration-normal) var(--km-ease) both; }
.km-animate-slide { animation: km-slide-up var(--km-duration-slow) var(--km-ease-emphasized) both; }
.loading, .skeleton, .km-skeleton { background: linear-gradient(90deg, var(--km-divider) 25%, var(--km-surface-raised) 50%, var(--km-divider) 75%); background-size: 200% 100%; animation: km-skeleton 1.4s linear infinite; }

/* 13. Responsive behavior */
@media (max-width: 1024px) {
  :root { --km-container: 960px; }
  .archive_grid, .playlist_grid { gap: var(--km-space-4); }
}
@media (max-width: 782px) {
  .tarlanweb_center, .center_box { width: min(calc(100% - 24px), var(--km-container)); }
  .single_box { border-radius: var(--km-radius-md); }
  .km-ultra-download-head { align-items: flex-start; }
  .km-ultra-download-links { grid-template-columns: 1fr; }
  :where(button, .button, input[type="submit"], .km-secondary-btn, .archive_sort_btn, .km-ultra-download-btn) { min-height: 46px; }
}
@media (max-width: 480px) {
  :root { --km-body-md: .9rem; }
  .tarlanweb_center, .center_box { width: min(calc(100% - 20px), var(--km-container)); }
  .archive_grid, .playlist_grid, .km-singer-grid { gap: var(--km-space-3); }
  .archive_card_body, .playlist_card_info { padding: var(--km-space-3); }
  .km-ultra-download-box { padding: var(--km-space-4); }
  .km-ultra-download-head { gap: var(--km-space-3); }
  .km-share-btn span { display: none; }
}

/* 14. Reduced motion and forced colors */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
@media (forced-colors: active) {
  :where(button, a, input, textarea, select) { forced-color-adjust: auto; }
}

/* ======================================================================
 * Kurd Music UI Rebuild — v2
 * Page-level visual system layered over the legacy theme without changing
 * functional selectors, WordPress hooks, URLs or structured data.
 * ====================================================================== */

:root {
  --km-content-wide: 1320px;
  --km-content-reading: 820px;
  --km-header-height: 76px;
  --km-gradient-brand: linear-gradient(135deg, #7c3aed 0%, #5b21b6 48%, #312e81 100%);
  --km-gradient-soft: linear-gradient(145deg, color-mix(in srgb, var(--km-primary) 12%, var(--km-surface)) 0%, var(--km-surface) 72%);
}

body {
  min-height: 100vh;
  background-image:
    radial-gradient(circle at 85% -10%, color-mix(in srgb, var(--km-primary) 10%, transparent), transparent 28rem),
    radial-gradient(circle at 0 35%, color-mix(in srgb, var(--km-accent) 5%, transparent), transparent 24rem);
  background-attachment: fixed;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  opacity: .34;
  background-image: linear-gradient(color-mix(in srgb, var(--km-border) 28%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--km-border) 22%, transparent) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(to bottom, #000, transparent 70%);
}

.tarlanweb_center { width: min(calc(100% - 40px), var(--km-content-wide)); }
.center_box { width: 100%; padding-block: clamp(24px, 4vw, 56px); }
.center_box > .flex { width: min(calc(100% - 40px), var(--km-content-wide)); margin-inline: auto; align-items: flex-start; gap: clamp(20px, 3vw, 36px); }
#sidebar_center { min-width: 0; flex: 1 1 auto; }
#sidebar_right, #sidebar-left, .sidebar_right, .sidebar-left { flex: 0 0 290px; }

/* Header */
#header { position: sticky; top: 0; z-index: 1000; min-height: var(--km-header-height); }
.top_header { min-height: var(--km-header-height); justify-content: space-between; }
.logo figure a { display: grid; place-items: center; }
.logo img { width: 54px; height: 54px; object-fit: contain; box-shadow: 0 8px 24px color-mix(in srgb, var(--km-primary) 18%, transparent); }
#rkianoosh { display: flex; align-items: center; gap: 4px; }
#rkianoosh > li > a { min-height: 44px; display: flex; align-items: center; padding-inline: 14px; font-size: .9rem; font-weight: 700; }
.km-header-tools-pro { display: flex; align-items: center; gap: 10px; }
.km-search-pro-trigger { min-width: 210px; padding-inline: 14px; justify-content: flex-start; gap: 10px; }
.km-search-pro-text { color: var(--km-text-muted); font-weight: 500; }
.km-theme-switch-pro { border: 1px solid var(--km-border); }

/* Home hero */
.km-home-hero-wrap { position: relative; overflow: hidden; margin: clamp(20px, 3vw, 40px) auto; width: min(calc(100% - 40px), var(--km-content-wide)); border: 1px solid color-mix(in srgb, var(--km-primary) 24%, var(--km-border)); border-radius: clamp(22px, 3vw, 34px); background: var(--km-gradient-brand); color: #fff; box-shadow: 0 28px 80px rgba(49, 46, 129, .22); isolation: isolate; }
.km-home-hero-wrap::before, .km-home-hero-wrap::after { content: ""; position: absolute; border-radius: 50%; filter: blur(1px); z-index: -1; }
.km-home-hero-wrap::before { width: 420px; height: 420px; left: -140px; top: -210px; background: rgba(255,255,255,.13); }
.km-home-hero-wrap::after { width: 300px; height: 300px; right: -100px; bottom: -170px; background: rgba(245,158,11,.22); }
.km-home-top { padding: clamp(28px, 5vw, 68px); display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr); align-items: center; gap: clamp(28px, 5vw, 72px); }
.km-hero-content { max-width: 720px; }
.km-hero-badge { display: inline-flex; align-items: center; gap: 8px; min-height: 34px; padding: 6px 12px; border-radius: var(--km-radius-round); background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.19); color: #fff; font-size: .8rem; backdrop-filter: blur(10px); }
.km-hero-title { color: #fff; font-size: clamp(2rem, 4.6vw, 4.2rem); line-height: 1.25; letter-spacing: -.03em; margin: 16px 0; }
.km-hero-content p { color: rgba(255,255,255,.78); font-size: clamp(.95rem, 1.25vw, 1.12rem); max-width: 62ch; }
.km-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.km-primary-btn, .km-secondary-btn { min-height: 48px; padding-inline: 20px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; border-radius: 14px; font-weight: 800; text-decoration: none; }
.km-primary-btn { background: #fff; color: #4c1d95; box-shadow: 0 12px 30px rgba(0,0,0,.18); }
.km-primary-btn:hover { transform: translateY(-2px); color: #4c1d95; box-shadow: 0 18px 38px rgba(0,0,0,.24); }
.km-home-hero-wrap .km-secondary-btn { background: rgba(255,255,255,.1); color: #fff; border: 1px solid rgba(255,255,255,.22); }
.km-home-hero-wrap .km-secondary-btn:hover { background: rgba(255,255,255,.18); }
.km-hero-stats { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 26px; color: rgba(255,255,255,.78); font-size: .82rem; }
.km-hero-actions-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.km-hero-mini-card, .km-hero-submit-card { min-height: 116px; padding: 18px; border-radius: 20px; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.16); color: #fff; backdrop-filter: blur(13px); text-decoration: none; }
.km-hero-mini-card:hover, .km-hero-submit-card:hover { transform: translateY(-3px); background: rgba(255,255,255,.17); color: #fff; }

/* Section headers */
.km-section-head, .km-v7-section-head, .km-singer-section-head, .playlist_header { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin: 0 0 20px; }
.km-section-head h2, .km-v7-section-head h2, .km-singer-section-head h2, .playlist_title { position: relative; margin: 0; padding-right: 16px; font-size: clamp(1.15rem, 2vw, 1.55rem); }
.km-section-head h2::before, .km-v7-section-head h2::before, .km-singer-section-head h2::before, .playlist_title::before { content: ""; position: absolute; right: 0; top: 12%; width: 5px; height: 76%; border-radius: 99px; background: var(--km-gradient-brand); }
.km-section-head p, .playlist_sub { margin: 4px 0 0; color: var(--km-text-muted); }

/* Content sections */
.km-featured-section, .km-fast-section, .playlist_section, .km-latest-section, .km-keyword-section, .km-seo-text-section, .km-faq-section { width: min(calc(100% - 40px), var(--km-content-wide)); margin: clamp(28px, 5vw, 66px) auto; }
.km-featured-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.km-featured-card { background: var(--km-card); border: 1px solid var(--km-border); border-radius: 20px; overflow: hidden; box-shadow: var(--km-shadow-xs); }
.km-featured-card:hover { transform: translateY(-5px); box-shadow: var(--km-shadow-md); border-color: color-mix(in srgb, var(--km-primary) 30%, var(--km-border)); }
.km-featured-thumb { position: relative; aspect-ratio: 1.25/1; overflow: hidden; }
.km-featured-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s var(--km-ease); }
.km-featured-card:hover img { transform: scale(1.045); }
.km-featured-info { padding: 16px; }
.km-featured-info h3 { font-size: 1rem; margin: 7px 0 2px; }
.km-featured-badge { display: inline-flex; padding: 4px 9px; border-radius: 99px; background: var(--km-primary-soft); color: var(--km-primary); font-size: .7rem; }
.km-category-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 14px; }
.km-category-card { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 122px; padding: 16px 10px; border: 1px solid var(--km-border); border-radius: 18px; background: var(--km-card); color: var(--km-text-primary); text-align: center; text-decoration: none; box-shadow: var(--km-shadow-xs); }
.km-category-card:hover { color: var(--km-primary); transform: translateY(-4px); border-color: var(--km-primary); box-shadow: var(--km-shadow-md); }
.km-cat-icon { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 14px; background: var(--km-primary-soft); color: var(--km-primary); margin-bottom: 10px; }

/* Cards */
.archive_grid, .playlist_grid, .km-clean-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.archive_card, .playlist_card, .post { border: 1px solid var(--km-border); }
.archive_card > a, .playlist_card > a { display: block; color: inherit; text-decoration: none; }
.archive_card_img, .playlist_card_img { position: relative; aspect-ratio: 1/1; overflow: hidden; background: var(--km-primary-soft); }
.archive_card_img::after, .playlist_card_img::after { content: ""; position: absolute; inset: auto 0 0; height: 45%; background: linear-gradient(to top, rgba(10,8,16,.55), transparent); pointer-events: none; }
.archive_card_img img, .playlist_card_img img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s var(--km-ease); }
.archive_card:hover img, .playlist_card:hover img { transform: scale(1.055); }
.archive_card_play, .playlist_card_play { width: 46px; height: 46px; display: grid; place-items: center; position: absolute; left: 14px; bottom: 14px; z-index: 2; border-radius: 50%; opacity: .96; }
.archive_card_body, .playlist_card_info { min-height: 112px; }
.archive_card_title, .playlist_card_title { font-weight: 800; font-size: .94rem; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.archive_card_meta, .playlist_card_meta { margin-top: 8px; font-size: .76rem; }

/* Category/search headers and filters */
.cat_header { margin-bottom: 22px; padding: clamp(18px, 3vw, 28px); border: 1px solid var(--km-border); border-radius: 22px; background: var(--km-gradient-soft); box-shadow: var(--km-shadow-xs); }
.cat_header h1 { margin: 0; font-size: clamp(1.35rem, 2.8vw, 2rem); }
.cat_header h2 { margin-top: 5px; color: var(--km-text-muted); font-size: .88rem; font-weight: 500; }
.cat-description, .km-term-description { margin-bottom: 22px; padding: 18px 20px; background: var(--km-card); border: 1px solid var(--km-border); border-radius: 18px; color: var(--km-text-secondary); }
.archive_filter_bar { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 20px; padding: 10px; background: var(--km-card); border: 1px solid var(--km-border); border-radius: 16px; }
.archive_sort { display: flex; gap: 7px; flex-wrap: wrap; }
.archive_filter_count { color: var(--km-text-muted); font-size: .8rem; padding-inline: 8px; }

/* Posts and single page */
.single_box, article.post { overflow: hidden; }
article.post { margin-bottom: 22px; background: var(--km-card); border-radius: 22px; box-shadow: var(--km-shadow-sm); }
article.post > header { padding: 22px 24px 14px; border-bottom: 1px solid var(--km-divider); }
article.post > header h2 { margin: 0; font-size: clamp(1.1rem, 2vw, 1.4rem); }
article.post > header h2 a { color: var(--km-text-primary); text-decoration: none; }
article.post > header p { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 8px; font-size: .76rem; color: var(--km-text-muted); }
article.post .single_post_txt { padding: 20px 24px; }
.post_footer { padding: 14px 24px 20px; }
.post_footer a { display: inline-flex; align-items: center; min-height: 42px; padding: 8px 16px; border-radius: 12px; background: var(--km-primary-soft); color: var(--km-primary); font-weight: 800; text-decoration: none; }
.single_box { border: 1px solid var(--km-border); box-shadow: var(--km-shadow-md); }
.km-single-header-clean { padding-bottom: 22px; margin-bottom: 24px; border-bottom: 1px solid var(--km-divider); }
.km-single-header-clean h1 { font-size: clamp(1.55rem, 3.5vw, 2.6rem); margin: 0 0 10px; line-height: 1.5; }
.single_post_txt img { border-radius: 18px; }
.single_post_txt a { font-weight: 700; }
.single_post_txt ul, .single_post_txt ol { padding-right: 20px; margin: 18px 0; }
.single_post_txt ul { list-style: disc; }
.single_post_txt ol { list-style: decimal; }
.single_post_txt blockquote { margin: 22px 0; padding: 18px 20px; border-right: 4px solid var(--km-primary); background: var(--km-primary-soft); border-radius: 14px; }
.online_play { padding: 16px; margin-block: 20px; border: 1px solid var(--km-border); border-radius: 16px; background: var(--km-surface-raised); }
.online_play audio { width: 100%; }
.km-single-info-stack { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 20px 0; }
.km-single-info-text-box { display: flex; align-items: center; gap: 12px; min-height: 66px; }
.km-ultra-download-box { margin-block: 28px; background: var(--km-gradient-soft); box-shadow: var(--km-shadow-md); }
.km-ultra-download-head { display: flex; align-items: center; padding-bottom: 18px; margin-bottom: 18px; border-bottom: 1px solid var(--km-divider); }
.km-ultra-download-icon { flex: 0 0 52px; width: 52px; height: 52px; display: grid; place-items: center; }
.km-ultra-download-links { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); }
.km-ultra-download-btn { display: flex; align-items: center; justify-content: space-between; min-height: 58px; padding: 10px 15px; text-decoration: none; }

/* Singer pages */
.km-v7-singer-smart-box { overflow: hidden; border: 1px solid var(--km-border); border-radius: 26px; background: var(--km-gradient-soft); box-shadow: var(--km-shadow-md); }
.km-singer-grid, .km-singer-featured-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.km-singer-card, .km-singer-featured-card { border: 1px solid var(--km-border); }
.km-singer-avatar { aspect-ratio: 1; overflow: hidden; }
.km-singer-avatar img { width: 100%; height: 100%; }
.km-v7-mini-song-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.km-edge-song-link { display: flex; align-items: center; min-height: 52px; padding: 10px 13px; border: 1px solid var(--km-border); border-radius: 13px; background: var(--km-surface); color: var(--km-text-primary); text-decoration: none; }
.km-edge-song-link:hover { color: var(--km-primary); border-color: var(--km-primary); transform: translateX(-2px); }

/* Sidebar */
.widgets, .widget, .km-widget-pro { margin-bottom: 18px; padding: 18px; border: 1px solid var(--km-border); border-radius: 18px; background: var(--km-card); box-shadow: var(--km-shadow-xs); }
.widgets_title, .km-widget-title-text { position: relative; padding-right: 13px; margin-bottom: 14px; color: var(--km-text-primary); font-size: 1rem; font-weight: 800; }
.widgets_title::before, .km-widget-title-text::before { content: ""; position: absolute; right: 0; top: 18%; width: 4px; height: 64%; border-radius: 99px; background: var(--km-primary); }
.widgets_content li { border-bottom: 1px solid var(--km-divider); }
.widgets_content li:last-child { border-bottom: 0; }
.widgets_content a { display: block; padding: 9px 0; color: var(--km-text-secondary); text-decoration: none; }
.widgets_content a:hover { color: var(--km-primary); padding-right: 4px; }

/* Search modal */
.km-search-modal__panel { width: min(92vw, 720px); padding: clamp(22px, 4vw, 38px); }
.km-search-modal__badge { display: inline-flex; align-items: center; gap: 7px; padding: 6px 11px; border-radius: 99px; background: var(--km-primary-soft); color: var(--km-primary); font-size: .76rem; }
.km-search-modal__panel h3 { font-size: clamp(1.4rem, 3vw, 2rem); margin: 13px 0 5px; }
.km-search-modal__form { display: grid; grid-template-columns: 1fr auto; gap: 9px; margin: 20px 0; }
.km-search-modal__form input { min-height: 54px; }
.km-search-modal__form button { padding-inline: 20px; background: var(--km-primary); border: 0; color: #fff; }
.km-search-modal__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.km-search-modal__chips button { min-height: 36px; padding: 5px 11px; border: 1px solid var(--km-border); background: var(--km-surface); color: var(--km-text-secondary); font-size: .76rem; }

/* FAQ/comments/system pages */
.km-faq-box, .km-seo-text-box, .comments-area, .comment-respond, .not_found_box { padding: clamp(20px, 3vw, 32px); border: 1px solid var(--km-border); border-radius: 22px; background: var(--km-card); box-shadow: var(--km-shadow-xs); }
.km-faq-item, .km-lyrics-accordion { border: 1px solid var(--km-border); border-radius: 14px; background: var(--km-surface); overflow: hidden; }
.km-faq-item + .km-faq-item { margin-top: 10px; }
.km-faq-head, .km-lyrics-toggle { width: 100%; min-height: 52px; display: flex; align-items: center; justify-content: space-between; padding: 12px 15px; background: transparent; border: 0; color: var(--km-text-primary); text-align: right; }
.km-faq-answer, .km-lyrics-panel { padding: 0 15px 16px; color: var(--km-text-secondary); }
.not_found_box { width: min(calc(100% - 40px), 720px); margin: 50px auto; text-align: center; }
.not_found_box img { max-width: 260px; margin: 0 auto 20px; filter: drop-shadow(0 15px 26px rgba(0,0,0,.1)); }
.not_found_h { display: block; font-size: clamp(1.4rem, 3vw, 2rem); font-weight: 900; }
.not_found_p { display: block; margin-top: 8px; color: var(--km-text-muted); }

/* Footer */
#footer { margin-top: clamp(40px, 7vw, 90px); background: color-mix(in srgb, var(--km-surface) 96%, var(--km-primary) 4%); border-top: 1px solid var(--km-border); }
.top_footer, .km-footer-menu-wrap, .copyright { width: min(calc(100% - 40px), var(--km-content-wide)); margin-inline: auto; }
.top_footer { padding: 28px 0 18px; }
#rkianoosh_ir, .km-footer-menu-list { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 18px; }
#rkianoosh_ir a, .km-footer-menu-list a { color: var(--km-text-secondary); text-decoration: none; }
#rkianoosh_ir a:hover, .km-footer-menu-list a:hover { color: var(--km-primary); }
.km-footer-menu-wrap { padding: 18px 0; border-top: 1px solid var(--km-divider); border-bottom: 1px solid var(--km-divider); }
.copyright { padding: 24px 0 34px; text-align: center; }
.km-footer-brand { color: var(--km-text-primary); font-weight: 700; }
.km-footer-desc { margin-top: 5px; color: var(--km-text-muted); font-size: .78rem; }
.top_page { width: 44px; height: 44px; border-radius: 14px; background: var(--km-primary); color: #fff; box-shadow: var(--km-shadow-lg); }
.km-floating-actions { filter: drop-shadow(0 12px 26px rgba(15,23,42,.16)); }

/* Motion */
@keyframes kmFadeUp { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:none; } }
@keyframes kmPulseSoft { 0%,100% { box-shadow: 0 0 0 0 color-mix(in srgb,var(--km-primary) 0%,transparent); } 50% { box-shadow: 0 0 0 8px color-mix(in srgb,var(--km-primary) 8%,transparent); } }
.archive_card, .playlist_card, .km-featured-card, article.post { animation: kmFadeUp .45s var(--km-ease) both; }
.km-core-play-btn { animation: kmPulseSoft 2.6s ease-in-out infinite; }

/* Responsive */
@media (max-width: 1100px) {
  .km-featured-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .km-category-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
  .km-singer-grid, .km-singer-featured-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  #sidebar_right, #sidebar-left, .sidebar_right, .sidebar-left { flex-basis: 260px; }
  .km-search-pro-trigger { min-width: 170px; }
}
@media (max-width: 900px) {
  #header { display: none; }
  #mobiles_header { position: sticky; top: 0; z-index: 1000; }
  .center_box > .flex { display: block; }
  #sidebar_right, #sidebar-left, .sidebar_right, .sidebar-left { width: 100%; margin-top: 28px; }
  .km-home-top { grid-template-columns: 1fr; }
  .km-hero-actions-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .archive_grid, .playlist_grid, .km-clean-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .tarlanweb_center, .center_box > .flex, .km-home-hero-wrap, .km-featured-section, .km-fast-section, .playlist_section, .km-latest-section, .km-keyword-section, .km-seo-text-section, .km-faq-section, .top_footer, .km-footer-menu-wrap, .copyright { width: min(calc(100% - 24px), var(--km-content-wide)); }
  .center_box { padding-block: 20px; }
  .km-home-hero-wrap { margin-top: 14px; border-radius: 24px; }
  .km-home-top { padding: 28px 20px; }
  .km-hero-title { font-size: clamp(1.75rem, 8vw, 2.6rem); }
  .km-hero-actions-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .km-featured-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .km-category-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .archive_grid, .playlist_grid, .km-clean-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .archive_card_body, .playlist_card_info { min-height: 96px; padding: 12px; }
  .archive_card_title, .playlist_card_title { font-size: .82rem; }
  .archive_card_play, .playlist_card_play { width: 40px; height: 40px; left: 10px; bottom: 10px; }
  .km-singer-grid, .km-singer-featured-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .km-single-info-stack, .km-ultra-download-links { grid-template-columns: 1fr; }
  .km-search-modal__form { grid-template-columns: 1fr; }
  .km-search-modal__form button { width: 100%; }
  .single_box { border-radius: 20px; padding: 18px; }
  article.post > header, article.post .single_post_txt, .post_footer { padding-inline: 18px; }
  .km-section-head, .km-v7-section-head, .km-singer-section-head, .playlist_header { align-items: flex-start; }
}
@media (max-width: 420px) {
  .km-category-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .km-featured-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
  .km-featured-info { padding: 12px; }
  .km-hero-mini-card, .km-hero-submit-card { min-height: 104px; padding: 14px; }
  .km-primary-btn, .km-secondary-btn { width: 100%; }
  .archive_filter_bar { align-items: stretch; }
  .archive_sort { width: 100%; }
  .archive_sort_btn { flex: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .archive_card, .playlist_card, .km-featured-card, article.post, .km-core-play-btn { animation: none !important; }
}

/* ========================================================================== 
   KM Design System v8.4.1 — visual alignment corrections
   Applied in the existing design-system file; no extra stylesheet and no
   !important declarations.
   ========================================================================== */

:root {
  --km-header-height: 86px;
  --km-content-wide: 1360px;
  --km-section-space: clamp(28px, 3.2vw, 48px);
}

/* Desktop header: restore brand presence and consistent alignment */
@media (min-width: 901px) {
  #header {
    min-height: var(--km-header-height);
    background: color-mix(in srgb, var(--km-background) 94%, transparent);
    border-bottom: 1px solid var(--km-divider);
    box-shadow: 0 6px 24px rgba(15, 23, 42, .05);
    backdrop-filter: blur(16px);
  }

  #header .tarlanweb_center {
    width: min(calc(100% - 48px), var(--km-content-wide));
  }

  #header .top_header {
    min-height: var(--km-header-height);
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr) auto;
    align-items: center;
    gap: clamp(18px, 2vw, 34px);
  }

  #header .logo,
  #header .logo figure,
  #header .logo figure a {
    width: 74px;
    height: 74px;
    margin: 0;
  }

  #header .logo img {
    width: 72px;
    height: 72px;
    max-width: 72px;
    max-height: 72px;
    object-fit: contain;
    border-radius: 16px;
    box-shadow: 0 10px 28px color-mix(in srgb, var(--km-primary) 16%, transparent);
  }

  #header nav {
    min-width: 0;
    justify-self: center;
  }

  #rkianoosh {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
  }

  #rkianoosh > li > a {
    min-height: 46px;
    padding-inline: clamp(9px, 1vw, 14px);
    color: var(--km-text-secondary);
    font-size: .88rem;
    font-weight: 700;
    white-space: nowrap;
  }

  #rkianoosh > li > a:hover,
  #rkianoosh > li.current-menu-item > a,
  #rkianoosh > li.current-menu-ancestor > a {
    color: var(--km-primary);
  }

  #header .km-header-tools-pro {
    justify-self: end;
    gap: 9px;
  }

  #header .km-search-pro-trigger {
    min-width: 48px;
    width: 48px;
    height: 48px;
    padding: 0;
    justify-content: center;
    border-radius: 16px;
  }

  #header .km-search-pro-trigger .km-search-pro-text {
    display: none;
  }

  #header .km-search-pro-icon {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
    border-radius: 13px;
  }

  #header .km-theme-switch-pro {
    height: 48px;
    min-width: 78px;
    border-radius: 16px;
  }
}

/* VIP row: balanced whitespace, equal cards, and stable desktop width */
section.center_box:has(.vip_musics) {
  width: 100%;
  margin: 0;
  padding: clamp(22px, 2.5vw, 34px) 0 clamp(24px, 2.8vw, 38px);
  background: linear-gradient(180deg,
    color-mix(in srgb, var(--km-primary) 3%, var(--km-background)),
    var(--km-background));
  border-bottom: 1px solid var(--km-divider);
}

section.center_box:has(.vip_musics) > .tarlanweb_center {
  width: min(calc(100% - 48px), var(--km-content-wide));
  margin-inline: auto;
}

section.center_box:has(.vip_musics) .vip_musics {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0 2px 4px;
  scrollbar-width: thin;
}

section.center_box:has(.vip_musics) .vip_musics ul {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  align-items: stretch;
  justify-content: stretch;
  gap: clamp(10px, 1vw, 16px);
}

section.center_box:has(.vip_musics) .vip_musics ul li {
  width: auto;
  max-width: none;
  min-width: 0;
  height: 100%;
}

section.center_box:has(.vip_musics) .vip_musics ul li a {
  width: 100%;
  height: 100%;
  min-height: 0;
  padding: 7px 7px 11px;
  border-radius: 15px;
  background: var(--km-card);
  border-color: var(--km-border);
  box-shadow: var(--km-shadow-xs);
}

section.center_box:has(.vip_musics) .vip_musics ul li a:hover {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--km-primary) 35%, var(--km-border));
  box-shadow: var(--km-shadow-sm);
}

section.center_box:has(.vip_musics) .vip_musics ul li a img {
  width: 100%;
  height: auto;
  max-width: none;
  max-height: none;
  aspect-ratio: 1 / 1;
  margin: 0 0 8px;
  border-radius: 11px;
  object-fit: cover;
}

section.center_box:has(.vip_musics) .vip_txt {
  width: 100%;
  min-width: 0;
  padding-inline: 2px;
  text-align: center;
}

section.center_box:has(.vip_musics) .vip_txt p {
  margin: 0;
  color: var(--km-text-primary);
  font-size: .78rem;
  font-weight: 800;
  line-height: 1.65;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

section.center_box:has(.vip_musics) .vip_txt span {
  display: block;
  margin-top: 1px;
  color: var(--km-text-muted);
  font-size: .7rem;
  line-height: 1.6;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Reduce the oversized gaps between page sections */
body > .center_box:not(:has(.vip_musics)),
#main > .center_box:not(:has(.vip_musics)) {
  padding-block: var(--km-section-space);
}

.center_box > .flex.tarlanweb_center,
section.center_box > .flex.tarlanweb_center {
  width: min(calc(100% - 48px), var(--km-content-wide));
  gap: clamp(18px, 2.2vw, 30px);
}

/* Footer: stronger contrast and consistent brand palette in both themes */
#footer {
  margin-top: clamp(42px, 5vw, 72px);
  background: linear-gradient(145deg, #111827, #0b1220 58%, #10142a);
  border-top: 1px solid rgba(148, 163, 184, .18);
  color: #cbd5e1;
}

#footer .top_footer,
#footer .km-footer-menu-wrap,
#footer .copyright {
  width: min(calc(100% - 48px), var(--km-content-wide));
}

#footer .top_footer {
  padding: 30px 0 20px;
}

#footer #rkianoosh_ir,
#footer .km-footer-menu-list {
  gap: 10px 24px;
}

#footer #rkianoosh_ir a,
#footer .km-footer-menu-list a {
  color: #cbd5e1;
  font-size: .84rem;
  font-weight: 600;
}

#footer #rkianoosh_ir a:hover,
#footer .km-footer-menu-list a:hover {
  color: #ffffff;
}

#footer .km-footer-menu-wrap {
  padding: 18px 0;
  border-top-color: rgba(148, 163, 184, .14);
  border-bottom-color: rgba(148, 163, 184, .14);
}

#footer .copyright {
  padding: 24px 0 32px;
}

#footer .km-footer-brand,
#footer .km-footer-brand a {
  color: #f8fafc;
}

#footer .km-footer-desc {
  color: #94a3b8;
}

/* Responsive corrections */
@media (max-width: 1180px) and (min-width: 901px) {
  #header .top_header {
    grid-template-columns: 70px minmax(0, 1fr) auto;
    gap: 14px;
  }

  #header .logo,
  #header .logo figure,
  #header .logo figure a,
  #header .logo img {
    width: 64px;
    height: 64px;
    max-width: 64px;
    max-height: 64px;
  }

  #rkianoosh > li > a {
    padding-inline: 8px;
    font-size: .8rem;
  }

  section.center_box:has(.vip_musics) .vip_musics ul {
    grid-template-columns: repeat(7, minmax(110px, 1fr));
    overflow-x: auto;
  }
}

@media (max-width: 900px) {
  section.center_box:has(.vip_musics) {
    padding: 14px 0 18px;
  }

  section.center_box:has(.vip_musics) > .tarlanweb_center {
    width: 100%;
  }

  section.center_box:has(.vip_musics) .vip_musics {
    width: 100vw;
    max-width: 100vw;
    margin-inline: calc(50% - 50vw);
    padding: 0 12px 6px;
  }

  section.center_box:has(.vip_musics) .vip_musics ul {
    display: flex;
    width: max-content;
    gap: 10px;
  }

  section.center_box:has(.vip_musics) .vip_musics ul li {
    flex: 0 0 112px;
    width: 112px;
  }

  section.center_box:has(.vip_musics) .vip_musics ul li a {
    padding: 6px 6px 9px;
    border-radius: 13px;
  }

  .center_box > .flex.tarlanweb_center,
  section.center_box > .flex.tarlanweb_center,
  #footer .top_footer,
  #footer .km-footer-menu-wrap,
  #footer .copyright {
    width: min(calc(100% - 24px), var(--km-content-wide));
  }

  #footer #rkianoosh_ir,
  #footer .km-footer-menu-list {
    justify-content: flex-start;
    gap: 10px 18px;
  }
}

/* =========================================================
   KM Theme 8.4.2 — Homepage visual corrections
   Footer light-mode consistency, clean hero, 4-column playlists
   No new files / no !important
   ========================================================= */

/* Footer remains a single professional dark surface in every theme mode. */
#footer,
html.light-mode #footer,
body.light-mode #footer {
  margin-top: clamp(36px, 5vw, 64px);
  background: #0d1524;
  color: #cbd5e1;
  border-top: 1px solid rgba(148, 163, 184, .16);
}

#footer .top_footer,
#footer .km-footer-menu-wrap,
#footer .copyright,
html.light-mode #footer .top_footer,
html.light-mode #footer .km-footer-menu-wrap,
html.light-mode #footer .copyright,
body.light-mode #footer .top_footer,
body.light-mode #footer .km-footer-menu-wrap,
body.light-mode #footer .copyright {
  background: transparent;
  color: inherit;
  box-shadow: none;
}

#footer .top_footer {
  padding: 22px 0 16px;
}

#footer .km-footer-menu-wrap {
  margin-top: 0;
  margin-bottom: 0;
  padding: 16px 0;
  border-top: 1px solid rgba(148, 163, 184, .14);
  border-bottom: 1px solid rgba(148, 163, 184, .14);
}

#footer .copyright {
  padding: 20px 0 28px;
  border-top: 0;
}

#footer #rkianoosh_ir a,
#footer .km-footer-menu-list a,
html.light-mode #footer #rkianoosh_ir a,
html.light-mode #footer .km-footer-menu-list a,
body.light-mode #footer #rkianoosh_ir a,
body.light-mode #footer .km-footer-menu-list a {
  color: #cbd5e1;
  opacity: .9;
}

#footer #rkianoosh_ir a:hover,
#footer .km-footer-menu-list a:hover,
#footer #rkianoosh_ir a:focus-visible,
#footer .km-footer-menu-list a:focus-visible {
  color: #ffffff;
  opacity: 1;
  text-decoration: none;
}

#footer .km-footer-brand,
#footer .km-footer-brand a,
html.light-mode #footer .km-footer-brand,
html.light-mode #footer .km-footer-brand a,
body.light-mode #footer .km-footer-brand,
body.light-mode #footer .km-footer-brand a {
  color: #f8fafc;
}

#footer .km-footer-desc,
html.light-mode #footer .km-footer-desc,
body.light-mode #footer .km-footer-desc {
  color: #94a3b8;
}

/* Replace the oversized purple frame with a restrained product-style hero. */
.km-home-hero-wrap {
  padding-top: 24px;
}

.km-home-top,
html.light-mode .km-home-top,
body.light-mode .km-home-top {
  min-height: 0;
  padding: clamp(28px, 3.5vw, 44px);
  border: 1px solid #e2e8f0;
  border-radius: 24px;
  background: #ffffff;
  box-shadow: 0 16px 44px rgba(15, 23, 42, .08);
  gap: clamp(24px, 4vw, 52px);
}

.km-home-top::before,
html.light-mode .km-home-top::before,
body.light-mode .km-home-top::before {
  background: linear-gradient(135deg, rgba(0, 108, 255, .035), transparent 48%);
}

.km-home-top h1,
html.light-mode .km-home-top h1,
body.light-mode .km-home-top h1 {
  color: #0f172a;
}

.km-home-top p,
html.light-mode .km-home-top p,
body.light-mode .km-home-top p {
  color: #64748b;
}

.km-hero-badge,
html.light-mode .km-hero-badge,
body.light-mode .km-hero-badge {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: #006cff;
}

/* The hero card is white in light mode now; the secondary button must not stay white-on-white. */
.km-home-hero-wrap .km-secondary-btn,
html.light-mode .km-home-hero-wrap .km-secondary-btn,
body.light-mode .km-home-hero-wrap .km-secondary-btn {
  background: #f1f5f9;
  color: #0f172a;
  border: 1px solid #e2e8f0;
}

.km-home-hero-wrap .km-secondary-btn:hover,
html.light-mode .km-home-hero-wrap .km-secondary-btn:hover,
body.light-mode .km-home-hero-wrap .km-secondary-btn:hover {
  background: #e2e8f0;
  border-color: #cbd5e1;
}

html.dark-mode .km-home-hero-wrap .km-secondary-btn,
body.dark-mode .km-home-hero-wrap .km-secondary-btn,
body:not(.light-mode) .km-home-hero-wrap .km-secondary-btn {
  background: rgba(255, 255, 255, .1);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, .22);
}

html.dark-mode .km-home-hero-wrap .km-secondary-btn:hover,
body.dark-mode .km-home-hero-wrap .km-secondary-btn:hover,
body:not(.light-mode) .km-home-hero-wrap .km-secondary-btn:hover {
  background: rgba(255, 255, 255, .18);
}

.km-hero-mini-card,
html.light-mode .km-hero-mini-card,
body.light-mode .km-hero-mini-card {
  background: #f8fafc;
  border-color: #e2e8f0;
  box-shadow: none;
}

.km-hero-mini-card:hover {
  background: #ffffff;
  border-color: #93c5fd;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .07);
}

html.dark-mode .km-home-top,
body.dark-mode .km-home-top,
body:not(.light-mode) .km-home-top {
  background: #111827;
  border-color: #263244;
  box-shadow: 0 18px 48px rgba(0, 0, 0, .22);
}

html.dark-mode .km-home-top h1,
body.dark-mode .km-home-top h1,
body:not(.light-mode) .km-home-top h1 {
  color: #f8fafc;
}

html.dark-mode .km-home-top p,
body.dark-mode .km-home-top p,
body:not(.light-mode) .km-home-top p {
  color: #aebbd0;
}

html.dark-mode .km-hero-mini-card,
body.dark-mode .km-hero-mini-card,
body:not(.light-mode) .km-hero-mini-card {
  background: #0f172a;
  border-color: #263244;
}

/* Four published playlists must stay on one desktop row. */
body.home .playlist_grid,
body.blog .playlist_grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  align-items: stretch;
}

body.home .playlist_card,
body.blog .playlist_card {
  min-width: 0;
  height: 100%;
}

body.home .playlist_card_img,
body.blog .playlist_card_img {
  aspect-ratio: 1 / 1;
}

body.home .playlist_card_title,
body.blog .playlist_card_title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  min-height: 3.3em;
  white-space: normal;
  line-height: 1.65;
}

@media (max-width: 900px) {
  body.home .playlist_grid,
  body.blog .playlist_grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .km-home-top,
  html.light-mode .km-home-top,
  body.light-mode .km-home-top {
    padding: 22px 18px;
    border-radius: 20px;
  }
}

@media (max-width: 430px) {
  body.home .playlist_grid,
  body.blog .playlist_grid {
    gap: 10px;
  }
}


/* =========================================================
   v8.4.3 — Homepage semantic hero refinement
   Clean product-style layout; no extra file and no !important.
   ========================================================= */
body.home .km-home-hero-wrap,
body.blog .km-home-hero-wrap {
  width: min(calc(100% - 40px), var(--km-content-wide));
  margin: clamp(26px, 4vw, 54px) auto clamp(38px, 5vw, 68px);
  padding: 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--km-text-primary);
}

body.home .km-home-hero-wrap::before,
body.home .km-home-hero-wrap::after,
body.blog .km-home-hero-wrap::before,
body.blog .km-home-hero-wrap::after {
  display: none;
}

body.home .km-home-top,
body.blog .km-home-top {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, .9fr);
  align-items: center;
  min-height: 360px;
  padding: clamp(34px, 4.8vw, 64px);
  overflow: hidden;
  border: 1px solid var(--km-border);
  border-radius: 28px;
  background:
    radial-gradient(circle at 88% 16%, color-mix(in srgb, var(--km-primary) 10%, transparent) 0, transparent 38%),
    var(--km-surface);
  box-shadow: 0 18px 52px rgba(15, 23, 42, .08);
}

body.home .km-home-top::before,
body.blog .km-home-top::before {
  content: "";
  position: absolute;
  inset-inline-end: -70px;
  bottom: -110px;
  width: 290px;
  height: 290px;
  border: 42px solid color-mix(in srgb, var(--km-primary) 8%, transparent);
  border-radius: 50%;
  pointer-events: none;
}

body.home .km-hero-content,
body.blog .km-hero-content {
  position: relative;
  z-index: 1;
  max-width: 760px;
}

.km-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  margin-bottom: 12px;
  color: var(--km-primary);
  font-size: .88rem;
  font-weight: 800;
}

body.home .km-hero-title,
body.blog .km-hero-title {
  margin: 0 0 16px;
  color: var(--km-text-primary);
  font-size: clamp(3rem, 6vw, 5.6rem);
  line-height: 1.05;
  letter-spacing: -.045em;
}

body.home .km-hero-lead,
body.blog .km-hero-lead {
  max-width: 64ch;
  margin: 0;
  color: var(--km-text-secondary);
  font-size: clamp(1rem, 1.2vw, 1.12rem);
  line-height: 2;
}

body.home .km-hero-actions,
body.blog .km-hero-actions {
  margin-top: 26px;
}

body.home .km-hero-actions-grid,
body.blog .km-hero-actions-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 0;
}

body.home .km-hero-mini-card,
body.blog .km-hero-mini-card {
  display: flex;
  min-height: 112px;
  flex-direction: column;
  justify-content: center;
  padding: 18px 20px;
  border: 1px solid var(--km-border);
  border-radius: 18px;
  background: color-mix(in srgb, var(--km-surface) 88%, var(--km-background));
  color: var(--km-text-primary);
  box-shadow: 0 8px 24px rgba(15, 23, 42, .045);
}

body.home .km-hero-mini-card strong,
body.blog .km-hero-mini-card strong {
  margin-bottom: 5px;
  color: var(--km-text-primary);
  font-size: .95rem;
}

body.home .km-hero-mini-card span,
body.blog .km-hero-mini-card span {
  color: var(--km-text-muted);
  font-size: .78rem;
  line-height: 1.7;
}

body.home .km-hero-mini-card:hover,
body.blog .km-hero-mini-card:hover {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--km-primary) 34%, var(--km-border));
  background: var(--km-surface);
  box-shadow: 0 14px 30px rgba(15, 23, 42, .075);
}

html.dark-mode body.home .km-home-top,
body.dark-mode.home .km-home-top,
html.dark-mode body.blog .km-home-top,
body.dark-mode.blog .km-home-top {
  background:
    radial-gradient(circle at 88% 16%, color-mix(in srgb, var(--km-primary) 16%, transparent) 0, transparent 40%),
    var(--km-surface);
  box-shadow: 0 20px 54px rgba(0, 0, 0, .24);
}

@media (max-width: 980px) {
  body.home .km-home-top,
  body.blog .km-home-top {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  body.home .km-hero-actions-grid,
  body.blog .km-hero-actions-grid {
    margin-top: 28px;
  }
}

@media (max-width: 600px) {
  body.home .km-home-hero-wrap,
  body.blog .km-home-hero-wrap {
    width: min(calc(100% - 24px), var(--km-content-wide));
    margin-top: 18px;
  }

  body.home .km-home-top,
  body.blog .km-home-top {
    padding: 26px 20px;
    border-radius: 22px;
  }

  body.home .km-hero-title,
  body.blog .km-hero-title {
    font-size: clamp(2.65rem, 15vw, 4rem);
  }

  body.home .km-hero-actions-grid,
  body.blog .km-hero-actions-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  body.home .km-hero-mini-card,
  body.blog .km-hero-mini-card {
    min-height: 96px;
    padding: 14px;
    border-radius: 15px;
  }
}

/* ======================================================================
 * Kurd Music 8.4.4 — Screenshot-based homepage and single-page correction
 * Existing stylesheet only; no new assets, JS, or !important declarations.
 * ====================================================================== */

:root {
  --km-page-max: 1280px;
  --km-reading-max: 860px;
  --km-section-gap: clamp(30px, 4vw, 54px);
}

/* Shared page rhythm */
body.home .center_box,
body.blog .center_box,
body.single .center_box {
  margin-bottom: 0;
}

body.home .km-featured-section,
body.blog .km-featured-section,
body.home .km-fast-section,
body.blog .km-fast-section,
body.home .playlist_section,
body.blog .playlist_section,
body.home .km-latest-section,
body.blog .km-latest-section,
body.home .km-list-section,
body.blog .km-list-section,
body.home .km-seo-text-section,
body.blog .km-seo-text-section,
body.home .km-faq-section,
body.blog .km-faq-section {
  width: min(calc(100% - 40px), var(--km-page-max));
  margin-inline: auto;
  padding-block: var(--km-section-gap) 0;
  background: transparent;
}

body.home .km-section-head,
body.blog .km-section-head,
body.home .playlist_header,
body.blog .playlist_header {
  margin-bottom: 18px;
}

body.home .km-section-head h2,
body.blog .km-section-head h2,
body.home .playlist_title,
body.blog .playlist_title {
  font-size: clamp(1.18rem, 1.7vw, 1.5rem);
  line-height: 1.65;
}

/* Homepage hero: calmer scale, clearer hierarchy, no oversized empty area */
body.home .km-home-hero-wrap,
body.blog .km-home-hero-wrap {
  width: min(calc(100% - 40px), var(--km-page-max));
  margin: 26px auto 0;
}

body.home .km-home-top,
body.blog .km-home-top {
  min-height: 310px;
  padding: clamp(30px, 4vw, 54px);
  grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr);
  gap: clamp(30px, 4vw, 58px);
}

body.home .km-hero-title,
body.blog .km-hero-title {
  font-size: clamp(2.7rem, 5vw, 4.9rem);
  line-height: 1.08;
  margin-block: 12px 16px;
}

body.home .km-hero-lead,
body.blog .km-hero-lead {
  font-size: clamp(.94rem, 1.15vw, 1.08rem);
  line-height: 2;
}

body.home .km-hero-mini-card,
body.blog .km-hero-mini-card {
  min-height: 102px;
  padding: 16px 18px;
}

/* Homepage grids: predictable rows and equal cards */
body.home .km-featured-grid,
body.blog .km-featured-grid,
body.home .playlist_grid,
body.blog .playlist_grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  align-items: stretch;
}

body.home .playlist_card,
body.blog .playlist_card,
body.home .km-featured-card,
body.blog .km-featured-card {
  height: 100%;
  min-width: 0;
}

body.home .playlist_card_img,
body.blog .playlist_card_img,
body.home .km-featured-thumb,
body.blog .km-featured-thumb {
  aspect-ratio: 16 / 10;
  overflow: hidden;
}

body.home .playlist_card_img img,
body.blog .playlist_card_img img,
body.home .km-featured-thumb img,
body.blog .km-featured-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.home .playlist_card_info,
body.blog .playlist_card_info,
body.home .km-featured-info,
body.blog .km-featured-info {
  min-height: 82px;
}

body.home .archive_grid,
body.blog .archive_grid,
body.home #archive_ajax_wrap .archive_grid,
body.blog #archive_ajax_wrap .archive_grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  align-items: stretch;
}

body.home .archive_card,
body.blog .archive_card {
  width: 100%;
  min-width: 0;
  height: 100%;
  margin: 0;
}

body.home .archive_card_img,
body.blog .archive_card_img {
  aspect-ratio: 1 / 1;
}

body.home .archive_card_img img,
body.blog .archive_card_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.home .archive_card_body,
body.blog .archive_card_body {
  min-height: 76px;
}

/* Dark mode: avoid large disconnected navy slabs around every section */
html.dark-mode body.home .km-featured-section,
body.dark-mode.home .km-featured-section,
html.dark-mode body.home .km-fast-section,
body.dark-mode.home .km-fast-section,
html.dark-mode body.home .playlist_section,
body.dark-mode.home .playlist_section,
html.dark-mode body.home .km-latest-section,
body.dark-mode.home .km-latest-section,
html.dark-mode body.home .km-list-section,
body.dark-mode.home .km-list-section,
html.dark-mode body.home .km-seo-text-section,
body.dark-mode.home .km-seo-text-section,
html.dark-mode body.home .km-faq-section,
body.dark-mode.home .km-faq-section {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

/* Single page: use desktop space properly and improve reading comfort */
body.single .center_box > .flex.tarlanweb_center {
  width: min(calc(100% - 40px), 1220px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) 286px;
  gap: 22px;
  justify-content: stretch;
}

body.single #sidebar_center {
  width: 100%;
  max-width: none;
  min-width: 0;
  flex: none;
}

body.single #sidebar_right {
  width: 286px;
  max-width: 286px;
  min-width: 0;
  flex: none;
}

body.single article.post {
  padding: clamp(20px, 2.6vw, 32px);
  border-radius: 22px;
}

body.single .km-single-header-clean {
  margin-bottom: 18px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--km-border);
}

body.single .km-single-header-clean h1,
body.single .km-single-header-clean h1 a {
  font-size: clamp(1.28rem, 2vw, 1.72rem);
  line-height: 1.75;
  color: var(--km-text-primary);
}

body.single .single_post_txt {
  width: 100%;
  max-width: var(--km-reading-max);
  margin-inline: auto;
  color: var(--km-text-primary);
  font-size: clamp(.96rem, 1.15vw, 1.05rem);
  line-height: 2.15;
}

body.single .single_post_txt p {
  margin-block: 0 1.15em;
  font-size: inherit;
  line-height: inherit;
}

body.single .single_post_txt h2 {
  margin-block: 1.8em .7em;
  font-size: clamp(1.18rem, 1.7vw, 1.45rem);
  line-height: 1.75;
}

body.single .single_post_txt h3 {
  margin-block: 1.55em .65em;
  font-size: clamp(1.06rem, 1.45vw, 1.26rem);
  line-height: 1.75;
}

body.single .single_post_txt img {
  margin-block: 18px 24px;
  border-radius: 18px;
}

body.single .km-single-info-stack,
body.single .km-ultra-download-box,
body.single .km-related-section,
body.single .km-same-singer-section,
body.single .km-faq-box,
body.single .comments-area,
body.single #comments {
  margin-top: 22px;
}

body.single #sidebar_right .widgets,
body.single #sidebar_right .km-widget-pro {
  margin-bottom: 14px;
  padding: 14px;
  border-radius: 16px;
}

body.single #sidebar_right .widgets_title,
body.single #sidebar_right .km-widget-head {
  margin-bottom: 12px;
}

/* Responsive */
@media (min-width: 1320px) {
  body.home .archive_grid,
  body.blog .archive_grid,
  body.home #archive_ajax_wrap .archive_grid,
  body.blog #archive_ajax_wrap .archive_grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 1050px) {
  body.home .km-home-top,
  body.blog .km-home-top {
    grid-template-columns: 1fr;
  }

  body.home .km-featured-grid,
  body.blog .km-featured-grid,
  body.home .playlist_grid,
  body.blog .playlist_grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.single .center_box > .flex.tarlanweb_center {
    grid-template-columns: minmax(0, 1fr) 260px;
  }

  body.single #sidebar_right {
    width: 260px;
    max-width: 260px;
  }
}

@media (max-width: 900px) {
  body.home .km-featured-section,
  body.blog .km-featured-section,
  body.home .km-fast-section,
  body.blog .km-fast-section,
  body.home .playlist_section,
  body.blog .playlist_section,
  body.home .km-latest-section,
  body.blog .km-latest-section,
  body.home .km-list-section,
  body.blog .km-list-section,
  body.home .km-seo-text-section,
  body.blog .km-seo-text-section,
  body.home .km-faq-section,
  body.blog .km-faq-section {
    width: min(calc(100% - 24px), var(--km-page-max));
  }

  body.single .center_box > .flex.tarlanweb_center {
    width: min(calc(100% - 24px), 760px);
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  body.single #sidebar_right {
    width: 100%;
    max-width: 100%;
  }

  body.single article.post {
    padding: 18px;
    border-radius: 18px;
  }
}

@media (max-width: 600px) {
  body.home .km-home-hero-wrap,
  body.blog .km-home-hero-wrap {
    width: calc(100% - 20px);
  }

  body.home .km-home-top,
  body.blog .km-home-top {
    padding: 24px 18px;
  }

  body.home .km-hero-title,
  body.blog .km-hero-title {
    font-size: clamp(2.35rem, 14vw, 3.35rem);
  }

  body.home .km-featured-grid,
  body.blog .km-featured-grid,
  body.home .playlist_grid,
  body.blog .playlist_grid,
  body.home .archive_grid,
  body.blog .archive_grid,
  body.home #archive_ajax_wrap .archive_grid,
  body.blog #archive_ajax_wrap .archive_grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  body.home .playlist_card_info,
  body.blog .playlist_card_info,
  body.home .km-featured-info,
  body.blog .km-featured-info,
  body.home .archive_card_body,
  body.blog .archive_card_body {
    min-height: 68px;
  }

  body.single .center_box > .flex.tarlanweb_center {
    width: calc(100% - 16px);
  }

  body.single article.post {
    padding: 14px;
    border-radius: 15px;
  }

  body.single .single_post_txt {
    font-size: .94rem;
    line-height: 2.05;
  }
}

/* ======================================================================
 * Kurd Music 8.4.5 — Emergency layout stabilization
 * Fixes the single-page column collapse caused by mixing legacy flex rules
 * with the 8.4.4 grid override. No new files and no !important rules.
 * ====================================================================== */

/* Single post: keep the proven flex architecture and define both columns explicitly. */
body.single section.center_box > .flex.tarlanweb_center {
  width: min(calc(100% - 40px), 1220px);
  max-width: 1220px;
  margin-inline: auto;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: center;
  gap: 22px;
}

body.single section.center_box > .flex.tarlanweb_center > #sidebar_center {
  width: auto;
  max-width: none;
  min-width: 0;
  flex: 1 1 0;
}

body.single section.center_box > .flex.tarlanweb_center > #sidebar_right {
  width: 286px;
  max-width: 286px;
  min-width: 286px;
  flex: 0 0 286px;
}

body.single #sidebar_center > article.post,
body.single #sidebar_center > .post,
body.single #sidebar_center > .single_box {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

body.single .single_post_txt,
body.single .single_post_txt > * {
  max-width: 100%;
  box-sizing: border-box;
}

/* Homepage: prevent cards from retaining legacy fixed widths or centering a broken last row. */
body.home .archive_grid,
body.blog .archive_grid,
body.home #archive_ajax_wrap .archive_grid,
body.blog #archive_ajax_wrap .archive_grid,
body.home .playlist_grid,
body.blog .playlist_grid,
body.home .km-featured-grid,
body.blog .km-featured-grid {
  width: 100%;
  justify-content: stretch;
  justify-items: stretch;
  align-items: stretch;
  grid-auto-flow: row;
}

body.home .archive_grid > *,
body.blog .archive_grid > *,
body.home #archive_ajax_wrap .archive_grid > *,
body.blog #archive_ajax_wrap .archive_grid > *,
body.home .playlist_grid > *,
body.blog .playlist_grid > *,
body.home .km-featured-grid > *,
body.blog .km-featured-grid > * {
  width: 100%;
  min-width: 0;
  max-width: none;
  margin: 0;
  box-sizing: border-box;
}

@media (max-width: 900px) {
  body.single section.center_box > .flex.tarlanweb_center {
    width: min(calc(100% - 24px), 760px);
    max-width: 760px;
    flex-direction: column;
    gap: 16px;
  }

  body.single section.center_box > .flex.tarlanweb_center > #sidebar_center,
  body.single section.center_box > .flex.tarlanweb_center > #sidebar_right {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    flex: 0 0 auto;
  }
}

@media (max-width: 600px) {
  body.single section.center_box > .flex.tarlanweb_center {
    width: calc(100% - 16px);
  }
}

/* ======================================================================
 * Kurd Music 8.4.6 — Unified desktop homepage grid
 * One consistent desktop container and section-specific column counts.
 * No extra stylesheet, JavaScript, or !important declarations.
 * ====================================================================== */

@media (min-width: 1180px) {
  body.home {
    --km-home-shell: 1280px;
    --km-home-column-gap: 16px;
    --km-home-section-space: 44px;
  }

  body.home .km-home-hero-wrap,
  body.home .km-featured-section,
  body.home .km-fast-section,
  body.home .playlist_section,
  body.home .km-latest-section,
  body.home .km-keyword-section,
  body.home .km-seo-text-section,
  body.home .km-faq-section {
    width: min(calc(100% - 48px), var(--km-home-shell));
    max-width: var(--km-home-shell);
    margin-inline: auto;
    padding-top: var(--km-home-section-space);
  }

  body.home .km-home-hero-wrap {
    padding-top: 0;
    margin-top: 30px;
  }

  body.home .km-featured-section > .tarlanweb_center,
  body.home .km-fast-section > .tarlanweb_center,
  body.home .playlist_section > .tarlanweb_center,
  body.home .km-latest-section > .tarlanweb_center,
  body.home .km-keyword-section > .tarlanweb_center,
  body.home .km-seo-text-section > .tarlanweb_center,
  body.home .km-faq-section > .tarlanweb_center {
    width: 100%;
    max-width: none;
  }

  body.home .km-section-head,
  body.home .playlist_header {
    min-height: 52px;
    margin-bottom: 18px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
  }

  body.home .km-section-head > div,
  body.home .playlist_header_right {
    min-width: 0;
  }

  body.home .km-section-head h2,
  body.home .playlist_title {
    margin: 0;
    line-height: 1.55;
  }

  body.home .km-section-head p,
  body.home .playlist_sub {
    margin-top: 3px;
    line-height: 1.7;
  }

  /* Four editorial cards, always one complete row. */
  body.home .km-featured-grid,
  body.home .playlist_grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--km-home-column-gap);
  }

  /* Access categories: two balanced rows of six. */
  body.home .km-category-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 14px;
  }

  /* Main stream: 20 posts => five complete rows of four. */
  body.home .km-latest-section .archive_grid,
  body.home .km-latest-section #archive_ajax_wrap .archive_grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--km-home-column-gap);
  }

  /* Mood sections contain ten cards => two complete rows of five. */
  body.home .km-keyword-section .km-keyword-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
  }

  body.home .km-featured-grid > *,
  body.home .playlist_grid > *,
  body.home .km-category-grid > *,
  body.home .km-latest-section .archive_grid > *,
  body.home .km-keyword-section .km-keyword-grid > * {
    width: 100%;
    min-width: 0;
    max-width: none;
    margin: 0;
  }

  body.home .km-featured-card,
  body.home .playlist_card,
  body.home .archive_card,
  body.home .km-category-card {
    display: flex;
    flex-direction: column;
    height: 100%;
  }

  body.home .km-featured-info,
  body.home .playlist_card_info,
  body.home .archive_card_body {
    flex: 1 1 auto;
  }

  body.home .km-latest-section .archive_card_img,
  body.home .km-keyword-section .archive_card_img {
    aspect-ratio: 1 / 1;
  }

  body.home .km-latest-section .archive_card_body {
    min-height: 78px;
  }

  body.home .km-keyword-section .archive_card_body {
    min-height: 70px;
  }
}

@media (min-width: 901px) and (max-width: 1179px) {
  body.home .km-featured-grid,
  body.home .playlist_grid,
  body.home .km-latest-section .archive_grid,
  body.home .km-keyword-section .km-keyword-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  body.home .km-category-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}


/* ======================================================================
 * Kurd Music 8.4.7 — Cohesive product UI refinement
 * Removes click-ad sidebar block, normalizes desktop branding, creates
 * theme-aware footer, simplifies download panel and unifies home rhythm.
 * No new stylesheet, script or !important declaration.
 * ====================================================================== */

/* Header brand: preserve a recognizable desktop logo. */
@media (min-width: 1100px) {
  #header .tarlanweb_center {
    min-height: 76px;
    gap: 24px;
  }

  #header .logo,
  #header .logo figure,
  #header .logo figure a {
    width: 76px;
    height: 76px;
    min-width: 76px;
  }

  #header .logo img {
    width: 68px;
    height: 68px;
    object-fit: contain;
    border-radius: 14px;
  }

  #header .menu_header {
    min-height: 76px;
    align-items: center;
  }
}

/* Footer: clean information architecture and true light/dark variants. */
#footer.km-site-footer {
  margin-top: 56px;
  padding: 0;
  border-top: 1px solid var(--km-border);
  background: var(--km-surface);
  color: var(--km-text-secondary);
}

#footer .km-footer-shell {
  width: min(calc(100% - 40px), 1280px);
  margin-inline: auto;
}

#footer .km-footer-main {
  display: grid;
  grid-template-columns: minmax(280px, 1.25fr) minmax(220px, .85fr) minmax(280px, 1fr);
  gap: clamp(28px, 4vw, 64px);
  padding: 44px 0 34px;
}

#footer .km-footer-about,
#footer .km-footer-links {
  min-width: 0;
}

#footer .km-footer-logo {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  color: var(--km-text-primary);
}

#footer .km-footer-logo img {
  width: 64px;
  height: 64px;
  object-fit: contain;
  border-radius: 14px;
}

#footer .km-footer-logo span {
  display: grid;
  gap: 3px;
}

#footer .km-footer-logo strong {
  font-size: 1.16rem;
  line-height: 1.5;
}

#footer .km-footer-logo small,
#footer .km-footer-about p,
#footer .km-footer-desc {
  color: var(--km-text-muted);
}

#footer .km-footer-about p {
  max-width: 440px;
  margin: 16px 0 0;
  line-height: 2;
}

#footer .km-footer-links h2 {
  margin: 0 0 15px;
  color: var(--km-text-primary);
  font-size: 1rem;
}

#footer #rkianoosh_ir,
#footer .km-footer-menu-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}

#footer #rkianoosh_ir a,
#footer .km-footer-menu-list a {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  color: var(--km-text-secondary);
  font-size: .9rem;
  line-height: 1.7;
}

#footer #rkianoosh_ir a:hover,
#footer .km-footer-menu-list a:hover,
#footer #rkianoosh_ir a:focus-visible,
#footer .km-footer-menu-list a:focus-visible {
  color: var(--km-primary);
}

#footer .copyright {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 20px 0 24px;
  border-top: 1px solid var(--km-divider);
  background: transparent;
  color: var(--km-text-secondary);
}

#footer .km-footer-brand,
#footer .km-footer-brand a {
  color: var(--km-text-secondary);
}

html.dark-mode #footer.km-site-footer,
body.dark-mode #footer.km-site-footer,
body:not(.light-mode) #footer.km-site-footer {
  background: #101827;
  border-top-color: #27344a;
  color: #cbd5e1;
}

html.dark-mode #footer .km-footer-logo,
html.dark-mode #footer .km-footer-links h2,
body.dark-mode #footer .km-footer-logo,
body.dark-mode #footer .km-footer-links h2,
body:not(.light-mode) #footer .km-footer-logo,
body:not(.light-mode) #footer .km-footer-links h2 {
  color: #f8fafc;
}

html.dark-mode #footer #rkianoosh_ir a,
html.dark-mode #footer .km-footer-menu-list a,
html.dark-mode #footer .km-footer-brand,
html.dark-mode #footer .km-footer-brand a,
body.dark-mode #footer #rkianoosh_ir a,
body.dark-mode #footer .km-footer-menu-list a,
body.dark-mode #footer .km-footer-brand,
body.dark-mode #footer .km-footer-brand a,
body:not(.light-mode) #footer #rkianoosh_ir a,
body:not(.light-mode) #footer .km-footer-menu-list a,
body:not(.light-mode) #footer .km-footer-brand,
body:not(.light-mode) #footer .km-footer-brand a {
  color: #cbd5e1;
}

html.dark-mode #footer .km-footer-logo small,
html.dark-mode #footer .km-footer-about p,
html.dark-mode #footer .km-footer-desc,
body.dark-mode #footer .km-footer-logo small,
body.dark-mode #footer .km-footer-about p,
body.dark-mode #footer .km-footer-desc,
body:not(.light-mode) #footer .km-footer-logo small,
body:not(.light-mode) #footer .km-footer-about p,
body:not(.light-mode) #footer .km-footer-desc {
  color: #94a3b8;
}

html.dark-mode #footer .copyright,
body.dark-mode #footer .copyright,
body:not(.light-mode) #footer .copyright {
  border-top-color: #27344a;
}

/* Download experience: neutral surfaces, one accent and restrained depth. */
body.single .km-ultra-download-box {
  border: 1px solid var(--km-border);
  border-radius: 18px;
  background: var(--km-surface);
  box-shadow: var(--km-shadow-xs);
  overflow: hidden;
}

body.single .km-ultra-download-glow,
body.single .km-download-core-play-eq {
  display: none;
}

body.single .km-ultra-download-head {
  padding-bottom: 18px;
  border-bottom: 1px solid var(--km-divider);
}

body.single .km-ultra-download-icon {
  background: var(--km-surface-muted);
  border: 1px solid var(--km-border);
  color: var(--km-primary);
  box-shadow: none;
}

body.single .km-download-core-play-panel {
  margin-top: 18px;
  border: 1px solid var(--km-border);
  border-radius: 14px;
  background: var(--km-surface-muted);
  box-shadow: none;
}

body.single .km-download-core-play-btn {
  background: var(--km-primary);
  box-shadow: none;
}

body.single .km-download-core-play-btn:hover {
  background: var(--km-primary-hover);
  box-shadow: none;
  transform: none;
}

body.single .km-ultra-download-links {
  gap: 10px;
}

body.single .km-ultra-download-btn,
body.single .km-quality-320,
body.single .km-quality-128 {
  border: 1px solid var(--km-border);
  border-radius: 12px;
  background: var(--km-surface-raised);
  color: var(--km-text-primary);
  box-shadow: none;
}

body.single .km-ultra-download-btn:hover,
body.single .km-quality-320:hover,
body.single .km-quality-128:hover {
  border-color: color-mix(in srgb, var(--km-primary) 48%, var(--km-border));
  background: var(--km-primary-soft);
  color: var(--km-primary);
  box-shadow: none;
  transform: none;
}

body.single .km-download-mini-help {
  border: 1px solid var(--km-border);
  background: var(--km-surface-muted);
  color: var(--km-text-secondary);
  box-shadow: none;
}

/* Homepage: one shell, one rhythm, one card language. */
@media (min-width: 1180px) {
  body.home {
    --km-home-shell: 1240px;
    --km-home-gap: 16px;
    --km-home-space: 52px;
  }

  body.home .km-home-hero-wrap,
  body.home .km-featured-section,
  body.home .km-fast-section,
  body.home .playlist_section,
  body.home .km-latest-section,
  body.home .km-keyword-section,
  body.home .km-seo-text-section,
  body.home .km-faq-section {
    width: min(calc(100% - 48px), var(--km-home-shell));
    max-width: var(--km-home-shell);
    margin-inline: auto;
    padding-top: var(--km-home-space);
  }

  body.home .km-home-hero-wrap {
    margin-top: 28px;
    padding-top: 0;
  }

  body.home .km-section-head,
  body.home .playlist_header {
    min-height: 56px;
    margin-bottom: 18px;
    padding-inline: 2px;
    align-items: center;
  }

  body.home .km-featured-grid,
  body.home .playlist_grid,
  body.home .km-latest-section .archive_grid {
    gap: var(--km-home-gap);
  }

  body.home .km-featured-grid,
  body.home .playlist_grid,
  body.home .km-latest-section .archive_grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  body.home .km-category-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px;
  }

  body.home .km-keyword-section .km-keyword-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
  }

  body.home .km-featured-card,
  body.home .playlist_card,
  body.home .archive_card,
  body.home .km-category-card {
    border: 1px solid var(--km-border);
    border-radius: 14px;
    background: var(--km-surface);
    box-shadow: var(--km-shadow-xs);
  }

  body.home .km-featured-card:hover,
  body.home .playlist_card:hover,
  body.home .archive_card:hover,
  body.home .km-category-card:hover {
    border-color: color-mix(in srgb, var(--km-primary) 30%, var(--km-border));
    box-shadow: var(--km-shadow-sm);
    transform: translateY(-2px);
  }

  body.home .km-featured-thumb,
  body.home .playlist_card_img,
  body.home .archive_card_img {
    aspect-ratio: 1 / 1;
    overflow: hidden;
  }

  body.home .km-featured-thumb img,
  body.home .playlist_card_img img,
  body.home .archive_card_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  body.home .km-featured-info,
  body.home .playlist_card_info,
  body.home .archive_card_body {
    min-height: 82px;
    padding: 12px;
  }
}

@media (max-width: 900px) {
  #footer .km-footer-main {
    grid-template-columns: 1fr;
    gap: 28px;
    padding-block: 34px 26px;
  }

  #footer .copyright {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 600px) {
  #footer .km-footer-shell {
    width: calc(100% - 28px);
  }

  #footer #rkianoosh_ir,
  #footer .km-footer-menu-list {
    grid-template-columns: 1fr 1fr;
  }
}

/* ======================================================================
 * Kurd Music 8.4.8 — Final cohesive single-page and theme polish
 * Full desktop alignment, true light footer, neutral download UI,
 * stable sidebar and player-safe footer. No !important declarations.
 * ====================================================================== */

/* Desktop header and brand proportions */
@media (min-width: 1100px) {
  #header .tarlanweb_center {
    width: min(calc(100% - 48px), 1320px);
    max-width: 1320px;
    min-height: 82px;
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr) auto;
    align-items: center;
    gap: 24px;
  }

  #header .logo,
  #header .logo figure,
  #header .logo figure a {
    width: 88px;
    height: 72px;
    min-width: 88px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #header .logo img {
    width: 78px;
    height: 66px;
    max-width: 78px;
    object-fit: contain;
    border-radius: 12px;
  }

  #header .menu_header {
    min-height: 82px;
    justify-content: center;
  }
}

/* Single page: balanced content/sidebar architecture */
body.single section.center_box {
  padding-top: 28px;
}

body.single section.center_box > .flex.tarlanweb_center {
  width: min(calc(100% - 48px), 1320px);
  max-width: 1320px;
  gap: 28px;
  align-items: flex-start;
}

body.single section.center_box > .flex.tarlanweb_center > #sidebar_center {
  flex: 1 1 auto;
  min-width: 0;
}

body.single section.center_box > .flex.tarlanweb_center > #sidebar_right {
  width: 300px;
  max-width: 300px;
  min-width: 300px;
  flex-basis: 300px;
}

body.single article.post {
  padding: clamp(26px, 3vw, 40px);
  border: 1px solid var(--km-border);
  border-radius: 20px;
  background: var(--km-surface);
  box-shadow: var(--km-shadow-xs);
}

body.single .km-single-header-clean {
  max-width: 900px;
  margin-inline: auto;
  margin-bottom: 24px;
  padding-bottom: 20px;
  text-align: right;
}

body.single .km-single-header-clean h1,
body.single .km-single-header-clean h1 a {
  font-size: clamp(1.42rem, 1.8vw, 1.9rem);
  line-height: 1.75;
  font-weight: 800;
}

body.single .single_post_txt {
  width: 100%;
  max-width: 900px;
  margin-inline: auto;
  font-size: 1rem;
  line-height: 2.2;
}

body.single .single_post_txt p {
  margin-bottom: 1.25em;
}

body.single .single_post_txt h2 {
  margin-top: 2.15em;
  margin-bottom: .8em;
  font-size: clamp(1.22rem, 1.55vw, 1.5rem);
}

body.single .single_post_txt h3 {
  margin-top: 1.8em;
  margin-bottom: .7em;
  font-size: clamp(1.08rem, 1.3vw, 1.28rem);
}

body.single .single_post_txt img,
body.single .single_post_txt figure {
  max-width: 100%;
  margin-inline: auto;
}

/* Align all post modules to one reading width */
body.single .km-single-info-stack,
body.single .km-ultra-download-box,
body.single .km-single-date-line,
body.single .km-same-singer-box,
body.single .km-related-section,
body.single .km-faq-box,
body.single .comments-area,
body.single #comments,
body.single .post_tags,
body.single .km-post-tags,
body.single .km-seo-hubs-box {
  width: 100%;
  max-width: 900px;
  margin-inline: auto;
}

/* Download module: neutral, restrained and consistent */
body.single .km-ultra-download-box {
  margin-top: 28px;
  padding: 22px;
  border-radius: 16px;
  border: 1px solid var(--km-border);
  background: var(--km-surface-raised);
  box-shadow: none;
}

body.single .km-ultra-download-head {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 0 0 18px;
}

body.single .km-ultra-download-head h2 {
  margin: 0;
  font-size: 1.12rem;
}

body.single .km-ultra-download-head p {
  margin: 3px 0 0;
  color: var(--km-text-muted);
  font-size: .86rem;
}

body.single .km-ultra-download-icon {
  width: 44px;
  height: 44px;
  border-radius: 12px;
}

body.single .km-share-btn {
  min-height: 40px;
  padding-inline: 14px;
  border: 1px solid var(--km-border);
  background: var(--km-surface);
  color: var(--km-text-secondary);
  box-shadow: none;
}

body.single .km-share-btn:hover {
  border-color: var(--km-primary);
  color: var(--km-primary);
  background: var(--km-primary-soft);
}

body.single .km-download-core-play-panel {
  padding: 14px;
  background: var(--km-surface);
  border-radius: 12px;
}

body.single .km-download-core-play-main {
  gap: 14px;
}

body.single .km-download-core-play-btn {
  min-height: 42px;
  border-radius: 10px;
}

body.single .km-ultra-download-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

body.single .km-ultra-download-btn,
body.single .km-quality-320,
body.single .km-quality-128 {
  min-height: 58px;
  padding: 10px 12px;
  border-radius: 11px;
}

body.single .km-tg-cta-upgraded {
  margin-top: 14px;
  border: 1px solid var(--km-border);
  border-radius: 12px;
  background: var(--km-surface);
  color: var(--km-text-primary);
  box-shadow: none;
}

body.single .km-tg-cta-upgraded:hover {
  border-color: var(--km-primary);
  background: var(--km-primary-soft);
  transform: none;
  box-shadow: none;
}

body.single .km-download-mini-help {
  margin-top: 12px;
  border-radius: 10px;
  font-size: .82rem;
}

/* Sidebar: quieter, consistent and secondary to content */
body.single #sidebar_right {
  position: relative;
}

body.single #sidebar_right .widgets,
body.single #sidebar_right .km-widget-pro {
  margin-bottom: 16px;
  padding: 16px;
  border: 1px solid var(--km-border);
  border-radius: 16px;
  background: var(--km-surface);
  box-shadow: none;
}

body.single #sidebar_right .widgets_title,
body.single #sidebar_right .km-widget-head {
  min-height: 38px;
  margin-bottom: 12px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--km-divider);
}

body.single #sidebar_right .km-artists-grid {
  gap: 7px;
}

body.single #sidebar_right .km-artists-grid a,
body.single #sidebar_right .widgets_content a {
  border-radius: 9px;
}

/* Footer: explicit theme variants and player-safe spacing */
#footer.km-site-footer {
  margin-top: 64px;
  padding-bottom: 86px;
  background: #f8fafc;
  border-top: 1px solid #e2e8f0;
  color: #475569;
}

#footer .km-footer-shell {
  width: min(calc(100% - 48px), 1320px);
  max-width: 1320px;
}

#footer .km-footer-main {
  grid-template-columns: minmax(320px, 1.35fr) minmax(220px, .8fr) minmax(260px, .95fr);
  padding: 48px 0 36px;
}

#footer .km-footer-logo,
#footer .km-footer-links h2 {
  color: #0f172a;
}

#footer .km-footer-logo small,
#footer .km-footer-about p,
#footer .km-footer-desc,
#footer #rkianoosh_ir a,
#footer .km-footer-menu-list a,
#footer .km-footer-brand,
#footer .km-footer-brand a {
  color: #64748b;
}

#footer .copyright {
  border-top-color: #e2e8f0;
}

html.light-mode #footer.km-site-footer,
body.light-mode #footer.km-site-footer {
  background: #f8fafc;
  border-top-color: #e2e8f0;
  color: #475569;
}

html.light-mode #footer .km-footer-logo,
html.light-mode #footer .km-footer-links h2,
body.light-mode #footer .km-footer-logo,
body.light-mode #footer .km-footer-links h2 {
  color: #0f172a;
}

html.light-mode #footer .km-footer-logo small,
html.light-mode #footer .km-footer-about p,
html.light-mode #footer .km-footer-desc,
html.light-mode #footer #rkianoosh_ir a,
html.light-mode #footer .km-footer-menu-list a,
html.light-mode #footer .km-footer-brand,
html.light-mode #footer .km-footer-brand a,
body.light-mode #footer .km-footer-logo small,
body.light-mode #footer .km-footer-about p,
body.light-mode #footer .km-footer-desc,
body.light-mode #footer #rkianoosh_ir a,
body.light-mode #footer .km-footer-menu-list a,
body.light-mode #footer .km-footer-brand,
body.light-mode #footer .km-footer-brand a {
  color: #64748b;
}

html.light-mode #footer .copyright,
body.light-mode #footer .copyright {
  border-top-color: #e2e8f0;
}

html.dark-mode #footer.km-site-footer,
body.dark-mode #footer.km-site-footer,
html:not(.light-mode) body:not(.light-mode) #footer.km-site-footer {
  background: #0f172a;
  border-top-color: #243247;
  color: #cbd5e1;
}

/* Keep the fixed global player from covering footer content. */
body.single.has-km-player #footer.km-site-footer,
body.home.has-km-player #footer.km-site-footer,
body.has-km-player #footer.km-site-footer {
  padding-bottom: 104px;
}

/* Homepage desktop: consistent rhythm and card geometry */
@media (min-width: 1180px) {
  body.home {
    --km-home-shell: 1240px;
    --km-home-gap: 18px;
    --km-home-space: 56px;
  }

  body.home .km-home-hero-wrap,
  body.home .km-featured-section,
  body.home .km-fast-section,
  body.home .playlist_section,
  body.home .km-latest-section,
  body.home .km-keyword-section,
  body.home .km-seo-text-section,
  body.home .km-faq-section {
    width: min(calc(100% - 48px), var(--km-home-shell));
    max-width: var(--km-home-shell);
    margin-inline: auto;
  }

  body.home .km-section-head,
  body.home .playlist_header {
    min-height: 58px;
    margin-bottom: 20px;
    padding: 0;
  }

  body.home .km-featured-grid,
  body.home .playlist_grid,
  body.home .km-latest-section .archive_grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--km-home-gap);
  }

  body.home .km-category-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 14px;
  }

  body.home .km-keyword-section .km-keyword-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
  }

  body.home .km-featured-card,
  body.home .playlist_card,
  body.home .archive_card,
  body.home .km-category-card {
    height: 100%;
    border-radius: 14px;
    box-shadow: none;
  }

  body.home .km-featured-info,
  body.home .playlist_card_info,
  body.home .archive_card_body {
    min-height: 84px;
    padding: 12px 13px;
  }
}

@media (max-width: 1050px) {
  body.single section.center_box > .flex.tarlanweb_center {
    width: min(calc(100% - 32px), 980px);
    gap: 20px;
  }

  body.single section.center_box > .flex.tarlanweb_center > #sidebar_right {
    width: 270px;
    max-width: 270px;
    min-width: 270px;
    flex-basis: 270px;
  }
}

@media (max-width: 900px) {
  body.single section.center_box {
    padding-top: 16px;
  }

  body.single section.center_box > .flex.tarlanweb_center {
    width: min(calc(100% - 24px), 780px);
  }

  body.single article.post {
    padding: 20px;
  }

  body.single .single_post_txt,
  body.single .km-single-header-clean,
  body.single .km-single-info-stack,
  body.single .km-ultra-download-box,
  body.single .km-single-date-line,
  body.single .km-same-singer-box,
  body.single .km-related-section,
  body.single .km-faq-box,
  body.single .comments-area,
  body.single #comments,
  body.single .post_tags,
  body.single .km-post-tags,
  body.single .km-seo-hubs-box {
    max-width: 100%;
  }

  #footer .km-footer-main {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  body.single article.post {
    padding: 14px;
    border-radius: 14px;
  }

  body.single .km-ultra-download-box {
    padding: 15px;
  }

  body.single .km-ultra-download-head {
    grid-template-columns: 40px minmax(0, 1fr);
  }

  body.single .km-share-btn {
    grid-column: 1 / -1;
    justify-self: stretch;
  }

  body.single .km-ultra-download-links {
    grid-template-columns: 1fr;
  }

  #footer.km-site-footer {
    padding-bottom: 98px;
  }
}

/* ======================================================================
 * Kurd Music 8.4.9 — Final cleanup and production polish
 * Reduced title scale, improved reading measure, restrained modules,
 * stable light/dark footer and consistent desktop composition.
 * ====================================================================== */

/* Single page typography and reading hierarchy */
body.single .km-single-header-clean {
  max-width: 960px;
  margin-bottom: 18px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--km-divider);
}

body.single .km-single-header-clean h1,
body.single .km-single-header-clean h1 a {
  margin: 0;
  font-size: clamp(1.45rem, 1.55vw, 1.78rem);
  line-height: 1.7;
  font-weight: 750;
  letter-spacing: -.015em;
  color: var(--km-text-primary);
}

body.single .single_post_txt {
  max-width: 960px;
  font-size: 1.02rem;
  line-height: 2.12;
  color: var(--km-text-secondary);
}

body.single .single_post_txt > p:first-child {
  margin-top: 0;
}

body.single .single_post_txt h2 {
  font-size: clamp(1.18rem, 1.35vw, 1.42rem);
  line-height: 1.8;
  font-weight: 750;
}

body.single .single_post_txt h3 {
  font-size: clamp(1.05rem, 1.15vw, 1.22rem);
  line-height: 1.8;
  font-weight: 700;
}

body.single .single_post_txt figure,
body.single .single_post_txt img.aligncenter,
body.single .single_post_txt p > img:only-child {
  display: block;
  width: auto;
  max-width: min(100%, 480px);
  height: auto;
  margin: 24px auto;
  border-radius: 16px;
}

/* Keep content modules aligned to one reading axis */
body.single .km-single-info-stack,
body.single .km-ultra-download-box,
body.single .km-single-date-line,
body.single .km-same-singer-box,
body.single .km-related-section,
body.single .km-faq-box,
body.single .comments-area,
body.single #comments,
body.single .post_tags,
body.single .km-post-tags,
body.single .km-seo-hubs-box {
  max-width: 960px;
}

/* Quieter article surface */
body.single article.post {
  padding: clamp(24px, 2.7vw, 36px);
  border-radius: 18px;
  box-shadow: 0 8px 28px rgba(15, 23, 42, .045);
}

/* Download module: one accent, no visual noise */
body.single .km-ultra-download-box {
  padding: 20px;
  border-radius: 14px;
  border-color: var(--km-border);
  background: var(--km-surface);
}

body.single .km-ultra-download-head {
  padding-bottom: 14px;
  border-bottom: 1px solid var(--km-divider);
}

body.single .km-ultra-download-icon {
  background: var(--km-primary-soft);
  color: var(--km-primary);
  box-shadow: none;
}

body.single .km-download-core-play-panel,
body.single .km-tg-cta-upgraded,
body.single .km-download-mini-help {
  border: 1px solid var(--km-border);
  background: var(--km-surface-raised);
  box-shadow: none;
}

body.single .km-ultra-download-btn,
body.single .km-quality-320,
body.single .km-quality-128 {
  box-shadow: none;
  transform: none;
}

body.single .km-ultra-download-btn:hover,
body.single .km-quality-320:hover,
body.single .km-quality-128:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(15, 23, 42, .08);
}

/* Related content and sidebar use the same component geometry */
body.single .km-same-singer-box,
body.single .km-related-section,
body.single .km-faq-box,
body.single .comments-area,
body.single #comments,
body.single .post_tags,
body.single .km-post-tags {
  border-radius: 14px;
  box-shadow: none;
}

body.single #sidebar_right .widgets,
body.single #sidebar_right .km-widget-pro {
  border-radius: 14px;
  box-shadow: 0 4px 18px rgba(15, 23, 42, .035);
}

/* True light footer and restrained dark footer */
html.light-mode #footer.km-site-footer,
body.light-mode #footer.km-site-footer {
  background: #ffffff;
  color: #475569;
  border-top: 1px solid #e5e7eb;
}

html.light-mode #footer .km-footer-main,
body.light-mode #footer .km-footer-main {
  background: transparent;
}

html.light-mode #footer .km-footer-logo,
html.light-mode #footer .km-footer-links h2,
body.light-mode #footer .km-footer-logo,
body.light-mode #footer .km-footer-links h2 {
  color: #111827;
}

html.light-mode #footer .copyright,
body.light-mode #footer .copyright {
  border-top: 1px solid #e5e7eb;
  color: #64748b;
}

html.dark-mode #footer.km-site-footer,
body.dark-mode #footer.km-site-footer,
html:not(.light-mode) body:not(.light-mode) #footer.km-site-footer {
  background: #0b1220;
  border-top-color: #1f2a3b;
}

/* Desktop: more balanced article/sidebar proportions */
@media (min-width: 1100px) {
  body.single section.center_box > .flex.tarlanweb_center {
    grid-template-columns: minmax(0, 1fr) 286px;
    gap: 24px;
  }

  body.single section.center_box > .flex.tarlanweb_center > #sidebar_right {
    width: 286px;
    min-width: 286px;
    max-width: 286px;
    flex-basis: 286px;
  }

  #header .logo,
  #header .logo figure,
  #header .logo figure a {
    width: 96px;
    min-width: 96px;
  }

  #header .logo img {
    width: 86px;
    height: 70px;
    max-width: 86px;
  }
}

/* Homepage final consistency: same rhythm, same card behavior */
@media (min-width: 1180px) {
  body.home .km-featured-section,
  body.home .km-fast-section,
  body.home .playlist_section,
  body.home .km-latest-section,
  body.home .km-keyword-section,
  body.home .km-seo-text-section,
  body.home .km-faq-section {
    margin-top: 52px;
  }

  body.home .km-section-head,
  body.home .playlist_header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    min-height: 48px;
    margin-bottom: 16px;
  }

  body.home .km-featured-card,
  body.home .playlist_card,
  body.home .archive_card {
    overflow: hidden;
    border: 1px solid var(--km-border);
    background: var(--km-surface);
  }

  body.home .km-featured-card img,
  body.home .playlist_card img,
  body.home .archive_card img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
  }
}

@media (max-width: 900px) {
  body.single .km-single-header-clean h1,
  body.single .km-single-header-clean h1 a {
    font-size: clamp(1.3rem, 4.7vw, 1.55rem);
  }

  body.single .single_post_txt {
    font-size: .98rem;
    line-height: 2.05;
  }
}

@media (max-width: 600px) {
  body.single .km-single-header-clean {
    margin-bottom: 14px;
    padding-bottom: 12px;
  }

  body.single .km-single-header-clean h1,
  body.single .km-single-header-clean h1 a {
    font-size: 1.28rem;
    line-height: 1.75;
  }

  body.single .single_post_txt figure,
  body.single .single_post_txt img.aligncenter,
  body.single .single_post_txt p > img:only-child {
    max-width: 100%;
    margin-block: 18px;
  }
}


/* ======================================================================
 * Kurd Music 8.5.1 — layout recovery and final polish
 * Correct desktop header structure, compact article hierarchy and
 * a professional responsive footer. No new files and no !important.
 * ====================================================================== */

@media (min-width: 1100px) {
  #header {
    padding: 0;
    margin-bottom: 20px;
  }

  #header > .tarlanweb_center {
    display: block;
    width: min(calc(100% - 40px), 1280px);
    max-width: 1280px;
    min-height: 0;
  }

  #header .top_header {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr) auto;
    align-items: center;
    min-height: 74px;
    column-gap: 22px;
  }

  #header .logo,
  #header .km-site-logo-title,
  #header .logo figure,
  #header .logo figure a {
    width: 84px;
    min-width: 84px;
    height: 64px;
    margin: 0;
  }

  #header .logo img {
    width: 76px;
    max-width: 76px;
    height: 58px;
    max-height: 58px;
    object-fit: contain;
    border-radius: 10px;
  }

  #header nav {
    min-width: 0;
    overflow: visible;
  }

  #header nav > ul {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
    min-width: 0;
    white-space: nowrap;
  }

  #header nav > ul > li {
    float: none;
  }

  #header nav > ul > li > a {
    float: none;
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    margin: 0;
    padding: 8px 0;
    font-size: 14px;
    line-height: 1.5;
  }

  #header .km-header-tools-pro {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 96px;
  }

  #header .km-search-pro-trigger {
    width: 44px;
    min-width: 44px;
    max-width: 44px;
    height: 44px;
    padding: 0;
    justify-content: center;
    border-radius: 13px;
  }

  #header .km-search-pro-text,
  #header .km-search-pro-hot {
    display: none;
  }

  #header .km-search-pro-icon {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
    border-radius: 10px;
  }

  #header .km-theme-switch-pro {
    width: 48px;
    min-width: 48px;
    height: 44px;
    padding: 0;
    border-radius: 13px;
  }
}

/* Compact and deliberate single-post hierarchy */
body.single section.center_box {
  display: block;
  margin-left: auto;
  margin-right: auto;
  text-align: right; 
}

body.single section.center_box > .flex.tarlanweb_center {
  width: min(calc(100% - 40px), 1240px);
  max-width: 1240px;
  gap: 24px;
}

body.single article.post {
  padding: 28px 30px 32px;
  border-radius: 16px;
}

body.single .km-single-header-clean {
  max-width: 860px;
  margin: 0 auto 12px;
  padding: 0 0 12px;
}

body.single .km-single-header-clean h1,
body.single .km-single-header-clean h1 a {
  font-size: clamp(1.25rem, 1.25vw, 1.55rem);
  line-height: 1.65;
  font-weight: 700;
  letter-spacing: -.01em;
}

body.single .single_post_txt {
  max-width: 860px;
  font-size: .97rem;
  line-height: 2;
}

body.single .single_post_txt p {
  margin-bottom: 1.05em;
}

body.single .single_post_txt h2 {
  margin-top: 1.7em;
  margin-bottom: .55em;
  font-size: clamp(1.08rem, 1.15vw, 1.28rem);
}

body.single .single_post_txt h3 {
  margin-top: 1.45em;
  margin-bottom: .5em;
  font-size: clamp(1rem, 1vw, 1.14rem);
}

body.single .km-single-info-stack,
body.single .km-ultra-download-box,
body.single .km-single-date-line,
body.single .km-same-singer-box,
body.single .km-related-section,
body.single .km-faq-box,
body.single .comments-area,
body.single #comments,
body.single .post_tags,
body.single .km-post-tags,
body.single .km-seo-hubs-box {
  max-width: 860px;
}

body.single .km-ultra-download-box {
  margin-top: 20px;
  padding: 18px;
  border-radius: 13px;
}

body.single .km-ultra-download-head {
  padding-bottom: 12px;
  gap: 12px;
}

body.single .km-ultra-download-head h2 {
  font-size: 1.02rem;
}

body.single .km-download-core-play-panel,
body.single .km-tg-cta-upgraded,
body.single .km-download-mini-help {
  border-radius: 10px;
}

body.single .km-ultra-download-btn,
body.single .km-quality-320,
body.single .km-quality-128 {
  min-height: 52px;
  border-radius: 9px;
}

/* Professional footer with real light and dark variants */
#footer.km-site-footer {
  margin-top: 56px;
  padding: 0 0 92px;
  background: #ffffff;
  border-top: 1px solid #e5e7eb;
}

#footer .km-footer-shell {
  width: min(calc(100% - 40px), 1240px);
  max-width: 1240px;
}

#footer .km-footer-main {
  display: grid;
  grid-template-columns: minmax(300px, 1.35fr) minmax(180px, .75fr) minmax(220px, .9fr) minmax(220px, .9fr);
  gap: 40px;
  padding: 42px 0 32px;
}

#footer .km-footer-about,
#footer .km-footer-links,
#footer .km-footer-social {
  min-width: 0;
}

#footer .km-footer-logo {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
}

#footer .km-footer-logo img {
  width: 62px;
  height: 62px;
  object-fit: contain;
}

#footer .km-footer-logo strong,
#footer .km-footer-links h2,
#footer .km-footer-social h2 {
  color: #111827;
  font-size: 1rem;
  font-weight: 700;
}

#footer .km-footer-logo small,
#footer .km-footer-about p {
  color: #64748b;
}

#footer .km-footer-about p {
  max-width: 390px;
  line-height: 1.95;
}

#footer #rkianoosh_ir,
#footer .km-footer-menu-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

#footer #rkianoosh_ir a,
#footer .km-footer-menu-list a {
  color: #475569;
  font-size: .9rem;
  line-height: 1.65;
}

#footer #rkianoosh_ir a:hover,
#footer .km-footer-menu-list a:hover {
  color: var(--km-primary);
}

#footer .km-footer-social-links {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 14px;
}

#footer .km-footer-social-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 42px;
  padding: 0 12px;
  border: 1px solid #e2e8f0;
  border-radius: 11px;
  background: #f8fafc;
  color: #334155;
  font-size: .84rem;
}

#footer .copyright {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 20px 0 0;
  border-top: 1px solid #e5e7eb;
  color: #64748b;
}

#footer .km-footer-brand,
#footer .km-footer-brand a,
#footer .km-footer-desc {
  color: #64748b;
  font-size: .84rem;
}

html.dark-mode #footer.km-site-footer,
body.dark-mode #footer.km-site-footer,
html:not(.light-mode) body:not(.light-mode) #footer.km-site-footer {
  background: #0b1220;
  border-top-color: #1e293b;
}

html.dark-mode #footer .km-footer-logo strong,
html.dark-mode #footer .km-footer-links h2,
html.dark-mode #footer .km-footer-social h2,
body.dark-mode #footer .km-footer-logo strong,
body.dark-mode #footer .km-footer-links h2,
body.dark-mode #footer .km-footer-social h2 {
  color: #f8fafc;
}

html.dark-mode #footer .km-footer-logo small,
html.dark-mode #footer .km-footer-about p,
html.dark-mode #footer #rkianoosh_ir a,
html.dark-mode #footer .km-footer-menu-list a,
html.dark-mode #footer .km-footer-brand,
html.dark-mode #footer .km-footer-brand a,
html.dark-mode #footer .km-footer-desc,
body.dark-mode #footer .km-footer-logo small,
body.dark-mode #footer .km-footer-about p,
body.dark-mode #footer #rkianoosh_ir a,
body.dark-mode #footer .km-footer-menu-list a,
body.dark-mode #footer .km-footer-brand,
body.dark-mode #footer .km-footer-brand a,
body.dark-mode #footer .km-footer-desc {
  color: #94a3b8;
}

html.dark-mode #footer .km-footer-social-links a,
body.dark-mode #footer .km-footer-social-links a {
  border-color: #263449;
  background: #111b2d;
  color: #cbd5e1;
}

html.dark-mode #footer .copyright,
body.dark-mode #footer .copyright {
  border-top-color: #1e293b;
}

@media (max-width: 1050px) {
  #footer .km-footer-main {
    grid-template-columns: 1.3fr 1fr 1fr;
  }
  #footer .km-footer-social {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  #footer .km-footer-main {
    grid-template-columns: 1fr 1fr;
    gap: 28px 22px;
    padding: 34px 0 26px;
  }
  #footer .km-footer-about,
  #footer .km-footer-social {
    grid-column: 1 / -1;
  }
  #footer .copyright {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 560px) {
  #footer .km-footer-shell {
    width: calc(100% - 28px);
  }
  #footer .km-footer-main {
    grid-template-columns: 1fr;
  }
  #footer .km-footer-about,
  #footer .km-footer-social {
    grid-column: auto;
  }
  body.single article.post {
    padding: 16px;
  }
  body.single .km-single-header-clean h1,
  body.single .km-single-header-clean h1 a {
    font-size: 1.18rem;
    line-height: 1.7;
  }
}


/* =========================================================
 * Kurd Music 8.5.2 — cohesive footer, mobile gutters, dark-mode parity
 * ========================================================= */
#footer.km-site-footer {
  margin-top: 52px;
  padding-bottom: 90px;
}

#footer .km-footer-shell {
  width: min(calc(100% - 32px), 1240px);
  margin-inline: auto;
}

#footer .km-footer-main {
  display: grid;
  grid-template-columns: minmax(300px, 1.25fr) minmax(220px, .8fr) minmax(260px, 1fr);
  align-items: start;
  gap: 0;
  padding: 42px 0 30px;
}

#footer .km-footer-main > section {
  padding-inline: 34px;
  text-align: right;
}

#footer .km-footer-main > section:first-child {
  padding-right: 0;
}

#footer .km-footer-main > section:last-child {
  padding-left: 0;
}

#footer .km-footer-main > section + section {
  border-right: 1px solid rgba(100,116,139,.14);
}

#footer .km-footer-logo {
  justify-content: flex-start;
}

#footer #rkianoosh_ir {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 8px 18px;
}

#footer #rkianoosh_ir li,
#footer .km-footer-menu-list li {
  min-width: 0;
}

#footer .km-footer-guide {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 20px;
  padding: 18px 0;
  border-top: 1px solid rgba(100,116,139,.14);
  border-bottom: 1px solid rgba(100,116,139,.14);
}

#footer .km-footer-guide h2 {
  margin: 0;
  color: #111827;
  font-size: .95rem;
  font-weight: 750;
  white-space: nowrap;
}

#footer .km-footer-guide .km-footer-menu-list {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 0;
  margin: 0;
}

#footer .km-footer-guide .km-footer-menu-list li {
  display: inline-flex;
  align-items: center;
}

#footer .km-footer-guide .km-footer-menu-list li + li::before {
  content: '';
  width: 1px;
  height: 14px;
  margin-inline: 14px;
  background: rgba(100,116,139,.18);
}

#footer .km-footer-guide .km-footer-menu-list a {
  color: #64748b;
  font-size: .84rem;
  line-height: 1.7;
}

#footer .copyright {
  padding-top: 18px;
  border-top: 0;
}

html.dark-mode #footer .km-footer-main > section + section,
body.dark-mode #footer .km-footer-main > section + section,
html:not(.light-mode) body:not(.light-mode) #footer .km-footer-main > section + section,
html.dark-mode #footer .km-footer-guide,
body.dark-mode #footer .km-footer-guide,
html:not(.light-mode) body:not(.light-mode) #footer .km-footer-guide {
  border-color: rgba(148,163,184,.12);
}

html.dark-mode #footer .km-footer-guide h2,
body.dark-mode #footer .km-footer-guide h2,
html:not(.light-mode) body:not(.light-mode) #footer .km-footer-guide h2 {
  color: #f8fafc;
}

html.dark-mode #footer .km-footer-guide .km-footer-menu-list a,
body.dark-mode #footer .km-footer-guide .km-footer-menu-list a,
html:not(.light-mode) body:not(.light-mode) #footer .km-footer-guide .km-footer-menu-list a {
  color: #94a3b8;
}

/* Home: use one dark surface system instead of mismatched section blocks. */
html:not(.light-mode) body.home,
html:not(.light-mode) body.blog,
body.dark-mode.home,
body.dark-mode.blog {
  background: #0b1730;
}

html:not(.light-mode) body.home .center_box,
html:not(.light-mode) body.blog .center_box,
body.dark-mode.home .center_box,
body.dark-mode.blog .center_box {
  background: transparent;
}

html:not(.light-mode) body.home .km-home-top,
html:not(.light-mode) body.blog .km-home-top,
html:not(.light-mode) body.home .km-featured-card,
html:not(.light-mode) body.blog .km-featured-card,
html:not(.light-mode) body.home .km-category-card,
html:not(.light-mode) body.blog .km-category-card,
html:not(.light-mode) body.home .playlist_card,
html:not(.light-mode) body.blog .playlist_card,
html:not(.light-mode) body.home .archive_card,
html:not(.light-mode) body.blog .archive_card,
body.dark-mode.home .km-home-top,
body.dark-mode.blog .km-home-top,
body.dark-mode.home .km-featured-card,
body.dark-mode.blog .km-featured-card,
body.dark-mode.home .km-category-card,
body.dark-mode.blog .km-category-card,
body.dark-mode.home .playlist_card,
body.dark-mode.blog .playlist_card,
body.dark-mode.home .archive_card,
body.dark-mode.blog .archive_card {
  background: #10192b;
  border-color: rgba(148,163,184,.12);
  box-shadow: 0 10px 28px rgba(2,6,23,.18);
}

html:not(.light-mode) body.home .km-seo-text-box,
html:not(.light-mode) body.blog .km-seo-text-box,
html:not(.light-mode) body.home .km-faq-box,
html:not(.light-mode) body.blog .km-faq-box,
body.dark-mode.home .km-seo-text-box,
body.dark-mode.blog .km-seo-text-box,
body.dark-mode.home .km-faq-box,
body.dark-mode.blog .km-faq-box {
  background: #10192b;
  border-color: rgba(148,163,184,.12);
}

@media (max-width: 900px) {
  #footer .km-footer-main {
    grid-template-columns: 1fr 1fr;
    row-gap: 28px;
  }
  #footer .km-footer-social {
    grid-column: 1 / -1;
    border-right: 0;
    border-top: 1px solid rgba(100,116,139,.14);
    padding-top: 24px;
  }
}

@media (max-width: 640px) {
  body.home .center_box,
  body.blog .center_box,
  body.single .center_box,
  body.archive .center_box,
  body.search .center_box {
    padding-inline: 0;
  }

  body.home .tarlanweb_center,
  body.blog .tarlanweb_center,
  body.single .tarlanweb_center,
  body.archive .tarlanweb_center,
  body.search .tarlanweb_center,
  body.home .center_box > .tarlanweb_center,
  body.blog .center_box > .tarlanweb_center,
  body.single .center_box > .tarlanweb_center {
    width: calc(100% - 16px);
    max-width: none;
    margin-inline: auto;
  }

  body.single article.post,
  body.single #sidebar_center,
  body.single #sidebar_right,
  body.single .km-sidebar-pro {
    border-radius: 10px;
  }

  #footer .km-footer-shell {
    width: calc(100% - 16px);
  }

  #footer .km-footer-main {
    grid-template-columns: 1fr;
    padding: 28px 0 22px;
  }

  #footer .km-footer-main > section {
    padding: 0 0 22px;
    border-right: 0;
  }

  #footer .km-footer-main > section + section {
    padding-top: 22px;
    border-right: 0;
    border-top: 1px solid rgba(100,116,139,.14);
  }

  #footer #rkianoosh_ir {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  #footer .km-footer-guide {
    display: block;
    padding: 18px 0;
  }

  #footer .km-footer-guide h2 {
    margin-bottom: 12px;
  }

  #footer .km-footer-guide .km-footer-menu-list {
    gap: 8px 12px;
  }

  #footer .km-footer-guide .km-footer-menu-list li + li::before {
    display: none;
  }

  #footer .km-footer-guide .km-footer-menu-list a {
    display: inline-flex;
    padding: 6px 0;
  }

  #footer .copyright {
    align-items: flex-start;
    gap: 8px;
  }
}

/* =========================================================
 * Kurd Music 8.5.3 — compact professional footer
 * Final refinement: tighter vertical rhythm, aligned RTL columns,
 * subtle separators and removal of artificial bottom whitespace.
 * ========================================================= */
#footer.km-site-footer {
  margin-top: 36px;
  padding: 0;
}

#footer .km-footer-shell {
  width: min(calc(100% - 32px), 1240px);
}

#footer .km-footer-main {
  grid-template-columns: minmax(340px, 1.35fr) minmax(250px, .9fr) minmax(280px, 1fr);
  gap: 0;
  padding: 26px 0 22px;
}

#footer .km-footer-main > section {
  padding: 0 28px;
  text-align: right;
}

#footer .km-footer-main > section:first-child {
  padding-right: 0;
}

#footer .km-footer-main > section:last-child {
  padding-left: 0;
}

#footer .km-footer-logo img {
  width: 52px;
  height: 52px;
  border-radius: 12px;
}

#footer .km-footer-logo strong {
  font-size: 1.05rem;
}

#footer .km-footer-logo small {
  font-size: .74rem;
}

#footer .km-footer-about p,
#footer .km-footer-desc {
  margin-top: 10px;
  line-height: 1.85;
  font-size: .82rem;
}

#footer .km-footer-links h2,
#footer .km-footer-social h2 {
  margin: 0 0 10px;
  font-size: .94rem;
}

#footer #rkianoosh_ir {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 3px 16px;
}

#footer #rkianoosh_ir a {
  min-height: 29px;
  font-size: .83rem;
}

#footer .km-footer-social-links {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 12px;
}

#footer .km-footer-social-links a {
  min-height: 34px;
  padding: 5px 11px;
  border: 1px solid var(--km-border);
  border-radius: 9px;
  background: color-mix(in srgb, var(--km-surface) 92%, var(--km-primary) 8%);
  color: var(--km-text-secondary);
  font-size: .78rem;
}

#footer .km-footer-guide {
  grid-template-columns: auto minmax(0, 1fr);
  gap: 16px;
  padding: 12px 0;
}

#footer .km-footer-guide h2 {
  font-size: .86rem;
}

#footer .km-footer-guide .km-footer-menu-list {
  justify-content: flex-start;
  row-gap: 4px;
}

#footer .km-footer-guide .km-footer-menu-list li + li::before {
  height: 12px;
  margin-inline: 11px;
  opacity: .7;
}

#footer .km-footer-guide .km-footer-menu-list a {
  min-height: 28px;
  font-size: .78rem;
}

#footer .copyright {
  min-height: 0;
  padding: 12px 0 14px;
  gap: 14px;
  font-size: .76rem;
}

#footer .copyright .km-footer-desc {
  margin: 0;
  font-size: .72rem;
}

/* Reserve only the real player height instead of a large empty footer area. */
body.has-km-player #footer.km-site-footer,
body.single.has-km-player #footer.km-site-footer,
body.home.has-km-player #footer.km-site-footer {
  padding-bottom: 64px;
}

@media (max-width: 900px) {
  #footer .km-footer-main {
    grid-template-columns: 1fr 1fr;
    padding: 24px 0 18px;
  }

  #footer .km-footer-main > section {
    padding-inline: 20px;
  }

  #footer .km-footer-social {
    padding-top: 18px;
  }
}

@media (max-width: 640px) {
  #footer.km-site-footer {
    margin-top: 28px;
  }

  #footer .km-footer-shell {
    width: calc(100% - 12px);
  }

  #footer .km-footer-main {
    padding: 18px 4px 12px;
  }

  #footer .km-footer-main > section {
    padding: 0 4px 16px;
  }

  #footer .km-footer-main > section + section {
    padding-top: 16px;
  }

  #footer .km-footer-guide {
    padding: 10px 4px;
  }

  #footer .km-footer-guide h2 {
    margin-bottom: 8px;
  }

  #footer .km-footer-guide .km-footer-menu-list {
    gap: 4px 12px;
  }

  #footer .copyright {
    padding: 10px 4px 12px;
  }

  body.has-km-player #footer.km-site-footer,
  body.single.has-km-player #footer.km-site-footer,
  body.home.has-km-player #footer.km-site-footer {
    padding-bottom: 72px;
  }
}

/* ============================================================
   KM 8.5.11 — FINAL mobile edge-to-edge override (all pages)
   Root cause: earlier patches in this file (~L1765-L3293) share
   identical selector specificity with their own mobile-width
   versions, and an unconditional rule placed later in the file
   (e.g. L3293, L2466, L2834) was winning the cascade over the
   narrower @media rules meant for phones — even on small screens.
   This block uses !important so it always wins, no matter what
   gets added above it later.
   ============================================================ */
@media (max-width: 768px) {
  .tarlanweb_center,
  .center_box,
  .center_box > .flex,
  .center_box > .flex.tarlanweb_center,
  section.center_box > .flex.tarlanweb_center,
  body.single .center_box,
  body.single section.center_box,
  body.single .tarlanweb_center,
  body.single .center_box > .flex.tarlanweb_center,
  body.single section.center_box > .flex.tarlanweb_center {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.single section.center_box > .flex.tarlanweb_center {
    display: flex !important;
    flex-direction: column !important;
  }

  #sidebar_center,
  #sidebar_right,
  #sidebar-left,
  .sidebar_right,
  .sidebar-left,
  body.single #sidebar_center,
  body.single #sidebar_right,
  body.single section.center_box > .flex.tarlanweb_center > #sidebar_center,
  body.single section.center_box > .flex.tarlanweb_center > #sidebar_right {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 1 1 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
