/*--------------------------------------
🎨 KURUMSAL TEMA DEĞİŞKENLERİ
--------------------------------------*/
:root {
  --primary-color: #003366;
  --secondary-color: #6b7280;
  --success-color: #2e7d32;
  --info-color: #0288d1;
  --warning-color: #f9a825;
  --danger-color: #c62828;
  --light-color: #f4f6f9;
  --dark-color: #1e293b;

  --accent-color: #4b4e6d;
  --neutral-color: #e0e0e0;

  --body-bg: #f4f6f9;
  --sidebar-bg: #ffffff;
  --card-bg: #ffffff;
  --card-border: #d1d5db;

  --text-color: #1e293b;
  --text-muted: #6b7280;
  --border-color: #e5e7eb;
  
  /* Sidebar genişlikleri */
  --sidebar-width-expanded: 200px;
  --sidebar-width-collapsed: 60px;
  --grapefruit: #ed5565;
  --grapefruit-dark: #da4453;

  --bittersweet: #fc6e51;
  --bittersweet-dark: #e9573f;

  --sunflower: #ffce54;
  --sunflower-dark: #fcbb42;

  --grass: #a0d468;
  --grass-dark: #8cc152;

  --mint: #48cfad;
  --mint-dark: #37bc9b;

  --aqua: #4fc1e9;
  --aqua-dark: #3bafda;

  --bluejeans: #5d9cec;
  --bluejeans-dark: #4a89dc;

  --lavender: #ac92ec;
  --lavender-dark: #967adc;

  --pinkrose: #ec87c0;
  --pinkrose-dark: #d770ad;

  --gray-light: #f5f7fa;
  --gray-light-alt: #e6e9ed;

  --gray-medium: #ccd1d9;
  --gray-medium-dark: #aab2bd;

  --gray-dark: #656d78;
  --gray-darkest: #434a54;
}

[data-bs-theme="dark"] {
  --primary-color: #4f83cc;
  --secondary-color: #9ca3af;
  --success-color: #66bb6a;
  --info-color: #29b6f6;
  --warning-color: #ffca28;
  --danger-color: #ef5350;
  --light-color: #f4f6f9;
  --dark-color: #111827;
  --accent-color: #8f9bb3;
  --neutral-color: #3b3f45;

  --body-bg: #111827;
  --sidebar-bg: #1f2937;
  --card-bg: #1f2937;
  --card-border: #374151;

  --text-color: #f3f4f6;
  --text-muted: #9ca3af;
  --border-color: #374151;
}

/*--------------------------------------
🔧 GENEL TEMEL STİLLER
--------------------------------------*/
body {
  min-height: 100vh;
  font-family: "Inter", sans-serif;
  background-color: var(--body-bg);
  color: var(--text-color);
  margin: 0;
  padding: 0;
  overflow-x: hidden; /* Yatay scroll'u engelle */
}

/*--------------------------------------
🏗️ MAIN LAYOUT SİSTEMİ
--------------------------------------*/
.main-layout {
  display: flex;
  min-height: calc(100vh - 56px);
  padding-top: 56px; /* Navbar yüksekliği */
}

.main-content {
  flex: 1;
  padding: 0;
  overflow-x: auto;
  background-color: var(--body-bg);
  margin-left: var(--sidebar-width-expanded);
  transition: margin-left 0.2s ease-in-out;
  min-height: calc(100vh - 56px);
}

/* Sidebar daraltıldığında main content margin'i */
#sidebar.sidebar-collapsed ~ .main-content {
  margin-left: var(--sidebar-width-collapsed);
}

