﻿/*
  Erisilebilirlik (WCAG 2.2 AA / EN 301 549) - renk karsitligi.

  Skote temasinin paleti beyaz zeminde 4,5:1 sinirinin altinda kaliyordu (soluk gri 4,36, yesil 2,24,
  mavi 2,62, ana renk 4,41). Tema dosyalarina dokunulmuyor; ayni tonlar koyulastirilarak burada ezilir.
  Her deger beyaz ve acik gri (#eff2f7) zeminde en az 4,5:1 olcuyor (17.09.2026, axe, 26 ekran).
*/
:root,
[data-bs-theme="light"] {
  --bs-secondary-color: #595d70;
  --bs-gray: #595d70;
  --bs-secondary: #5f6377;
  --bs-secondary-rgb: 95, 99, 119;
  --bs-primary: #4458d0;
  --bs-primary-rgb: 68, 88, 208;
  --bs-success: #17734f;
  --bs-success-rgb: 23, 115, 79;
  --bs-info: #1f6fb5;
  --bs-info-rgb: 31, 111, 181;
  --bs-danger: #c43c3c;
  --bs-danger-rgb: 196, 60, 60;
  --bs-link-color: #4458d0;
  --bs-link-color-rgb: 68, 88, 208;
  --bs-link-hover-color: #3346b0;
  --bs-link-hover-color-rgb: 51, 70, 176;
}

.text-muted {
  color: #595d70 !important;
}

.breadcrumb {
  --bs-breadcrumb-item-active-color: #595d70;
}

/* Sari zeminde beyaz yazi okunmuyor: rozet yazisi koyu, sari metin koyu kahve. */
.badge.bg-warning {
  color: #212529 !important;
}

.text-warning {
  color: #8a5a00 !important;
}

code {
  color: #b3246a;
}

.btn-primary {
  --bs-btn-bg: #4458d0;
  --bs-btn-border-color: #4458d0;
  --bs-btn-hover-bg: #3346b0;
  --bs-btn-hover-border-color: #3346b0;
  --bs-btn-active-bg: #2d3e9c;
  --bs-btn-active-border-color: #2d3e9c;
  --bs-btn-disabled-bg: #4458d0;
  --bs-btn-disabled-border-color: #4458d0;
  background-color: var(--bs-btn-bg);
  border-color: var(--bs-btn-border-color);
}

.btn-outline-primary {
  --bs-btn-color: #4458d0;
  --bs-btn-border-color: #4458d0;
  --bs-btn-hover-bg: #4458d0;
  --bs-btn-hover-border-color: #4458d0;
  --bs-btn-active-bg: #4458d0;
  --bs-btn-active-border-color: #4458d0;
  --bs-btn-disabled-color: #4458d0;
}

.btn-success {
  --bs-btn-bg: #17734f;
  --bs-btn-border-color: #17734f;
  --bs-btn-hover-bg: #125c3f;
  --bs-btn-hover-border-color: #125c3f;
  --bs-btn-active-bg: #104f36;
  --bs-btn-active-border-color: #104f36;
  --bs-btn-disabled-bg: #17734f;
  --bs-btn-disabled-border-color: #17734f;
  background-color: var(--bs-btn-bg);
  border-color: var(--bs-btn-border-color);
}

.btn-outline-success {
  --bs-btn-color: #17734f;
  --bs-btn-border-color: #17734f;
  --bs-btn-hover-bg: #17734f;
  --bs-btn-hover-border-color: #17734f;
  --bs-btn-active-bg: #17734f;
  --bs-btn-active-border-color: #17734f;
  --bs-btn-disabled-color: #17734f;
}

.btn-info {
  --bs-btn-bg: #1f6fb5;
  --bs-btn-border-color: #1f6fb5;
  --bs-btn-hover-bg: #195b94;
  --bs-btn-hover-border-color: #195b94;
  --bs-btn-active-bg: #165083;
  --bs-btn-active-border-color: #165083;
  background-color: var(--bs-btn-bg);
  border-color: var(--bs-btn-border-color);
}

.btn-outline-info {
  --bs-btn-color: #1f6fb5;
  --bs-btn-border-color: #1f6fb5;
  --bs-btn-hover-bg: #1f6fb5;
  --bs-btn-hover-border-color: #1f6fb5;
  --bs-btn-active-bg: #1f6fb5;
  --bs-btn-active-border-color: #1f6fb5;
}

.btn-danger {
  --bs-btn-bg: #c43c3c;
  --bs-btn-border-color: #c43c3c;
  --bs-btn-hover-bg: #a53131;
  --bs-btn-hover-border-color: #a53131;
  --bs-btn-active-bg: #942c2c;
  --bs-btn-active-border-color: #942c2c;
  background-color: var(--bs-btn-bg);
  border-color: var(--bs-btn-border-color);
}

.btn-outline-danger {
  --bs-btn-color: #c43c3c;
  --bs-btn-border-color: #c43c3c;
  --bs-btn-hover-bg: #c43c3c;
  --bs-btn-hover-border-color: #c43c3c;
  --bs-btn-active-bg: #c43c3c;
  --bs-btn-active-border-color: #c43c3c;
}

