/* Yönetim paneli ek stilleri (admin.css'in üstüne). */
.menu-sep { height: 1px; background: rgba(255, 255, 255, .08); margin: 10px 20px; }
.sidebar-footer form { margin: 0; }
.sidebar-footer .logout-btn { background: none; border: 0; width: 100%; cursor: pointer; text-align: left; display: flex; gap: 10px; align-items: center; padding: 12px 20px; color: inherit; }
.sidebar-overlay { display: none; position: fixed; inset: 0; background: rgba(0, 0, 0, .5); z-index: 999; }
.sidebar-overlay.show { display: block; }
@media (max-width: 991px) { .sidebar { transform: translateX(-100%); } .sidebar.open { transform: none; } }
.legend-dot { display: inline-block; width: 10px; height: 10px; border-radius: 3px; margin-right: 4px; }
.chart { width: 100%; height: auto; }
.chart .grid { stroke: rgba(128, 128, 128, .25); stroke-width: 1; }
.chart .axis { fill: #8a8fa3; font-size: 11px; }
.stat-card { color: inherit; }
.stat-icon.users { background: rgba(99, 102, 241, .15); color: #6366f1; }
.stat-icon.sessions { background: rgba(37, 211, 102, .15); color: #25D366; }
.row-link { cursor: pointer; }
.kv { display: flex; flex-direction: column; gap: 2px; padding: 4px 0; }
.kv > span { font-size: 12px; color: #8a8fa3; }
.section-h { text-transform: uppercase; letter-spacing: .06em; font-size: 12px; color: #8a8fa3; border-bottom: 1px solid rgba(128, 128, 128, .2); padding-bottom: 6px; margin-bottom: 14px; }
.plan-card { border: 1px solid rgba(128, 128, 128, .25); border-radius: 14px; padding: 18px; height: 100%; }
.plan-off { opacity: .6; }
.chip { display: inline-block; font-size: 11px; padding: 2px 8px; border-radius: 20px; margin: 0 4px 4px 0; }
.chip-on { background: rgba(37, 211, 102, .15); color: #16a34a; }
.chip-off { background: rgba(128, 128, 128, .12); color: #8a8fa3; text-decoration: line-through; }
.key-row { border-bottom: 1px solid rgba(128, 128, 128, .2); padding: 10px 0; }
.upload-box { border: 2px dashed rgba(128, 128, 128, .35); border-radius: 12px; padding: 16px; }
.admin-actions { min-width: 220px; background: rgba(128, 128, 128, .08); }

/* koyu tema: bootstrap bileşenleri */
body.dark-mode { background: #0f0f1a; color: #e2e8f0; }
body.dark-mode .table { --bs-table-color: #e2e8f0; --bs-table-bg: transparent; --bs-table-hover-bg: rgba(255, 255, 255, .04); --bs-table-hover-color: #fff; border-color: rgba(255, 255, 255, .1); }
body.dark-mode .table > :not(caption) > * > * { border-bottom-color: rgba(255, 255, 255, .08); }
body.dark-mode .form-control, body.dark-mode .form-select, body.dark-mode .input-group-text { background-color: #12122a; border-color: rgba(255, 255, 255, .15); color: #e2e8f0; }
body.dark-mode .form-control:disabled, body.dark-mode .form-control[readonly] { background-color: #0d0d20; color: #9aa3b5; }
body.dark-mode .form-control::placeholder { color: #6b7385; }
body.dark-mode .card-header, body.dark-mode .card-body { color: #e2e8f0; border-color: rgba(255, 255, 255, .08); }
body.dark-mode .plan-card { background: #1a1a2e; }
body.dark-mode .page-link { background: #1a1a2e; border-color: rgba(255, 255, 255, .1); color: #cbd5e1; }
body.dark-mode .page-item.active .page-link { background: #25D366; border-color: #25D366; color: #fff; }
body.dark-mode .alert-info { background: rgba(59, 130, 246, .12); color: #bfdbfe; border-color: rgba(59, 130, 246, .3); }
body.dark-mode .alert-warning { background: rgba(245, 158, 11, .12); color: #fde68a; border-color: rgba(245, 158, 11, .3); }
body.dark-mode .alert-success { background: rgba(37, 211, 102, .12); color: #bbf7d0; border-color: rgba(37, 211, 102, .3); }
body.dark-mode .alert-danger { background: rgba(239, 68, 68, .12); color: #fecaca; border-color: rgba(239, 68, 68, .3); }
body.dark-mode .alert-dark { background: rgba(255, 255, 255, .06); color: #cbd5e1; }
body.dark-mode a { color: #4ade80; }
body.dark-mode .btn-link { color: #4ade80; }
body.dark-mode code { color: #f9a8d4; }
body.dark-mode details summary { list-style: none; }
body.dark-mode .btn-close { filter: invert(1); }
body.dark-mode .text-muted { color: #8a8fa3 !important; }
body.dark-mode .stat-card, body.dark-mode .card-container { color: #e2e8f0; }

/* giriş sayfası */
.login-body { min-height: 100vh; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #0f0c29 0%, #302b63 50%, #24243e 100%); padding: 20px; }
.login-container { width: 100%; max-width: 400px; }
.login-card { background: rgba(30, 30, 40, .95); border-radius: 24px; padding: 36px; border: 1px solid rgba(255, 255, 255, .1); box-shadow: 0 25px 50px rgba(0, 0, 0, .5); }
.login-card .form-control { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .15); color: #fff; }
