/* ProgressPortal özel stiller - tema üzerine ince ayarlar buraya */

/* =====================================================================================================
   Tema: yazı boyutu  (ThemePreference.FontSize → _Layout <html data-pp-font-size="sm|md|lg">)
   Tabler'ın gövde yazı boyutu değişkenini geçersiz kılar (tabler.css :root --tblr-body-font-size: .875rem;
   body { font-size: var(--tblr-body-font-size) }). "md" için kural yok → Tabler varsayılanı geçerli.
   Seçici html[attr] (0,1,1) hem :root'u (0,1,0) hem tabler-themes.css'in [data-bs-theme-font=monospace] %80
   kuralını (0,1,0) ezer: kullanıcı açıkça boyut seçtiyse o kazanır.
   ===================================================================================================== */
html[data-pp-font-size="sm"] { --tblr-body-font-size: .8125rem; }
html[data-pp-font-size="lg"] { --tblr-body-font-size: 1rem; }

/* =====================================================================================================
   Tema: kenar menüsü  (ThemePreference.Sidebar → _Sidebar <aside> sınıfı)
   - right   → Tabler'ın kendi "navbar-right" sınıfı (aside sağa; .page-wrapper margin-right: 15rem) — ek CSS yok.
   - compact → "pp-sidebar-compact": yalnız lg+ (Tabler navbar-expand-lg kırılımı 992px; mobilde hamburger aynı).
     Daraltılmışken 4.5rem genişlikte yalnız ikonlar + kısa marka (.pp-brand-short) görünür; üzerine gelince
     veya klavye odağı içindeyken 15rem'e açılır ve içeriğin ÜSTÜNE biner (.page-wrapper margin'i 4.5rem'de
     sabit kalır → içerik hover'da zıplamaz). Tabler'ın hazır navbar-narrow'u .page-wrapper margin'ini
     düzeltmediği (yalnız ~ .page padding'i) ve hover-açılma sunmadığı için kullanılmadı.
   ===================================================================================================== */
.pp-brand-short { display: none; }

@media (min-width: 992px) {
  .navbar-vertical.navbar-expand-lg.pp-sidebar-compact {
    width: 4.5rem;
    overflow-x: hidden;
    overflow-y: auto;
    transition: width .15s ease, transform .3s;
  }
  .navbar-vertical.navbar-expand-lg.pp-sidebar-compact:hover,
  .navbar-vertical.navbar-expand-lg.pp-sidebar-compact:focus-within {
    width: 15rem;
  }
  .navbar-expand-lg.navbar-vertical.pp-sidebar-compact ~ .page-wrapper {
    margin-left: 4.5rem;
  }

  /* Daraltılmış durum (hover/odak yok): başlık, tam marka, açılır ok ve açık alt menüler gizli; ikon ortalı */
  .pp-sidebar-compact:not(:hover):not(:focus-within) .nav-link-title,
  .pp-sidebar-compact:not(:hover):not(:focus-within) .pp-brand-full,
  .pp-sidebar-compact:not(:hover):not(:focus-within) .navbar-collapse .dropdown-toggle::after,
  .pp-sidebar-compact:not(:hover):not(:focus-within) .navbar-collapse .dropdown-menu {
    display: none;
  }
  .pp-sidebar-compact:not(:hover):not(:focus-within) .pp-brand-short {
    display: inline;
  }
  .pp-sidebar-compact:not(:hover):not(:focus-within) .navbar-collapse .navbar-nav .nav-link {
    justify-content: center;
    padding-left: .5rem;
    padding-right: .5rem;
  }
  .pp-sidebar-compact:not(:hover):not(:focus-within) .nav-link-icon {
    margin-right: 0;
  }
}

@media (min-width: 992px) and (prefers-reduced-motion: reduce) {
  .navbar-vertical.navbar-expand-lg.pp-sidebar-compact { transition: none; }
}
