:root{
  --primary:#2c3e50;
  --primary-dark:#233140;
  --success:#27ae60;
  --danger:#c0392b;
  --warning:#f39c12;
  --light-bg:#f8f9fa;
  --sidebar-w:240px;
}

body{ background:var(--light-bg); font-size:.925rem; }

/* ---- Layout ---- */
.app-sidebar{
  position:fixed; top:0; left:0; bottom:0; width:var(--sidebar-w);
  background:var(--primary); color:#c8d0d8; overflow-y:auto; z-index:1030;
  transition:transform .2s ease;
}
.app-sidebar .brand{
  padding:16px 18px; font-weight:600; color:#fff; font-size:1.05rem;
  border-bottom:1px solid rgba(255,255,255,.08); display:flex; align-items:center; gap:8px;
}
.app-sidebar .nav-link{
  color:#c8d0d8; padding:.6rem 1.1rem; border-radius:0; display:flex; align-items:center; gap:10px;
}
.app-sidebar .nav-link:hover{ background:rgba(255,255,255,.06); color:#fff; }
.app-sidebar .nav-link.active{ background:var(--primary-dark); color:#fff; border-left:3px solid var(--warning); }
.app-sidebar .nav-link i{ width:18px; text-align:center; }
.app-sidebar .nav-section{ font-size:.7rem; text-transform:uppercase; letter-spacing:.05em;
  color:#7f8c9a; padding:.9rem 1.1rem .3rem; }

.app-main{ margin-left:var(--sidebar-w); min-height:100vh; }
.app-topbar{
  background:#fff; border-bottom:1px solid #e6e9ec; padding:.55rem 1.25rem;
  display:flex; align-items:center; justify-content:space-between; position:sticky; top:0; z-index:1020;
}
.app-content{ padding:1.25rem; }

/* ---- Sidebar toggle (mobil) ---- */
.sidebar-backdrop{ position:fixed; inset:0; background:rgba(0,0,0,.4); z-index:1025; display:none; }
@media(max-width:991px){
  .app-sidebar{ transform:translateX(-100%); }
  body.sidebar-open .app-sidebar{ transform:translateX(0); }
  body.sidebar-open .sidebar-backdrop{ display:block; }
  .app-main{ margin-left:0; }
}

/* ---- Kartlar ---- */
.stat-card{ border:none; border-radius:10px; box-shadow:0 1px 3px rgba(0,0,0,.06); }
.stat-card .stat-value{ font-size:1.5rem; font-weight:700; }
.stat-card .stat-label{ color:#7f8c9a; font-size:.8rem; text-transform:uppercase; letter-spacing:.03em; }

.card{ border:none; border-radius:10px; box-shadow:0 1px 3px rgba(0,0,0,.06); }
.card-header{ background:#fff; border-bottom:1px solid #eef1f3; font-weight:600; }

.text-borc{ color:var(--danger); }
.text-alacak{ color:var(--success); }

.badge-durum{ font-weight:500; }

.table thead th{ font-size:.78rem; text-transform:uppercase; letter-spacing:.02em; color:#7f8c9a; }
.help-box{ border-left:4px solid #3498db; }

.btn-primary{ background:var(--primary); border-color:var(--primary); }
.btn-primary:hover{ background:var(--primary-dark); border-color:var(--primary-dark); }

/* Login */
.login-wrap{ min-height:100vh; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,var(--primary) 0%, #1a2530 100%); }
.login-card{ width:100%; max-width:400px; border-radius:14px; }
