/* Page skeleton loading UI — external asset (no inline CSS in HTML) */
.page-skeleton {
      position: fixed;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: 9999;
      overflow: auto;
      background: #f8fafc;
      opacity: 1;
      visibility: visible;
      transition: opacity 0.18s ease, visibility 0.18s ease;
      direction: rtl;
}
.page-skeleton.is-hidden {
      opacity: 0;
      visibility: hidden;
      pointer-events: none;
}
.page-skeleton__shimmer {
      position: relative;
      overflow: hidden;
      display: block;
}
.page-skeleton__shimmer::after {
      content: "";
      position: absolute;
      inset: 0;
      transform: translateX(-100%);
      background: linear-gradient(90deg, transparent, rgba(255,255,255,0.35), transparent);
      animation: skShimmer 1.25s ease-in-out infinite;
}
@keyframes skShimmer { 100% { transform: translateX(100%); } }

/* ── Shared site chrome (notice + banner + header) ── */
.sk-site__notice {
      display: flex; align-items: center; justify-content: center;
      gap: 14px; padding: 14px 0 10px;
}
.sk-site__notice-line {
      width: min(52vw,560px); height: 16px; border-radius: 999px;
      background: rgba(15,23,42,0.08);
}
.sk-site__notice-btn {
      width: 116px; height: 34px; border-radius: 10px;
      background: linear-gradient(135deg,#86efac,#4ade80);
}
.sk-site__banner-shell {
      background: linear-gradient(105deg,#0d1b2a 0%,#1a1035 35%,#162a1a 70%,#0d1b2a 100%);
      border-radius: 0 0 18px 18px;
}
.sk-site__banner {
      width: min(1320px,calc(100% - 32px)); margin: 0 auto;
      display: flex; align-items: center; justify-content: space-between;
      gap: 18px; min-height: 92px; padding: 18px 24px;
}
.sk-site__banner-title { width: min(34vw,380px); height: 20px; border-radius: 999px; background: rgba(255,255,255,0.12); }
.sk-site__banner-sub   { width: min(28vw,320px); height: 14px; border-radius: 999px; background: rgba(255,255,255,0.08); margin-top: 8px; }
.sk-site__timer { display: flex; gap: 8px; }
.sk-site__timer-box { width: 58px; height: 58px; border-radius: 12px; background: rgba(255,255,255,0.1); border: 1px solid rgba(168,255,202,0.18); }
.sk-site__banner-cta { width: 148px; height: 42px; border-radius: 12px; background: rgba(125,255,170,0.18); }
.sk-site__header { background: #fff; box-shadow: 0 10px 28px rgba(15,23,42,0.06); }
.sk-site__header-row {
      width: min(1320px,calc(100% - 32px)); margin: 0 auto;
      display: flex; align-items: center; justify-content: space-between;
      gap: 16px; min-height: 84px;
}
.sk-site__logo { width: 180px; height: 56px; border-radius: 12px; background: rgba(15,23,42,0.08); flex-shrink: 0; }
.sk-site__icon { width: 44px; height: 44px; border-radius: 14px; background: rgba(15,23,42,0.08); flex-shrink: 0; }
.sk-site__link { height: 12px; border-radius: 999px; background: rgba(15,23,42,0.08); display: inline-block; }
.sk-site__link--sm { width: 72px; } .sk-site__link--md { width: 96px; }
.sk-site__btn { width: 118px; height: 44px; border-radius: 12px; background: rgba(158,18,177,0.1); flex-shrink: 0; }
.sk-site__links { display: flex; align-items: center; gap: 12px; }

/* ── HOME hero ──────────────────────────────────── */
.sk-home__hero {
      position: relative; min-height: 620px;
      background: linear-gradient(to right,rgba(0,0,0,0.62),rgba(0,0,0,0.18)),
                  linear-gradient(110deg,#16171b 0%,#27272f 48%,#1b1c20 100%);
      overflow: hidden;
}
.sk-home__hero-inner {
      width: min(1200px,calc(100% - 48px)); margin: 0 auto; min-height: 620px;
      display: grid; grid-template-columns: minmax(0,1fr) 520px;
      align-items: center; gap: 28px; direction: ltr;
}
.sk-home__hero-title { width: min(38vw,340px); height: 36px; border-radius: 999px; background: rgba(255,255,255,0.14); }
.sk-home__hero-sub   { width: min(44vw,420px); height: 18px; border-radius: 999px; background: rgba(255,255,255,0.1); margin-top: 10px; }
.sk-home__hero-btn   { width: 192px; height: 48px; border-radius: 12px; background: linear-gradient(135deg,rgba(158,18,177,0.9),rgba(126,34,206,0.95)); margin-top: 14px; }
.sk-home__hero-features { margin-top: 18px; display: grid; grid-template-columns: repeat(2,1fr); gap: 18px; max-width: 420px; }
.sk-home__hero-feat { display: flex; align-items: center; gap: 10px; }
.sk-home__hero-feat-icon { width: 38px; height: 38px; border-radius: 50%; background: rgba(255,255,255,0.14); flex-shrink: 0; }
.sk-home__hero-feat-line { flex: 1; height: 14px; border-radius: 999px; background: rgba(255,255,255,0.12); }
.sk-home__hero-art { position: relative; min-height: 520px; }
.sk-home__hoodie { position: absolute; right: 8%; top: 6%; width: 320px; height: 420px; border-radius: 26px; background: rgba(255,255,255,0.08); }
.sk-home__circle { position: absolute; right: 0; bottom: 2%; width: 290px; height: 290px; border-radius: 50%; background: rgba(255,255,255,0.07); }

/* ── PROFILE: فقط روی #Profile — بدون overlay تمام‌صفحه ── */
.page-skeleton--profile {
      background: #f5f5f5;
      position: absolute;
      inset: auto;
      top: 0;
      left: 0;
      right: 0;
      width: 100%;
      height: 0;
      overflow: hidden;
      opacity: 0;
      visibility: hidden;
      z-index: 50;
      transition: opacity 0.22s ease, visibility 0.22s ease;
}
.page-skeleton--profile.is-anchored {
      opacity: 1;
      visibility: visible;
      overflow: auto;
}
body.sk-profile-pending #Profile {
      position: relative;
}
/* محتوا همیشه در layout می‌ماند؛ skeleton فقط روی آن overlay می‌شود */

.sk-profile__wrap {
      width: 100%;
      margin: 1rem 0;
      padding: 0 10rem;
      box-sizing: border-box;
}
.sk-profile__row {
      display: flex;
      flex-wrap: wrap;
      align-items: flex-start;
      margin: 0 -0.75rem;
      width: 100%;
}
.sk-profile__sidebar {
      flex: 0 0 25%;
      max-width: 25%;
      padding: 0 0.75rem;
      box-sizing: border-box;
}
.sk-profile__main {
      flex: 0 0 75%;
      max-width: 75%;
      padding: 0 0.75rem;
      box-sizing: border-box;
}
/* sidebar راست – کارت سفید (مطابق .profile__right) */
.sk-profile__sidebar-inner {
      background: #fff;
      border-radius: 1rem;
      border: 1px solid silver;
      box-shadow: 0 0 1.6rem rgba(70, 71, 73, 0.3);
      padding: 2.5rem 2rem;
      display: flex;
      flex-direction: column;
      gap: 0;
}
.sk-profile__user-row {
      display: flex; align-items: center; gap: 12px;
      padding-bottom: 16px; border-bottom: 1px solid #eef2f7;
      margin-bottom: 12px;
}
.sk-profile__avatar {
      width: 52px; height: 52px; border-radius: 50%;
      background: rgba(15,23,42,0.08); flex-shrink: 0;
}
.sk-profile__user-info { display: flex; flex-direction: column; gap: 6px; flex: 1; }
.sk-profile__user-name { width: 100px; height: 14px; border-radius: 999px; background: rgba(15,23,42,0.1); }
.sk-profile__user-phone { width: 80px; height: 12px; border-radius: 999px; background: rgba(15,23,42,0.07); }
.sk-profile__wallet {
      padding: 10px 0 14px; border-bottom: 1px solid #eef2f7;
      margin-bottom: 8px;
      display: flex; flex-direction: column; gap: 6px;
}
.sk-profile__wallet-key { width: 90px; height: 12px; border-radius: 999px; background: rgba(15,23,42,0.07); }
.sk-profile__wallet-val { width: 110px; height: 14px; border-radius: 999px; background: rgba(15,23,42,0.1); }
.sk-profile__menu-item {
      display: flex; align-items: center; gap: 10px;
      padding: 11px 8px; border-radius: 10px;
}
.sk-profile__menu-item--active { background: rgba(158,18,177,0.08); }
.sk-profile__menu-icon { width: 20px; height: 20px; border-radius: 6px; background: rgba(15,23,42,0.08); flex-shrink: 0; }
.sk-profile__menu-text { flex: 1; height: 13px; border-radius: 999px; background: rgba(15,23,42,0.08); }
.sk-profile__menu-item--active .sk-profile__menu-text { background: rgba(158,18,177,0.2); }

/* محتوای اصلی (مطابق .Profile_Section) */
.sk-profile__main-inner {
      background: #fff;
      border-radius: 1rem;
      border: 1px solid silver;
      box-shadow: 0 0 1.6rem rgba(70, 71, 73, 0.3);
      padding: 2.5rem 2rem;
      min-height: 320px;
}
.sk-profile__page-title {
      width: 160px; height: 22px; border-radius: 6px;
      background: rgba(15,23,42,0.1);
      margin-bottom: 24px;
      border-right: 4px solid #3b82f6;
      padding-right: 10px;
}
.sk-profile__folder-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 16px;
}
.sk-profile__folder-card {
      background: #fff;
      border: 1px solid #e8edf3;
      border-radius: 14px;
      padding: 20px 16px;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 12px;
      min-height: 130px;
}
.sk-profile__folder-icon {
      width: 64px; height: 64px; border-radius: 12px;
      background: rgba(250,204,21,0.25);
}
.sk-profile__folder-label {
      width: 80%; height: 13px; border-radius: 999px;
      background: rgba(15,23,42,0.08);
}

/* ── Profile content variants ── */
.sk-profile__section { margin-bottom: 24px; }
.sk-profile__section--spaced { margin-top: 8px; }
.sk-profile__section-title {
      width: 140px; height: 20px; border-radius: 6px;
      background: rgba(15,23,42,0.1); margin-bottom: 16px;
      border-right: 4px solid #3b82f6; padding-right: 8px; display: block;
}
.sk-profile__info-table {
      border: 1px solid #e8edf3; border-radius: 12px; overflow: hidden; margin-bottom: 16px;
}
.sk-profile__info-row {
      display: grid; grid-template-columns: 1fr 1fr; gap: 16px;
      padding: 14px 16px; border-bottom: 1px solid #eef2f7;
}
.sk-profile__info-row:last-child { border-bottom: none; }
.sk-profile__info-cell { height: 14px; border-radius: 999px; background: rgba(15,23,42,0.08); }
.sk-profile__info-btn {
      width: 180px; height: 36px; border-radius: 10px;
      background: rgba(158,18,177,0.1); margin: 0 auto; display: block;
}
.sk-profile__installment-box {
      width: 100%; height: 80px; border-radius: 12px;
      border: 1px solid #e8edf3; background: rgba(15,23,42,0.04);
}

.sk-profile__title-row {
      display: flex; align-items: center; justify-content: space-between;
      margin-bottom: 20px; gap: 12px;
}
.sk-profile__title-row .sk-profile__page-title { margin-bottom: 0; }
.sk-profile__pill-btn {
      width: 100px; height: 36px; border-radius: 10px;
      background: rgba(158,18,177,0.12); flex-shrink: 0;
}
.sk-profile__course-card {
      display: flex; gap: 16px; padding: 16px; margin-bottom: 14px;
      border: 1px solid #e8edf3; border-radius: 14px;
}
.sk-profile__course-thumb {
      width: 140px; height: 100px; border-radius: 10px;
      background: rgba(15,23,42,0.08); flex-shrink: 0;
}
.sk-profile__course-body { flex: 1; display: flex; flex-direction: column; gap: 10px; }
.sk-profile__course-title { width: 65%; height: 18px; border-radius: 999px; background: rgba(15,23,42,0.1); }
.sk-profile__course-meta { display: flex; flex-wrap: wrap; gap: 10px; }
.sk-profile__course-meta-item { width: 90px; height: 12px; border-radius: 999px; background: rgba(15,23,42,0.06); }
.sk-profile__course-progress-label { width: 120px; height: 12px; border-radius: 999px; background: rgba(15,23,42,0.07); }
.sk-profile__course-progress { width: 100%; height: 10px; border-radius: 999px; background: rgba(158,18,177,0.15); }

.sk-profile__alert-bar {
      width: 100%; height: 48px; border-radius: 12px;
      background: rgba(250,204,21,0.25); margin-bottom: 20px; display: block;
}
.sk-profile__platform-grid {
      display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 16px; margin-bottom: 20px;
}
.sk-profile__platform-card {
      border: 1px solid #e8edf3; border-radius: 16px; padding: 20px;
      display: flex; flex-direction: column; align-items: center; gap: 10px;
}
.sk-profile__platform-icon { width: 56px; height: 56px; border-radius: 12px; background: rgba(15,23,42,0.08); }
.sk-profile__platform-name { width: 80px; height: 14px; border-radius: 999px; background: rgba(15,23,42,0.1); }
.sk-profile__platform-ver { width: 60px; height: 12px; border-radius: 999px; background: rgba(158,18,177,0.15); }
.sk-profile__license-card {
      display: flex; gap: 16px; padding: 16px; margin-bottom: 14px;
      border: 1px solid #e8edf3; border-radius: 14px;
}
.sk-profile__license-thumb {
      width: 200px; height: 120px; border-radius: 10px;
      background: rgba(15,23,42,0.08); flex-shrink: 0;
}
.sk-profile__license-body { flex: 1; display: flex; flex-direction: column; gap: 12px; justify-content: center; }
.sk-profile__license-title { width: 70%; height: 18px; border-radius: 999px; background: rgba(15,23,42,0.1); }
.sk-profile__license-key { width: 100%; height: 52px; border-radius: 10px; background: rgba(15,23,42,0.06); }
.sk-profile__license-btn { width: 100%; height: 44px; border-radius: 10px; background: rgba(158,18,177,0.12); }

.sk-profile__data-table { display: flex; flex-direction: column; gap: 10px; }
.sk-profile__table-head { width: 100%; height: 44px; border-radius: 10px; background: rgba(15,23,42,0.12); }
.sk-profile__table-row { width: 100%; height: 48px; border-radius: 10px; background: rgba(15,23,42,0.05); }
.sk-profile__wallet-box {
      width: 100%; height: 72px; border-radius: 12px;
      background: rgba(158,18,177,0.08); margin-bottom: 24px;
}

.sk-profile__support-new {
      width: 100%; height: 52px; border-radius: 12px;
      background: rgba(158,18,177,0.1); margin-bottom: 16px; display: block;
}
.sk-profile__support-tabs { display: flex; gap: 10px; margin-bottom: 16px; }
.sk-profile__support-tab { width: 90px; height: 36px; border-radius: 10px; background: rgba(15,23,42,0.08); }
.sk-profile__support-ticket {
      width: 100%; height: 56px; border-radius: 10px;
      background: rgba(15,23,42,0.05); margin-bottom: 10px; display: block;
}

.sk-profile__cards-grid {
      display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px;
}
.sk-profile__card-item {
      border: 1px solid #e8edf3; border-radius: 14px; padding: 20px;
      display: flex; flex-direction: column; align-items: center; gap: 10px;
}
.sk-profile__card-icon { width: 48px; height: 48px; border-radius: 50%; background: rgba(15,23,42,0.08); }
.sk-profile__card-title { width: 80%; height: 16px; border-radius: 999px; background: rgba(15,23,42,0.1); }
.sk-profile__card-desc { width: 60%; height: 12px; border-radius: 999px; background: rgba(15,23,42,0.06); }

.sk-profile__list-item {
      display: flex; align-items: center; gap: 14px;
      padding: 14px 0; border-bottom: 1px solid #eef2f7;
}
.sk-profile__list-icon { width: 40px; height: 40px; border-radius: 10px; background: rgba(15,23,42,0.08); flex-shrink: 0; }
.sk-profile__list-body { flex: 1; display: flex; flex-direction: column; gap: 8px; }
.sk-profile__list-title { width: 70%; height: 14px; border-radius: 999px; background: rgba(15,23,42,0.1); }
.sk-profile__list-sub { width: 45%; height: 12px; border-radius: 999px; background: rgba(15,23,42,0.06); }

.sk-profile__form-row { margin-bottom: 16px; }
.sk-profile__form-label { width: 120px; height: 12px; border-radius: 999px; background: rgba(15,23,42,0.08); margin-bottom: 8px; display: block; }
.sk-profile__form-field { width: 100%; height: 44px; border-radius: 10px; background: rgba(15,23,42,0.06); border: 1px solid #e8edf3; display: block; }
.sk-profile__form-submit { width: 160px; height: 44px; border-radius: 10px; background: rgba(158,18,177,0.85); margin-top: 8px; display: block; }

.sk-profile__planning {
      display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 20px;
}
.sk-profile__planning-side {
      background: #f8fafc; border-radius: 12px; padding: 16px;
      border: 1px solid #e8edf3;
}
.sk-profile__planning-side-title { width: 100px; height: 16px; border-radius: 999px; background: rgba(15,23,42,0.1); margin-bottom: 14px; display: block; }
.sk-profile__planning-step { width: 100%; height: 40px; border-radius: 10px; background: rgba(15,23,42,0.06); margin-bottom: 8px; display: block; }
.sk-profile__planning-main { display: flex; flex-direction: column; gap: 14px; }
.sk-profile__planning-content { width: 100%; height: 200px; border-radius: 12px; background: rgba(15,23,42,0.05); display: block; }
.sk-profile__planning-content--short { height: 120px; }

.sk-profile__block { width: 100%; height: 100px; border-radius: 12px; background: rgba(15,23,42,0.06); margin-bottom: 14px; display: block; }
.sk-profile__block--short { height: 60px; }

/* ── BLOG article (col-8 + col-4) ───────────────── */
.sk-blog__wrap { width: min(1200px,calc(100% - 32px)); margin: 0 auto; padding: 24px 0 40px; }
.sk-blog__row { display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 24px; }
.sk-blog__main { display: flex; flex-direction: column; gap: 16px; }
.sk-blog__hero-img { width: 100%; height: 280px; border-radius: 16px; background: rgba(15,23,42,0.08); }
.sk-blog__title { width: 70%; height: 28px; border-radius: 999px; background: rgba(15,23,42,0.1); }
.sk-blog__meta { display: flex; gap: 12px; }
.sk-blog__meta-item { width: 80px; height: 12px; border-radius: 999px; background: rgba(15,23,42,0.07); }
.sk-blog__para { width: 100%; height: 14px; border-radius: 999px; background: rgba(15,23,42,0.06); }
.sk-blog__para--short { width: 75%; }
.sk-blog__sidebar { display: flex; flex-direction: column; gap: 16px; }
.sk-blog__widget { background: #fff; border-radius: 14px; padding: 18px; box-shadow: 0 2px 10px rgba(15,23,42,0.06); display: flex; flex-direction: column; gap: 10px; }
.sk-blog__widget-title { width: 120px; height: 16px; border-radius: 999px; background: rgba(15,23,42,0.1); }
.sk-blog__widget-row { height: 40px; border-radius: 10px; background: rgba(15,23,42,0.05); }

/* ── BLOG list (grid 3 cols) ────────────────────── */
.sk-bloglist__wrap { width: min(1200px,calc(100% - 32px)); margin: 0 auto; padding: 24px 0 40px; }
.sk-bloglist__filter { width: 200px; height: 40px; border-radius: 10px; background: rgba(15,23,42,0.08); margin-bottom: 24px; }
.sk-bloglist__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.sk-bloglist__card { background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 2px 12px rgba(15,23,42,0.07); }
.sk-bloglist__card-img { width: 100%; height: 200px; background: rgba(15,23,42,0.08); }
.sk-bloglist__card-body { padding: 16px; display: flex; flex-direction: column; gap: 10px; }
.sk-bloglist__card-title { width: 85%; height: 18px; border-radius: 999px; background: rgba(15,23,42,0.1); }
.sk-bloglist__card-desc { width: 100%; height: 12px; border-radius: 999px; background: rgba(15,23,42,0.06); }
.sk-bloglist__card-btn { width: 100px; height: 32px; border-radius: 8px; background: rgba(158,18,177,0.1); margin-top: 4px; }

/* ── COURSE landing (fullstack / frontend) ──────── */
.sk-cland__wrap { width: min(1200px,calc(100% - 32px)); margin: 0 auto; padding: 20px 0 40px; }
.sk-cland__breadcrumb { display: flex; align-items: center; gap: 8px; margin-bottom: 20px; }
.sk-cland__crumb { height: 12px; border-radius: 999px; background: rgba(15,23,42,0.08); }
.sk-cland__crumb--sm { width: 50px; } .sk-cland__crumb--md { width: 120px; }
.sk-cland__header-row { display: grid; grid-template-columns: minmax(0,1fr) 340px; gap: 28px; margin-bottom: 32px; }
.sk-cland__title { width: 70%; height: 32px; border-radius: 999px; background: rgba(15,23,42,0.1); margin-bottom: 14px; }
.sk-cland__desc-line { width: 100%; height: 13px; border-radius: 999px; background: rgba(15,23,42,0.06); margin-bottom: 8px; }
.sk-cland__stats { display: flex; flex-wrap: wrap; gap: 12px; margin: 16px 0; }
.sk-cland__stat { width: 90px; height: 36px; border-radius: 10px; background: rgba(15,23,42,0.06); }
.sk-cland__cta { width: 260px; height: 50px; border-radius: 12px; background: linear-gradient(135deg,rgba(158,18,177,0.85),rgba(126,34,206,0.9)); margin-top: 16px; }
.sk-cland__cover { width: 100%; height: 280px; border-radius: 18px; background: rgba(15,23,42,0.08); }
.sk-cland__price-box { background: #fff; border-radius: 14px; padding: 16px; box-shadow: 0 2px 10px rgba(15,23,42,0.06); display: flex; flex-direction: column; gap: 10px; margin-top: 12px; }
.sk-cland__price-line { width: 80%; height: 14px; border-radius: 999px; background: rgba(15,23,42,0.08); }
.sk-cland__body-row { display: grid; grid-template-columns: minmax(0,1fr) 300px; gap: 24px; }
.sk-cland__video { width: 100%; height: 360px; border-radius: 16px; background: rgba(15,23,42,0.08); margin-bottom: 16px; }
.sk-cland__accordion { display: flex; flex-direction: column; gap: 10px; }
.sk-cland__acc-item { height: 52px; border-radius: 12px; background: rgba(15,23,42,0.06); }
.sk-cland__roadmap-title { width: 180px; height: 18px; border-radius: 999px; background: rgba(15,23,42,0.1); margin-bottom: 16px; }
.sk-cland__roadmap-step { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.sk-cland__roadmap-dot { width: 36px; height: 36px; border-radius: 50%; background: rgba(15,23,42,0.08); flex-shrink: 0; }
.sk-cland__roadmap-text { flex: 1; height: 14px; border-radius: 999px; background: rgba(15,23,42,0.07); }

/* ── COURSE grid (category / دوره آفلاین) ───────── */
.sk-cgrid__wrap { width: min(1200px,calc(100% - 32px)); margin: 0 auto; padding: 24px 0 40px; }
.sk-cgrid__topbar { display: flex; justify-content: space-between; margin-bottom: 24px; }
.sk-cgrid__filter { width: 200px; height: 40px; border-radius: 10px; background: rgba(15,23,42,0.08); }
.sk-cgrid__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.sk-cgrid__card { background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 2px 12px rgba(15,23,42,0.07); }
.sk-cgrid__card-img { width: 100%; height: 190px; background: rgba(15,23,42,0.08); }
.sk-cgrid__card-body { padding: 16px; display: flex; flex-direction: column; gap: 10px; }
.sk-cgrid__card-title { width: 80%; height: 18px; border-radius: 999px; background: rgba(15,23,42,0.1); }
.sk-cgrid__card-meta { width: 60%; height: 12px; border-radius: 999px; background: rgba(15,23,42,0.06); }
.sk-cgrid__card-price { width: 100px; height: 32px; border-radius: 8px; background: rgba(158,18,177,0.1); }

/* ── STU PANEL (دوره‌های حضوری) ─────────────────── */
.sk-stu__wrap { width: min(1200px,calc(100% - 32px)); margin: 0 auto; padding: 24px 0 40px; }
.sk-stu__row { display: grid; grid-template-columns: minmax(0,1fr) 340px; gap: 24px; }
.sk-stu__title { width: 180px; height: 24px; border-radius: 999px; background: rgba(15,23,42,0.1); margin-bottom: 20px; }
.sk-stu__course-item { display: flex; gap: 16px; background: #fff; border-radius: 14px; padding: 16px; margin-bottom: 14px; box-shadow: 0 2px 10px rgba(15,23,42,0.06); }
.sk-stu__course-img { width: 120px; height: 90px; border-radius: 10px; background: rgba(15,23,42,0.08); flex-shrink: 0; }
.sk-stu__course-info { flex: 1; display: flex; flex-direction: column; gap: 8px; justify-content: center; }
.sk-stu__course-line { height: 13px; border-radius: 999px; background: rgba(15,23,42,0.08); }
.sk-stu__course-line--title { width: 70%; height: 16px; }
.sk-stu__sidebar-card { background: #fff; border-radius: 14px; padding: 18px; box-shadow: 0 2px 10px rgba(15,23,42,0.06); margin-bottom: 16px; }
.sk-stu__sidebar-title { width: 140px; height: 18px; border-radius: 999px; background: rgba(15,23,42,0.1); margin-bottom: 14px; }
.sk-stu__sidebar-item { height: 44px; border-radius: 10px; background: rgba(15,23,42,0.05); margin-bottom: 8px; }

/* ── AUTH ───────────────────────────────────────── */
.page-skeleton--auth { display: flex; flex-direction: column; }
.sk-auth__card {
      width: min(440px,calc(100% - 40px)); margin: auto;
      background: #fff; border-radius: 24px;
      box-shadow: 0 20px 60px rgba(15,23,42,0.1);
      padding: 40px 36px; display: flex; flex-direction: column; gap: 16px;
}
.sk-auth__logo { width: 120px; height: 36px; border-radius: 10px; background: rgba(15,23,42,0.08); margin: 0 auto; }
.sk-auth__title { width: 180px; height: 24px; border-radius: 999px; background: rgba(15,23,42,0.08); margin: 0 auto; }
.sk-auth__field { height: 52px; border-radius: 14px; background: rgba(15,23,42,0.06); border: 1px solid rgba(15,23,42,0.08); }
.sk-auth__btn { height: 52px; border-radius: 14px; background: linear-gradient(135deg,rgba(158,18,177,0.85),rgba(126,34,206,0.9)); }

/* ── DEFAULT (صفحات عمومی ساده) ─────────────────── */
.sk-default__wrap { width: min(1200px,calc(100% - 32px)); margin: 0 auto; padding: 32px 0 48px; }
.sk-default__title { width: 50%; height: 32px; border-radius: 999px; background: rgba(15,23,42,0.1); margin-bottom: 20px; }
.sk-default__line { width: 100%; height: 14px; border-radius: 999px; background: rgba(15,23,42,0.06); margin-bottom: 10px; }
.sk-default__line--short { width: 70%; }

@media (max-width: 768px) {
      .sk-site__banner { flex-wrap: wrap; justify-content: center; min-height: 132px; padding: 16px; }
      .sk-profile__wrap { padding: 0 1rem; }
      .sk-profile__sidebar,
      .sk-profile__main { flex: 0 0 100%; max-width: 100%; }
      .sk-profile__folder-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
                  .sk-profile__platform-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
                  .sk-profile__course-card, .sk-profile__license-card { flex-direction: column; }
                  .sk-profile__course-thumb, .sk-profile__license-thumb { width: 100%; height: 140px; }
                  .sk-profile__planning { grid-template-columns: 1fr; }
                  .sk-profile__planning-side { display: none; }
                  .sk-profile__cards-grid { grid-template-columns: 1fr; }
                  .sk-profile__sidebar { display: none; }
      .sk-blog__row, .sk-cland__header-row, .sk-cland__body-row, .sk-stu__row { grid-template-columns: 1fr; }
      .sk-bloglist__grid, .sk-cgrid__grid { grid-template-columns: 1fr; }
      .sk-home__hero-inner { grid-template-columns: 1fr; min-height: 420px; }
      .sk-home__hero-art { display: none; }
}

/* Utility modifiers (no inline style attributes in skeleton markup) */
.page-skeleton__shimmer--block {
      display: block;
}
.sk-cland__desc-line--w60 {
      width: 60%;
}
