/* ========================================
   HubGit.ir — Shared Normalization CSS
   یکدست‌سازی ظاهر همه صفحات آموزشی
   ======================================== */

/* ── CSS Variables Bridge ── */
:root {
  --bg: var(--bg-color, #eef2f5);
  --card: var(--card-bg, #fff);
  --sidebar: var(--sidebar-bg, #2c343b);
  --primary: var(--primary-color, #88ce02);
  --sw: var(--sidebar-width, 280px);
}

/* ── Sidebar header normalize ── */
.sidebar-header {
  padding: 1.2rem 1rem !important;
  text-align: center !important;
  font-size: 1.15rem !important;
  border-bottom: 1px solid #3d4850 !important;
  color: var(--primary) !important;
  font-weight: 700 !important;
}

/* ── Category-list → numbered sidebar nav ── */
ul.category-list {
  counter-reset: nav-counter;
  list-style: none !important;
  padding: .5rem 0 !important;
  margin: 0 !important;
  overflow-y: auto !important;
}

ul.category-list li {
  counter-increment: nav-counter;
  border-bottom: none !important;
}

ul.category-list li a {
  display: flex !important;
  align-items: center !important;
  gap: .5rem !important;
  padding: .6rem 1rem !important;
  color: #aaa !important;
  text-decoration: none !important;
  font-size: .9rem !important;
  border-right: 3px solid transparent !important;
  transition: all .2s !important;
}

ul.category-list li a::before {
  content: counter(nav-counter, persian);
  display: inline-flex !important;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  background: #3d4850 !important;
  border-radius: 50% !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: .72rem !important;
  flex-shrink: 0 !important;
  color: #ccc !important;
}

ul.category-list li a:hover,
ul.category-list li.active a {
  color: #fff !important;
  background: rgba(136, 206, 2, .1) !important;
  border-right-color: var(--primary) !important;
}

ul.category-list li.active a::before {
  background: var(--primary) !important;
  color: #222 !important;
}

/* ── Download section normalize ── */
.sidebar-dl,
.sidebar-footer {
  padding: 1rem !important;
  border-top: 1px solid #3d4850 !important;
  margin-top: auto !important;
}

.sidebar-dl h4,
.sidebar-footer h4 {
  font-size: .8rem !important;
  color: #888 !important;
  margin-bottom: .5rem !important;
  font-weight: 400 !important;
}

/* normalize old download link styles */
.sidebar-dl a,
.sidebar-dl a[download] {
  display: inline-flex !important;
  align-items: center !important;
  gap: .4rem !important;
  background: var(--primary) !important;
  color: #222 !important;
  padding: .45rem .9rem !important;
  border-radius: 6px !important;
  text-decoration: none !important;
  font-size: .82rem !important;
  font-weight: 700 !important;
  margin: .2rem .2rem .2rem 0 !important;
  transition: opacity .2s !important;
}
.sidebar-dl a:hover { opacity: .85 !important; }

/* ── Back button normalize ── */
.sidebar-back,
a.sidebar-back,
[href*="index.html"] {
  display: block !important;
  text-align: center !important;
  color: #888 !important;
  font-size: .82rem !important;
  text-decoration: none !important;
  padding: .5rem !important;
  margin-top: .5rem !important;
  border-radius: 4px !important;
  transition: color .2s !important;
}
.sidebar-back:hover,
a.sidebar-back:hover { color: var(--primary) !important; }

/* ── Section headings normalize ── */
.section h2 {
  font-size: 1.4rem !important;
  color: #2c3e50 !important;
  border-bottom: 2px solid var(--primary) !important;
  padding-bottom: .5rem !important;
  margin-bottom: 1.2rem !important;
  display: inline-block !important;
}

/* ── Code blocks normalize ── */
.code-block,
pre {
  background: #1e2328 !important;
  color: #abb2bf !important;
  padding: 1.2rem !important;
  border-radius: 8px !important;
  overflow-x: auto !important;
  font-size: .88rem !important;
  line-height: 1.6 !important;
  direction: ltr !important;
  text-align: left !important;
  font-family: Consolas, 'Courier New', monospace !important;
  margin: 1rem 0 !important;
}

/* ── Demo boxes normalize ── */
.demo-box {
  background: #f8fafb !important;
  border: 2px solid #e9ecef !important;
  border-radius: 8px !important;
  padding: 1.2rem !important;
  margin: 1rem 0 !important;
}

/* ── Section cards normalize ── */
.section {
  background: #fff !important;
  border-radius: 10px !important;
  padding: 2rem !important;
  margin-bottom: 1.5rem !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.07) !important;
}

/* ── Main container normalize ── */
.main-container {
  padding: 2rem !important;
}

/* ── Font override ── */
body {
  font-family: 'Vazirmatn', 'Segoe UI', Tahoma, Arial, sans-serif !important;
}
