/* ============================================================
   🎨 (Update 41) «برنامه‌ی مطالعاتی من» (/usravailability) — صیقلِ ظاهری رویِ همان ساختارِ قبلی.
   فقط کلاس‌هایِ موجود (sh-*) با پیشوندِ .sp دقیق‌تر شده‌اند؛ چیدمانِ روزانه/هفتگی تغییری نکرده است.
   ============================================================ */

.sp.student-home { padding: 16px 16px 40px; }

/* سربرگ: آرام و مینیمال */
.sp .sh-hero { position: relative; overflow: hidden; border-radius: 18px; padding: 18px 22px; margin-bottom: 16px; gap: 16px; flex-wrap: wrap;
  background: radial-gradient(120% 160% at 100% 0%, rgba(255,255,255,.16), transparent 55%), linear-gradient(120deg, #2563eb 0%, #4f46e5 100%);
  box-shadow: 0 14px 32px -22px rgba(79,70,229,.9); }
.sp .sh-hero-title { font-size: 17px; font-weight: 800; letter-spacing: -.01em; }
.sp .sh-hero-sub { font-size: 12px; opacity: .88; margin-top: 4px; }
.sp-hero-prog { display: flex; flex-direction: column; gap: 6px; min-width: 150px; }
.sp-hero-prog-txt { font-size: 12px; opacity: .92; }
.sp-hero-prog-txt b { font-size: 14px; }
.sp-hero-bar { display: block; height: 6px; border-radius: 999px; background: rgba(255,255,255,.25); overflow: hidden; }
.sp-hero-bar span { display: block; height: 100%; border-radius: inherit; background: #facc15; transition: width .4s ease; }

/* کارتِ اصلی و زبانه‌ها */
.sp .sh-card { border-radius: 18px; padding: 16px; box-shadow: 0 1px 2px rgba(0,0,0,.03); }
.sp .sh-tabs { border-radius: 12px; padding: 4px; gap: 4px; border: 1px solid var(--tm-c-border); }
.sp .sh-tabs button { border-radius: 9px; padding: 10px 8px; font-weight: 700; }
.sp .sh-tabs button:hover:not(.active) { color: var(--tm-c-text); }
.sp .sh-tabs button.active { box-shadow: 0 1px 4px rgba(0,0,0,.1); }
.sp .sh-tabs button:focus-visible { outline: 2px solid var(--tm-c-accent); outline-offset: 1px; }

/* جدولِ هفتگی: فقط ظرافتِ بصری (ساختار همان است) */
.sp .sh-week-wrap { border: 1px solid var(--tm-c-border); border-radius: 12px; padding: 6px; scrollbar-width: thin; }
.sp .sh-slot-cell { border-radius: 8px; }
.sp .sh-slot-task { border-radius: 6px; }

/* بارگذاری و تأیید */
.sp-skel-list { display: flex; flex-direction: column; gap: 8px; }
.sp-skel { height: 54px; border-radius: 12px; background: linear-gradient(90deg, var(--tm-c-bg), var(--tm-c-surface), var(--tm-c-bg)); background-size: 200% 100%; animation: sp-sh 1.2s infinite; }
@keyframes sp-sh { to { background-position: -200% 0; } }
.sp-confirm { display: inline-flex; align-items: center; gap: 6px; font-size: 11.5px; font-weight: 700; color: var(--tm-c-danger-text); }
.sp .tm-action-btn.danger { background: var(--tm-c-danger); border-color: var(--tm-c-danger); color: #fff; }

/* ابزارها و اقدام‌هایِ سریع */
.sp .sh-features-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
.sp .sh-feature-card { text-decoration: none; border-radius: 16px; padding: 14px 6px; }
.sp .sh-feature-card:hover { text-decoration: none; }
.sp-feat-ic { width: 42px; height: 42px; border-radius: 13px; display: grid; place-items: center; font-size: 21px;
  background: var(--tm-c-accent-bg); color: var(--tm-c-accent); transition: background .15s, color .15s; }
.sp .sh-feature-card:hover .sp-feat-ic { background: var(--tm-c-accent); color: #fff; }
.sp .sh-quick-action { text-decoration: none; border-radius: 12px; }
.sp .sh-quick-action:hover { text-decoration: none; color: var(--tm-c-text); }
.sp-qa-chev { margin-inline-start: auto; color: var(--tm-c-text-3) !important; font-size: 14px !important; }

@media (max-width: 640px) {
  .sp.student-home { padding: 10px 10px 32px; }
  .sp .sh-hero { padding: 16px; }
  .sp-hero-prog { width: 100%; }
  .sp .sh-tabs button { font-size: 11.5px; padding: 9px 4px; }
  .sp .sh-features-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (prefers-reduced-motion: reduce) { .sp-skel { animation: none; } .sp-hero-bar span { transition: none; } }
