/* (2026-10-17) KURUMSAL TEMA — kullanıcının verdiği 14 ekranlık tasarım
   (sankibu_admin_kurumsal_14_ekran.zip) uygulandı. Lacivert + turuncu, beyaz kartlar,
   açık gri-mavi zemin. Sayfaların Bootstrap işaretlemesi büyük ölçüde korunuyor; görünüm
   buradaki sınıf geçersiz kılmalarıyla değişiyor. Yazı tipi sistemden — CSP
   (default-src 'self') dış yazı tipi kaynağına izin vermiyor. */

:root {
  --sb-lacivert: #13294b;
  --sb-lacivert-2: #1d3a66;
  --sb-turuncu: #ff6a24;
  --sb-turuncu-acik: #fff1e8;
  --sb-mavi: #3a7bdc;
  --sb-mavi-acik: #eaf2ff;
  --sb-yesil: #149a63;
  --sb-yesil-acik: #e6f6ee;
  --sb-sari: #b7791f;
  --sb-sari-acik: #fff6dc;
  --sb-kirmizi: #dc3545;
  --sb-kirmizi-acik: #fdecee;
  --sb-mor: #6f52d9;
  --sb-mor-acik: #f0ecff;
  --sb-zemin: #f4f7fb;
  --sb-kart: #ffffff;
  --sb-cizgi: #e3e9f2;
  --sb-yazi: #1c2b45;
  --sb-soluk: #6b7a93;
  --sb-radius: 16px;
  --bs-body-font-family: "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif;
}

html { font-size: 14px; position: relative; min-height: 100%; }
@media (min-width: 768px) { html { font-size: 15px; } }

body {
  background: var(--sb-zemin);
  color: var(--sb-yazi);
  font-family: var(--bs-body-font-family);
}

a { color: var(--sb-mavi); }
a:hover { color: var(--sb-lacivert-2); }

/* ---------- Üst çubuk ---------- */
.sb-ust {
  background: #fff;
  border-bottom: 1px solid var(--sb-cizgi);
  position: sticky; top: 0; z-index: 1030;
}
.sb-ust-ic {
  display: flex; align-items: center; gap: 1rem;
  max-width: 1600px; margin: 0 auto; padding: 0 24px; min-height: 64px;
}
.sb-logo { font-weight: 800; font-size: 1.6rem; color: var(--sb-lacivert); text-decoration: none; letter-spacing: -.01em; white-space: nowrap; }
.sb-logo span { color: var(--sb-turuncu); }
.sb-logo:hover { color: var(--sb-lacivert); }
.sb-rozet-admin { font-size: .78rem; font-weight: 700; color: var(--sb-soluk); letter-spacing: .06em; }

/* Menü taşarsa yatay kayar — tasarım dosyasında sekmeler üst üste biniyordu. */
.sb-menu {
  display: flex; align-items: stretch; gap: 2px; flex: 1; min-width: 0;
  overflow-x: auto; scrollbar-width: thin; list-style: none; margin: 0; padding: 0;
}
.sb-menu a, .sb-menu button {
  display: flex; align-items: center; gap: .4rem; white-space: nowrap;
  padding: .5rem .55rem; margin: 10px 0; border-radius: 12px;
  color: var(--sb-lacivert); font-weight: 600; font-size: .86rem; text-decoration: none;
  background: none; border: 0; position: relative;
}
.sb-menu a:hover, .sb-menu button:hover { background: var(--sb-zemin); }
.sb-menu a.aktif { background: var(--sb-turuncu-acik); color: var(--sb-turuncu); }
.sb-menu a.aktif::after {
  content: ""; position: absolute; left: 6px; right: 6px; bottom: -10px; height: 3px;
  background: var(--sb-turuncu); border-radius: 3px;
}
.sb-menu svg { width: 15px; height: 15px; flex: none; }
@media (max-width: 1480px) { .sb-menu svg { display: none; } .sb-menu-sag svg { display: block; } }
.sb-menu-sag { display: flex; align-items: center; gap: 2px; border-left: 1px solid var(--sb-cizgi); padding-left: .5rem; }
.sb-menu-sag form { margin: 0; }