a {
  color: var(--primary-color);
}
a:hover {
  color: var(--dark-color);
}
.navbar-brand {
padding-top:0;padding-bottom:0
}
/*--------------------------------------
🧱 SIDEBAR STİLLERİ
--------------------------------------*/
.sidebar {
  position: fixed;
  top: 59px; /* Navbar altında */
  bottom: 0;
  left: 0;
  z-index: 1020;
  padding: 0;
  box-shadow: inset -1px 0 0 #0000001a;
  overflow-y: auto;
  background-color: var(--sidebar-bg);
  border-right: 1px solid var(--border-color);
  width: var(--sidebar-width-expanded);
  transition: width 0.2s ease-in-out;
  flex-shrink: 0;
}

/* Daraltılmış durum */
#sidebar.sidebar-collapsed {
  width: var(--sidebar-width-collapsed) !important;
}

/* Nav link düzenlemeleri */
.sidebar .nav-link {
  font-weight: 500;
  padding: 0.45rem 1rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--text-color);
  white-space: nowrap;
  overflow: hidden;
  font-size:14px;
}

.sidebar .nav-link.active {
  color: var(--primary-color);
}

.sidebar .nav-link:hover {
  background-color: rgba(0, 51, 102, 0.05);
}

.sidebar .nav-link i {
  width: 20px;
  text-align: center;
  flex-shrink: 0;
}

/* Nav text için ayarlar */
#sidebar .nav-link .nav-text {
  transition: opacity 0.2s ease, transform 0.2s ease;
}

/* Daraltılmış durumda ayarlar */
#sidebar.sidebar-collapsed .nav-link {
  justify-content: center;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

#sidebar.sidebar-collapsed .nav-link .nav-text {
  opacity: 0;
  transform: translateX(-10px);
  pointer-events: none;
  position: absolute;
  left: -9999px;
}

/* Sidebar başlığı için özel stil */
#sidebar .sidebar-heading {
  transition: opacity 0.2s ease, transform 0.2s ease;
  white-space: nowrap;
  overflow: hidden;
}

#sidebar.sidebar-collapsed .sidebar-heading {
  opacity: 0;
  transform: translateX(-10px);
  pointer-events: none;
  position: absolute;
  left: -9999px;
}

/* Tooltip */
#sidebar.sidebar-collapsed .nav-link:hover::after {
  content: attr(data-title);
  position: absolute;
  left: 100%;
  top: 50%;
  transform: translateY(-50%);
  background: var(--dark-color);
  color: white;
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
  white-space: nowrap;
  z-index: 1000;
  margin-left: 0.5rem;
  font-size: 0.875rem;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}

/* Mobil responsive */
@media (max-width: 767.98px) {
  #sidebar.sidebar-collapsed .nav-link {justify-content: left;}

  .main-layout {
    padding-top: 56px;
  }
  
  .sidebar {
    position: fixed;
    top: 60px;
    left: -100%;
    width: 190px !important;
    height: calc(100vh - 56px);
    z-index: 1050;
    transition: left 0.3s ease-in-out, width 0s;
    padding: 0 0 20px;
  }
  
  .sidebar.show {
    left: 0;
  }
  
  .main-content {
    width: 100%;
    margin-left: 0 !important;
  }
  
  /* Mobilde nav-text'i geri getir */
  #sidebar.sidebar-collapsed .nav-link .nav-text,
  #sidebar.sidebar-collapsed .sidebar-heading {
    opacity: 1;
    transform: none;
    pointer-events: auto;
    position: static;
    left: auto;
  }
  
  /* Mobilde collapse özelliğini devre dışı bırak */
  #sidebar.sidebar-collapsed {
    width: 180px !important;
  }
  
  /* Header butonları mobilde daha küçük */
  .navbar .btn {
    padding: 0.375rem 0.5rem;
    font-size: 0.875rem;
  }
  
  /* User name text'ini mobilde gizle */
  .navbar .d-none.d-md-inline {
    display: none !important;
  }

  .navbar-brand{padding-top:0;padding-bottom:0;display:block!important;align-items:left!important;}
}

