/* Karigar Junction — Admin CMS panel styles (loaded together with css/style.css) */

body.admin-body{ background: var(--cream-2); }

.admin-shell{ display:flex; min-height:100vh; }

.admin-sidebar{
  width:250px; flex-shrink:0; background: var(--ink); color:#C7C9E6;
  padding:26px 18px; position:sticky; top:0; height:100vh; overflow-y:auto;
}
.admin-sidebar .logo{ color:var(--white); margin-bottom:30px; font-size:1.1rem; }
.admin-sidebar .logo-mark{ border-color: var(--amber); color:var(--amber); }
.admin-nav-group{ margin-bottom:20px; }
.admin-nav-group h6{ font-size:.68rem; text-transform:uppercase; letter-spacing:.08em; color:#8386B0; margin:0 0 8px 10px; font-weight:700; }
.admin-nav-group a{
  display:flex; align-items:center; gap:10px; padding:10px 12px; border-radius:10px;
  font-size:.88rem; font-weight:500; color:#C7C9E6; margin-bottom:2px;
}
.admin-nav-group a:hover{ background: rgba(255,255,255,.06); color:var(--white); }
.admin-nav-group a.active{ background: var(--teal); color:var(--white); }
.admin-nav-group a .icon{ width:16px; height:16px; flex-shrink:0; }
.admin-nav-badge{
  margin-left:auto; background:var(--amber); color:var(--ink); font-size:.68rem; font-weight:700;
  padding:1px 7px; border-radius:999px;
}

.admin-main{ flex:1; min-width:0; }
.admin-topbar{
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  background:var(--white); border-bottom:1px solid var(--line); padding:16px 28px;
  position:sticky; top:0; z-index:10;
}
.admin-topbar h1{ font-size:1.3rem; }
.admin-topbar-user{ display:flex; align-items:center; gap:14px; font-size:.86rem; color:var(--ink-soft); }
.admin-topbar-user a{ color:var(--teal-dark); font-weight:600; }
.admin-content{ padding:28px; max-width:1200px; }

.admin-card{ background:var(--white); border:1px solid var(--line); border-radius: var(--radius-sm); padding:24px; margin-bottom:24px; }

.admin-stat-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-bottom:24px; }
.admin-stat-card{ background:var(--white); border:1px solid var(--line); border-radius: var(--radius-sm); padding:20px; }
.admin-stat-card b{ display:block; font-family:var(--f-display); font-size:1.8rem; color:var(--teal-dark); }
.admin-stat-card span{ font-size:.82rem; color:var(--ink-soft); }
.admin-stat-card a{ display:inline-block; margin-top:10px; font-size:.8rem; font-weight:600; color:var(--teal-dark); }

.admin-toolbar{ display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; gap:12px; flex-wrap:wrap; }
.admin-toolbar h2{ font-size:1.2rem; }

.admin-table{ width:100%; border-collapse:collapse; font-size:.87rem; }
.admin-table th{ text-align:left; padding:10px 14px; background:var(--cream); font-size:.72rem; text-transform:uppercase; letter-spacing:.05em; color:var(--ink-soft); border-bottom:1px solid var(--line); }
.admin-table td{ padding:12px 14px; border-bottom:1px solid var(--line-soft); vertical-align:middle; }
.admin-table tr:hover td{ background:var(--cream); }
.admin-table .row-actions{ display:flex; gap:10px; white-space:nowrap; }
.admin-table .row-actions a{ font-size:.82rem; font-weight:600; color:var(--teal-dark); }
.admin-table .row-actions a.danger{ color:#B3402A; }
.admin-badge{ display:inline-block; padding:3px 10px; border-radius:999px; font-size:.72rem; font-weight:700; }
.admin-badge.yes{ background:#E1F1E7; color:#1E6B3E; }
.admin-badge.no{ background:#EFE9D2; color:#8A7A2E; }
.admin-empty{ padding:40px; text-align:center; color:var(--ink-soft); }

.admin-form-grid{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.admin-form-grid .full{ grid-column:1 / -1; }
.admin-field label{ display:block; font-size:.83rem; font-weight:600; margin-bottom:6px; }
.admin-field input[type="text"], .admin-field input[type="number"], .admin-field input[type="date"],
.admin-field input[type="password"], .admin-field select, .admin-field textarea{
  width:100%; border:1px solid var(--line); border-radius: var(--radius-sm); padding:10px 12px; background:var(--cream); font-family:var(--f-body); font-size:.92rem;
}
.admin-field textarea{ resize:vertical; }
.admin-field .hint{ font-size:.76rem; color:var(--ink-soft); margin-top:5px; }
.admin-field .check-row{ display:flex; align-items:center; gap:8px; }
.admin-field .check-row input{ width:17px; height:17px; accent-color:var(--teal); }
.admin-form-actions{ display:flex; gap:12px; margin-top:24px; padding-top:20px; border-top:1px solid var(--line-soft); }

.admin-login-shell{ min-height:100vh; display:flex; align-items:center; justify-content:center; background:var(--ink); padding:24px; }
.admin-login-card{ width:100%; max-width:380px; background:var(--white); border-radius: var(--radius-md); padding:36px; }
.admin-login-card .logo{ margin-bottom:24px; }
.admin-login-card h1{ font-size:1.4rem; margin-bottom:6px; }
.admin-login-card > p{ color:var(--ink-soft); font-size:.88rem; margin-bottom:22px; }

@media (max-width: 900px){
  .admin-sidebar{ display:none; }
  .admin-stat-grid{ grid-template-columns:1fr 1fr; }
  .admin-form-grid{ grid-template-columns:1fr; }
  .admin-content{ padding:18px; }
  .admin-table{ display:block; overflow-x:auto; white-space:nowrap; }
}