/* ---------- Gövde ---------- */
.sb-govde { max-width: 1600px; margin: 0 auto; padding: 32px 24px 24px; }
@media (max-width: 576px) { .sb-govde, .sb-ust-ic { padding-left: 16px; padding-right: 16px; } }

.sb-govde > main > h2:first-child,
.sb-sayfa-bas h2 {
  font-size: 2rem; font-weight: 800; color: var(--sb-lacivert); letter-spacing: -.01em; margin-bottom: .25rem;
}
.sb-sayfa-bas { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: 1.5rem; }
.sb-sayfa-bas p { color: var(--sb-soluk); margin: 0; font-size: 1.02rem; }
.sb-hap {
  display: inline-flex; align-items: center; gap: .35rem;
  padding: .3rem .8rem; border-radius: 999px; font-weight: 700; font-size: .82rem;
  background: var(--sb-mavi-acik); color: var(--sb-mavi); white-space: nowrap;
}
.sb-hap.turuncu { background: var(--sb-turuncu-acik); color: var(--sb-turuncu); text-transform: uppercase; letter-spacing: .03em; }
.sb-hap.yesil { background: var(--sb-yesil-acik); color: var(--sb-yesil); }

h3, h4, .h5 { color: var(--sb-lacivert); }
h4 { font-size: 1.2rem; font-weight: 600; margin-top: 1.5rem; }
.text-muted { color: var(--sb-soluk) !important; }

/* ---------- Kartlar ---------- */
.card {
  border: 1px solid var(--sb-cizgi); border-radius: var(--sb-radius);
  background: var(--sb-kart); box-shadow: 0 1px 2px rgba(19, 41, 75, .04);
}
.card-title { color: var(--sb-lacivert); font-weight: 600; }
a > .card { transition: box-shadow .15s, transform .15s; }
a:hover > .card { box-shadow: 0 6px 18px rgba(19, 41, 75, .09); transform: translateY(-1px); }