/*--------------------------------------
📦 KART STİLLERİ
--------------------------------------*/
.card {
  background-color: var(--card-bg);
  border: 1px solid var(--card-border);
  border-radius: 0.5rem;
  box-shadow: 0 0.125rem 0.25rem #00000013;
  transition: transform 0.2s, box-shadow 0.2s;
}

.card:hover {
  box-shadow: 0 0.5rem 1rem #00000026;
}


.card-header {
  background-color: var(--neutral-color);
  color: var(--text-color);
  border-bottom: 1px solid var(--border-color);
  font-weight: 600;
  font-size: 0.875rem;
}

/* Koyu temaya özel daha koyu header */
[data-bs-theme="dark"] .card-header {
  background-color: var(--neutral-color);
  color: var(--text-color);
  border-bottom: 1px solid var(--border-color);
}

/* Accent başlık kartları için (isteğe bağlı) */
.card-header.accent {
  background-color: var(--accent-color);
  color: #fff;
}

/*--------------------------------------
🧱 CARD HEADER RENKLERİ (LIGHT TEMA)
--------------------------------------*/
.card.border-grapefruit   { border: 1px solid var(--grapefruit); }
.card.border-bittersweet  { border: 1px solid var(--bittersweet); }
.card.border-sunflower    { border: 1px solid var(--sunflower); }
.card.border-grass        { border: 1px solid var(--grass); }
.card.border-mint         { border: 1px solid var(--mint); }
.card.border-aqua         { border: 1px solid var(--aqua); }
.card.border-bluejeans    { border: 1px solid var(--bluejeans); }
.card.border-lavender     { border: 1px solid var(--lavender); }
.card.border-pinkrose     { border: 1px solid var(--pinkrose); }
.card.border-gray-light   { border: 1px solid var(--gray-light-alt); }
.card.border-gray-medium  { border: 1px solid var(--gray-medium); }
.card.border-gray-dark    { border: 1px solid var(--gray-dark); }