.btn-outline-secondary {
  --bs-btn-color: #595d70;
  --bs-btn-border-color: #8b8fa0;
  --bs-btn-hover-bg: #595d70;
  --bs-btn-hover-border-color: #595d70;
  --bs-btn-active-bg: #595d70;
  --bs-btn-active-border-color: #595d70;
}

.btn-link {
  --bs-btn-color: #4458d0;
  --bs-btn-hover-color: #3346b0;
  --bs-btn-active-color: #3346b0;
}

/* Koyu yan menu. */
body[data-sidebar="dark"] .menu-title {
  color: #9aa3bd;
}

body[data-sidebar="dark"] #sidebar-menu ul li ul.sub-menu li a {
  color: #b4bcd4;
}

body[data-sidebar="dark"] .logo-light .logo-lg {
  color: #c3cbe6;
}

body[data-sidebar="dark"] .logo-light .logo-lg .fw-bold {
  color: #8fa0f5;
}

.pagination {
  --bs-pagination-color: #4458d0;
  --bs-pagination-hover-color: #3346b0;
}

/* --- Klavye ------------------------------------------------------------------ */

/*
  "Icerige atla" baglantisi: yalniz klavyeyle odaklaninca gorunur (WCAG 2.4.1).
  Her sayfada yan menunun 30'u askin baglantisini gecmek zorunda kalinmaz.
*/
.icerige-atla {
  position: absolute;
  left: 1rem;
  top: -100px;
  z-index: 2000;
  padding: 0.5rem 1rem;
  background: #fff;
  color: #2d3e9c;
  border: 2px solid #2d3e9c;
  border-radius: 0.25rem;
  font-weight: 600;
}

.icerige-atla:focus {
  top: 0.5rem;
}

/*
  Odak gostergesi (WCAG 2.4.7 / 2.4.11). Tema bircok ogede odak cercevesini kaldiriyor; klavyeyle
  gezen kullanici nerede oldugunu goremiyordu. :focus-visible fareyle tiklamada gorunmez.
*/
a:focus-visible,
button:focus-visible,
.btn:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible,
.select2-selection:focus-visible,
.form-check-input:focus-visible,
.page-link:focus-visible {
  outline: 3px solid #2d3e9c !important;
  outline-offset: 2px;
  box-shadow: 0 0 0 5px #fff !important;
}

/* Koyu menude ve ust cubukta cerceve beyaz; tema bu ogelerde cerceve kalinligini sifirliyordu. */
body[data-sidebar="dark"] #sidebar-menu ul li a:focus-visible,
#page-topbar .header-item:focus-visible,
#page-topbar .logo:focus-visible {
  outline: 3px solid #fff !important;
  outline-offset: -3px;
  box-shadow: none !important;
}

#page-topbar .header-item:focus-visible,
#page-topbar .logo:focus-visible {
  outline-color: #2d3e9c !important;
}

/*
  Sayfa basligi artik h1 (tek ana baslik); temadaki h4 gorunumu korunur.

  ⚠️ BUYUK HARFE CEVIRME YOK: tarayici "Stok Karti" basligini "STOK KARTI" degil
  "STOK KARTI" yaparken noktasiz i'yi noktali I'ye cevirdi (kullanici, 23.09.2026).
  Turkce'de i/I ve i/I cifti ayri harfler; CSS bunu dogru yapamiyor. Baslik zaten
  tumce duzeninde yaziliyor, cevirmeye gerek yok.
*/
.page-title-box h1 {
  font-weight: 600;
  font-size: 16px !important;
  margin-bottom: 0;
}

/* Kart basliklari h2 olunca tema boyutu degismesin. */
h2.card-title {
  font-size: 15px;
}

/* Onay kutulari ve sayfalama: tiklama alani en az 24px (WCAG 2.5.8). Anahtar (form-switch) haric. */
.form-check:not(.form-switch) {
  padding-left: 32px;
}

.form-check:not(.form-switch) .form-check-input[type="checkbox"],
.form-check:not(.form-switch) .form-check-input[type="radio"] {
  width: 24px;
  height: 24px;
  margin-left: -32px;
  margin-top: -0.1em;
}

.form-check-inline:not(.form-switch) {
  padding-left: 32px;
}

/* Alt alta onay kutulari arasinda da 24px'lik alan kalsin; yoksa kutular birbirine degiyor sayiliyordu. */
.form-check:not(.form-switch) {
  min-height: 28px;
  margin-bottom: 4px;
}

.page-link {
  min-width: 24px;
  min-height: 24px;
  text-align: center;
}

/* Bootstrap sayfalama dugmelerini kenarliklari ust uste binecek sekilde -1px kaydiriyor; tiklama alanlari cakisiyordu. */
.pagination {
  gap: 2px;
}

.pagination .page-item .page-link {
  margin-left: 0;
}

/* --- Yan menu kategori basliklari --------------------------------------------- */

/* Baslik, altindaki baglantilardan ayirt edilemiyordu: altina ince bir cizgi. */
body[data-sidebar="dark"] .menu-title {
  margin: 8px 16px 4px;
  padding: 12px 4px 6px !important;
  border-bottom: 1px solid rgba(166, 176, 207, 0.35);
}