.sb-kutu { background: #fff; border: 1px solid var(--sb-cizgi); border-radius: var(--sb-radius); padding: 22px 24px; margin-bottom: 24px; }
.sb-kutu-bas { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: 1rem; }
.sb-kutu-bas h3, .sb-kutu > h3:first-child { font-size: 1.25rem; font-weight: 500; margin: 0; color: var(--sb-lacivert); }
.sb-kutu .table { box-shadow: none; border: 0; margin-bottom: 0; }

/* İstatistik kartı: ikon + etiket + büyük sayı + alt not */
.sb-stat { display: flex; flex-direction: row; gap: 14px; align-items: flex-start; padding: 18px 18px; height: 100%; }
.sb-stat .ikon {
  width: 44px; height: 44px; border-radius: 12px; flex: none;
  display: flex; align-items: center; justify-content: center;
  background: var(--sb-mavi-acik); color: var(--sb-mavi);
}
.sb-stat .ikon svg { width: 20px; height: 20px; }
.sb-stat .ikon.turuncu { background: var(--sb-turuncu-acik); color: var(--sb-turuncu); }
.sb-stat .ikon.mor { background: var(--sb-mor-acik); color: var(--sb-mor); }
.sb-stat .ikon.sari { background: var(--sb-sari-acik); color: #e0a21a; }
.sb-stat .ikon.yesil { background: var(--sb-yesil-acik); color: var(--sb-yesil); }
.sb-stat .ikon.kirmizi { background: var(--sb-kirmizi-acik); color: var(--sb-kirmizi); }
.sb-stat .etiket { color: var(--sb-soluk); font-size: .95rem; }
.sb-stat .sayi { font-size: 1.85rem; font-weight: 800; color: var(--sb-lacivert); line-height: 1.2; margin: 2px 0; }
.sb-stat .not { font-size: .85rem; color: var(--sb-yesil); }
.sb-stat .not.uyari { color: var(--sb-sari); }
.sb-stat .not.soluk { color: var(--sb-soluk); }

/* "Dikkat gerektirenler" listesi */
.sb-dikkat { display: flex; gap: 14px; align-items: flex-start; padding: 12px 0; text-decoration: none; }
.sb-dikkat .nokta {
  width: 38px; height: 38px; border-radius: 50%; flex: none; display: flex; align-items: center; justify-content: center;
  font-weight: 800; background: var(--sb-sari-acik); color: #e0a21a;
}
.sb-dikkat .nokta.kirmizi { background: var(--sb-kirmizi-acik); color: var(--sb-kirmizi); }
.sb-dikkat .nokta.yesil { background: var(--sb-yesil-acik); color: var(--sb-yesil); }
.sb-dikkat strong { display: block; color: var(--sb-lacivert); font-size: 1.05rem; }
.sb-dikkat span { color: var(--sb-soluk); font-size: .88rem; }

/* Basit sütun grafiği (CSS) */
.sb-grafik { display: flex; align-items: flex-end; gap: 4%; height: 220px; padding: 0 2% 0; }
.sb-grafik .sutun { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; height: 100%; gap: 6px; }
.sb-grafik .cubuk { width: 100%; max-width: 56px; background: var(--sb-mavi); border-radius: 8px 8px 4px 4px; min-height: 4px; }
.sb-grafik .sutun:nth-child(even) .cubuk { background: var(--sb-turuncu); }
.sb-grafik .deger { font-size: .8rem; font-weight: 700; color: var(--sb-lacivert); }
.sb-grafik .ad { font-size: .8rem; color: var(--sb-soluk); }

/* Lacivert vurgu bandı (Ödül Avı, Güvenlik) */
.sb-bant {
  background: linear-gradient(120deg, var(--sb-lacivert), var(--sb-lacivert-2));
  color: #fff; border-radius: var(--sb-radius); padding: 22px 26px; margin-bottom: 24px;
}
.sb-bant h3 { color: #fff; font-weight: 800; font-size: 1.35rem; margin: .3rem 0; }
.sb-bant p { color: rgba(255,255,255,.75); margin: 0; }

/* ---------- Tablolar ---------- */
.table {
  --bs-table-bg: transparent; --bs-table-striped-bg: #fafcff; --bs-table-hover-bg: #f5f8fd;
  --bs-table-color: var(--sb-yazi);
  background: #fff; border-collapse: separate; border-spacing: 0;
  border: 1px solid var(--sb-cizgi); border-radius: var(--sb-radius); overflow: hidden;
  box-shadow: 0 1px 2px rgba(19, 41, 75, .04);
}
.table > :not(caption) > * > * { padding: .85rem 1rem; border-bottom-color: var(--sb-cizgi); }
.table-sm > :not(caption) > * > * { padding: .55rem .8rem; }
.table thead th {
  background: #f0f4fa; color: var(--sb-soluk); font-size: .78rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: .04em; border-bottom: 0;
}
.table tbody tr:last-child > * { border-bottom: 0; }
.table-warning { --bs-table-bg: #fffaf0; --bs-table-striped-bg: #fff6e3; }
.card .table { box-shadow: none; }

/* ---------- Rozetler (yumuşak hap) ---------- */
.badge { border-radius: 999px; padding: .42em .85em; font-weight: 700; font-size: .78rem; }
.badge.bg-success { background: var(--sb-yesil-acik) !important; color: var(--sb-yesil) !important; }
.badge.bg-warning { background: var(--sb-sari-acik) !important; color: var(--sb-sari) !important; }
.badge.bg-danger { background: var(--sb-kirmizi-acik) !important; color: var(--sb-kirmizi) !important; }
.badge.bg-secondary { background: #eef1f6 !important; color: var(--sb-soluk) !important; }
.badge.bg-primary, .badge.bg-info { background: var(--sb-mavi-acik) !important; color: var(--sb-mavi) !important; }
.badge.bg-dark { background: var(--sb-lacivert) !important; color: #fff !important; }
.badge.bg-light { background: #fff !important; }

/* ---------- Düğmeler ---------- */
.btn { border-radius: 10px; font-weight: 600; }
.btn-primary { background: var(--sb-turuncu); border-color: var(--sb-turuncu); color: #fff; }
.btn-primary:hover, .btn-primary:focus, .btn-primary:active { background: #ea5a16 !important; border-color: #ea5a16 !important; color: #fff; }
.btn-success { background: var(--sb-lacivert); border-color: var(--sb-lacivert); }
.btn-success:hover, .btn-success:active { background: var(--sb-lacivert-2) !important; border-color: var(--sb-lacivert-2) !important; }
.btn-outline-success { color: var(--sb-yesil); border-color: #bfe6d3; background: var(--sb-yesil-acik); }
.btn-outline-success:hover { background: var(--sb-yesil); border-color: var(--sb-yesil); color: #fff; }
.btn-outline-danger { color: var(--sb-kirmizi); border-color: #f4c7cc; background: #fff; }
.btn-outline-secondary { color: var(--sb-lacivert); border-color: var(--sb-cizgi); background: #fff; }
.btn-outline-secondary:hover { background: var(--sb-zemin); color: var(--sb-lacivert); border-color: var(--sb-cizgi); }
.btn-outline-primary { color: var(--sb-mavi); border-color: #c9dbf6; background: var(--sb-mavi-acik); }
.btn-outline-primary:hover { background: var(--sb-mavi); border-color: var(--sb-mavi); }

.btn:focus, .btn:active:focus, .form-control:focus, .form-check-input:focus, .form-select:focus {
  box-shadow: 0 0 0 .2rem rgba(255, 106, 36, .2);
}

/* ---------- Formlar ---------- */
.form-control, .form-select { border-radius: 10px; border-color: var(--sb-cizgi); padding: .6rem .85rem; }
.form-control-sm { padding: .4rem .7rem; }
.form-control:focus, .form-select:focus { border-color: #ffb08a; }
.form-label { font-weight: 600; color: var(--sb-lacivert); font-size: .9rem; }

/* ---------- Uyarılar ---------- */
.alert { border-radius: 14px; border: 1px solid transparent; }
.alert-success { background: var(--sb-yesil-acik); border-color: #c9ebd9; color: #0f6b45; }
.alert-warning { background: var(--sb-sari-acik); border-color: #f3dfa6; color: #7a5410; }
.alert-danger { background: var(--sb-kirmizi-acik); border-color: #f4c7cc; color: #8e1f2b; }
.alert-secondary, .alert-light { background: #fff; border-color: var(--sb-cizgi); color: var(--sb-soluk); }

.progress { background: #eef2f8; border-radius: 999px; }

/* ---------- Alt bilgi ---------- */
.sb-alt { max-width: 1600px; margin: 0 auto; padding: 0 24px 24px; }
.sb-alt div { border-top: 1px solid var(--sb-cizgi); padding-top: 14px; color: var(--sb-soluk); font-size: .85rem; }

/* ---------- Giriş / çıkış sayfası ---------- */
.sb-giris { min-height: 100vh; display: grid; grid-template-columns: minmax(0, 37%) 1fr; background: var(--sb-zemin); }
.sb-giris-sol { background: var(--sb-lacivert); color: #fff; padding: 64px; position: relative; overflow: hidden; }
.sb-giris-sol::before, .sb-giris-sol::after { content: ""; position: absolute; border-radius: 50%; background: #1b3a6b; }
.sb-giris-sol::before { width: 480px; height: 480px; right: -190px; top: -220px; background: #22487d; }
.sb-giris-sol::after { width: 860px; height: 860px; left: -440px; bottom: -420px; }
.sb-giris-sol > * { position: relative; z-index: 1; }
.sb-giris-sol .sb-logo { color: #fff; font-size: 2.2rem; }
.sb-giris-sol .etiket { display: inline-block; margin-top: 18px; padding: .35rem .7rem; border-radius: 999px; background: rgba(255,255,255,.12); font-size: .75rem; font-weight: 700; letter-spacing: .04em; }
.sb-giris-sol h1 { font-size: 2.4rem; font-weight: 800; margin: 56px 0 18px; line-height: 1.2; }
.sb-giris-sol h1 span { color: var(--sb-turuncu); }
.sb-giris-sol p { color: rgba(255,255,255,.82); font-size: 1.15rem; max-width: 360px; }
.sb-giris-sol ol { list-style: none; padding: 0; margin: 64px 0 0; }
.sb-giris-sol li { display: flex; align-items: center; gap: 18px; margin-bottom: 26px; font-size: 1.05rem; }
.sb-giris-sol li b { width: 54px; height: 46px; border-radius: 10px; background: rgba(255,255,255,.12); display: flex; align-items: center; justify-content: center; font-size: .85rem; }
.sb-giris-sag { display: flex; align-items: center; justify-content: center; padding: 40px 24px; }
.sb-giris-kart { width: 100%; max-width: 740px; background: #fff; border: 1px solid var(--sb-cizgi); border-radius: 22px; padding: 56px 60px 40px; }
.sb-giris-kart h2 { font-size: 2.2rem; font-weight: 800; color: var(--sb-lacivert); margin: 0; }
.sb-giris-kart .alt { color: var(--sb-soluk); margin: .3rem 0 2.5rem; font-size: 1.05rem; }
.sb-giris-kart h3 { font-size: 1.05rem; font-weight: 700; color: var(--sb-lacivert); }
.sb-google {
  display: flex; align-items: center; gap: 14px; width: 100%; padding: 12px 18px; margin-top: 18px;
  border: 1px solid var(--sb-cizgi); border-radius: 12px; background: #fff; color: var(--sb-lacivert);
  text-decoration: none; font-size: 1.05rem; font-weight: 500;
}
.sb-google:hover { border-color: #ffb08a; color: var(--sb-lacivert); box-shadow: 0 4px 14px rgba(255,106,36,.12); }
.sb-google .g { width: 30px; height: 30px; border-radius: 8px; background: var(--sb-zemin); display: flex; align-items: center; justify-content: center; font-weight: 700; color: #4285f4; }
.sb-google .ok { margin-left: auto; color: var(--sb-turuncu); font-size: 1.2rem; }
.sb-giris-kart hr { border: 0; border-top: 1px solid var(--sb-cizgi); opacity: 1; margin: 2.5rem 0 2rem; }
.sb-giris-kart .telif { color: var(--sb-soluk); font-size: .85rem; margin-top: 3.5rem; }
@media (max-width: 900px) {
  .sb-giris { grid-template-columns: 1fr; }
  .sb-giris-sol { padding: 32px 20px; }
  .sb-giris-sol h1 { margin-top: 28px; font-size: 1.8rem; }
  .sb-giris-sol ol { display: none; }
  .sb-giris-kart { padding: 32px 22px; }
}

/* Dar ekranda menü kendi satırına iner ve yatay kayar; logo + Güvenlik/Çıkış üstte kalır. */
@media (max-width: 900px) {
  .sb-ust-ic { flex-wrap: wrap; gap: .5rem 1rem; padding-top: 6px; }
  .sb-menu-sag { margin-left: auto; border-left: 0; }
  .sb-menu:not(.sb-menu-sag) { order: 3; flex-basis: 100%; }
  .sb-menu a, .sb-menu button { margin: 4px 0 8px; }
  .sb-menu a.aktif::after { bottom: -8px; }
}