.card-header.bg-grapefruit   { background-color: var(--grapefruit); color: #fff; border-bottom: 1px solid var(--grapefruit-dark); }
.card-header.bg-bittersweet  { background-color: var(--bittersweet); color: #fff; border-bottom: 1px solid var(--bittersweet-dark); }
.card-header.bg-sunflower    { background-color: var(--sunflower); color: #212529; border-bottom: 1px solid var(--sunflower-dark); }
.card-header.bg-grass        { background-color: var(--grass); color: #212529; border-bottom: 1px solid var(--grass-dark); }
.card-header.bg-mint         { background-color: var(--mint); color: #fff; border-bottom: 1px solid var(--mint-dark); }
.card-header.bg-aqua         { background-color: var(--aqua); color: #fff; border-bottom: 1px solid var(--aqua-dark); }
.card-header.bg-bluejeans    { background-color: var(--bluejeans); color: #fff; border-bottom: 1px solid var(--bluejeans-dark); }
.card-header.bg-lavender     { background-color: var(--lavender); color: #fff; border-bottom: 1px solid var(--lavender-dark); }
.card-header.bg-pinkrose     { background-color: var(--pinkrose); color: #fff; border-bottom: 1px solid var(--pinkrose-dark); }
.card-header.bg-gray-light   { background-color: var(--gray-light); color: #212529; border-bottom: 1px solid var(--gray-light-alt); }
.card-header.bg-gray-medium  { background-color: var(--gray-medium); color: #212529; border-bottom: 1px solid var(--gray-medium-dark); }
.card-header.bg-gray-dark    { background-color: var(--gray-dark); color: #fff; border-bottom: 1px solid var(--gray-darkest); }



/*--------------------------------------
🌙 CARD HEADER RENKLERİ (DARK TEMA)
--------------------------------------*/
[data-bs-theme="dark"] .card.border-grapefruit   { border-color: var(--grapefruit-dark); }
[data-bs-theme="dark"] .card.border-bittersweet  { border-color: var(--bittersweet-dark); }
[data-bs-theme="dark"] .card.border-sunflower    { border-color: var(--sunflower-dark); }
[data-bs-theme="dark"] .card.border-grass        { border-color: var(--grass-dark); }
[data-bs-theme="dark"] .card.border-mint         { border-color: var(--mint-dark); }
[data-bs-theme="dark"] .card.border-aqua         { border-color: var(--aqua-dark); }
[data-bs-theme="dark"] .card.border-bluejeans    { border-color: var(--bluejeans-dark); }
[data-bs-theme="dark"] .card.border-lavender     { border-color: var(--lavender-dark); }
[data-bs-theme="dark"] .card.border-pinkrose     { border-color: var(--pinkrose-dark); }
[data-bs-theme="dark"] .card.border-gray-light   { border-color: var(--gray-light-alt); }
[data-bs-theme="dark"] .card.border-gray-medium  { border-color: var(--gray-medium-dark); }
[data-bs-theme="dark"] .card.border-gray-dark    { border-color: var(--gray-darkest); }

[data-bs-theme="dark"] .card-header.bg-grapefruit   { background-color: var(--grapefruit-dark); color: #fff; border-bottom: 1px solid var(--grapefruit); }
[data-bs-theme="dark"] .card-header.bg-bittersweet  { background-color: var(--bittersweet-dark); color: #fff; border-bottom: 1px solid var(--bittersweet); }
[data-bs-theme="dark"] .card-header.bg-sunflower    { background-color: var(--sunflower-dark); color: #212529; border-bottom: 1px solid var(--sunflower); }
[data-bs-theme="dark"] .card-header.bg-grass        { background-color: var(--grass-dark); color: #212529; border-bottom: 1px solid var(--grass); }
[data-bs-theme="dark"] .card-header.bg-mint         { background-color: var(--mint-dark); color: #fff; border-bottom: 1px solid var(--mint); }
[data-bs-theme="dark"] .card-header.bg-aqua         { background-color: var(--aqua-dark); color: #fff; border-bottom: 1px solid var(--aqua); }
[data-bs-theme="dark"] .card-header.bg-bluejeans    { background-color: var(--bluejeans-dark); color: #fff; border-bottom: 1px solid var(--bluejeans); }
[data-bs-theme="dark"] .card-header.bg-lavender     { background-color: var(--lavender-dark); color: #fff; border-bottom: 1px solid var(--lavender); }
[data-bs-theme="dark"] .card-header.bg-pinkrose     { background-color: var(--pinkrose-dark); color: #fff; border-bottom: 1px solid var(--pinkrose); }
[data-bs-theme="dark"] .card-header.bg-gray-light   { background-color: var(--gray-light-alt); color: #212529; border-bottom: 1px solid var(--gray-light); }
[data-bs-theme="dark"] .card-header.bg-gray-medium  { background-color: var(--gray-medium-dark); color: #f8f9fa; border-bottom: 1px solid var(--gray-medium); }
[data-bs-theme="dark"] .card-header.bg-gray-dark    { background-color: var(--gray-darkest); color: #f8f9fa; border-bottom: 1px solid var(--gray-dark); }







/*--------------------------------------
📌 NAVBAR & FOOTER
--------------------------------------*/
.navbar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1030;
  padding: 0.2rem 1rem;
  background-color: var(--sidebar-bg);
  border-bottom: 1px solid var(--border-color);
}

.footer {
  background-color: var(--sidebar-bg);
  border-top: 1px solid var(--border-color);
  padding: 1rem;
  color: var(--text-muted);
}

/*--------------------------------------
📌 SCROLLBAR
--------------------------------------*/
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
::-webkit-scrollbar-track {
  background: var(--body-bg);
}
::-webkit-scrollbar-thumb {
  background: var(--secondary-color);
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: var(--primary-color);
}

/*--------------------------------------
🧩 YARDIMCI SINIFLAR (Yeni Renkler İçin)
--------------------------------------*/
.bg-accent { background-color: var(--accent-color) !important; }
.text-accent { color: var(--accent-color) !important; }

.bg-neutral { background-color: var(--neutral-color) !important; }
.text-neutral { color: var(--neutral-color) !important; }

.text-truncate-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/*--------------------------------------
🎯 BUTONLAR - ÖZEL TANIMLAR
--------------------------------------*/
.btn-sari {
  background-color: #f9a825;
  color: #fff;
  border: none;
}
.btn-sari:hover {
  background-color: #f57f17;
  color: #fff;
}

.btn-accent {
  background-color: var(--accent-color);
  color: #fff;
  border: none;
}
.btn-accent:hover {
  background-color: #3a3d5e;
}

/*--------------------------------------
🔔 BADGE & ALERT (Yumuşak Tonlar)
--------------------------------------*/
.badge-soft-primary {
  background-color: rgba(0, 51, 102, 0.1);
  color: var(--primary-color);
}

.badge-soft-accent {
  background-color: rgba(75, 78, 109, 0.1);
  color: var(--accent-color);
}

.alert-accent {
  background-color: rgba(75, 78, 109, 0.15);
  border-left: 5px solid var(--accent-color);
  color: var(--accent-color);
}


/*--------------------------------------
📝 FORM ELEMANLARI VE INPUT STİLLERİ
--------------------------------------*/
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
select,
textarea {
  background-color: var(--card-bg);
  border: 1px solid var(--border-color);
  color: var(--text-color);
  padding: 0.45rem 0.75rem;
  border-radius: 0.375rem;
  transition: border-color 0.2s, box-shadow 0.2s;
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--primary-color);
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 51, 102, 0.2);
  background-color: var(--card-bg);
  color: var(--text-color);
}

input::placeholder,
textarea::placeholder {
  color: var(--text-muted);
  opacity: 0.7;
}

/*--------------------------------------
📍 CHECKBOX, RADIO, SWITCH
--------------------------------------*/
.form-check-input:checked {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
}

.form-switch .form-check-input:checked {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
}

.form-check-label {
  color: var(--text-color);
}

/*--------------------------------------
🔘 BUTON FOCUS & DISABLED
--------------------------------------*/
button:focus,
.btn:focus {
  box-shadow: 0 0 0 0.25rem rgba(0, 51, 102, 0.3);
}

button:disabled,
.btn:disabled {
  opacity: 0.6;
  pointer-events: none;
}

/*--------------------------------------
🔗 NAV & LINK VURGULARI
--------------------------------------*/
.nav-link.active,
.nav-pills .nav-link.active,
.nav-tabs .nav-link.active {
  color: var(--primary-color);
  background-color: rgba(0, 51, 102, 0.1);
  border-bottom: 2px solid var(--primary-color);
}

.nav-link:hover {
  color: var(--primary-color);
}

.dropdown-menu {
  background-color: var(--card-bg);
  border: 1px solid var(--border-color);
  box-shadow: 0 .5rem 1rem rgba(0, 0, 0, 0.1);
  color: var(--text-color);
}

.dropdown-item {
  color: var(--text-color);
}
.dropdown-item:hover,
.dropdown-item:focus {
  background-color: rgba(0, 51, 102, 0.05);
  color: var(--primary-color);
}

/*--------------------------------------
📅 TAKVİM VE TABLOLAR
--------------------------------------*/
.table th,
.table td {
  border-color: var(--border-color);
  vertical-align: middle;
}

.table-hover tbody tr:hover {
  background-color: rgba(0, 51, 102, 0.03);
}

/*--------------------------------------
🧼 FORM TEMİZLEME BUTONU (opsiyonel)
--------------------------------------*/
.btn-clear {
  background: none;
  border: none;
  color: var(--text-muted);
}
.btn-clear:hover {
  color: var(--danger-color);
}


