/* ================= Admin Panel Styles ================= */
:root{
  --maroon:#7a1533;--maroon-dark:#5c0f26;--gold:#c9a227;
  --ink:#2b2b2b;--muted:#6b7280;--line:#e5e7eb;--bg:#f4f5f7;--rose:#fdf1f4;
  --radius:12px;--shadow:0 8px 24px rgba(0,0,0,.08);
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Poppins',system-ui,sans-serif;background:var(--bg);color:var(--ink);font-size:15px}
a{text-decoration:none;color:inherit}
.admin-wrap{display:flex;min-height:100vh}

/* Sidebar */
.sidebar{width:250px;background:linear-gradient(180deg,var(--maroon-dark),var(--maroon));color:#f3dbe3;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;z-index:40}
.side-brand{display:flex;gap:12px;align-items:center;padding:20px 18px;border-bottom:1px solid rgba(255,255,255,.12)}
.side-brand small{color:#e3b9c6;font-size:.72rem}
.side-emblem{width:44px;height:44px;border-radius:50%;background:var(--gold);color:var(--maroon-dark);display:grid;place-items:center;font-weight:700;font-size:1.3rem;flex-shrink:0}
.side-nav{padding:12px 0}
.side-nav a{display:block;padding:12px 20px;color:#f0d3db;font-size:.92rem;border-left:3px solid transparent;transition:.2s}
.side-nav a:hover{background:rgba(0,0,0,.18);color:#fff}
.side-nav a.active{background:rgba(0,0,0,.28);color:#fff;border-left-color:var(--gold)}
.side-nav a.logout{margin-top:8px;color:#ffd9d9}

/* Main */
.admin-main{margin-left:250px;flex:1;display:flex;flex-direction:column;min-width:0}
.admin-top{background:#fff;padding:16px 26px;display:flex;align-items:center;gap:16px;box-shadow:0 1px 6px rgba(0,0,0,.05);position:sticky;top:0;z-index:30}
.admin-top h1{font-size:1.3rem;color:var(--maroon-dark);flex:1}
.admin-user{color:var(--muted);font-size:.9rem}
.burger{display:none;font-size:1.4rem;background:none;border:none;color:var(--maroon);cursor:pointer}
.admin-content{padding:26px}

/* Cards / stat tiles */
.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:26px}
.tile{background:#fff;border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);border-left:4px solid var(--maroon)}
.tile .num{font-size:2rem;font-weight:700;color:var(--maroon-dark)}
.tile .lbl{color:var(--muted);font-size:.88rem}
.tile.g{border-left-color:var(--gold)}

.panel{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:24px;margin-bottom:24px}
.panel h2,.panel h3{color:var(--maroon-dark);margin-bottom:16px;font-size:1.15rem}
.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;flex-wrap:wrap;gap:10px}
.panel-head h2{margin:0}

/* Forms */
.field{margin-bottom:16px}
.field label{display:block;font-weight:500;margin-bottom:6px;font-size:.9rem}
.field input,.field textarea,.field select{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:8px;font-family:inherit;font-size:.92rem;background:#fff}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--maroon);box-shadow:0 0 0 3px rgba(122,21,51,.08)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
.checkline{display:flex;align-items:center;gap:8px}
.checkline input{width:auto}

/* Buttons */
.btn{display:inline-block;background:var(--maroon);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;font-size:.9rem;transition:.2s}
.btn:hover{background:var(--maroon-dark)}
.btn-gold{background:var(--gold);color:#3a2c00}
.btn-sm{padding:6px 12px;font-size:.82rem}
.btn-danger{background:#c0392b}.btn-danger:hover{background:#a93226}
.btn-light{background:#eee;color:#333}.btn-light:hover{background:#e0e0e0}

/* Table */
.table-wrap{overflow-x:auto}
table.tbl{width:100%;border-collapse:collapse;font-size:.9rem}
table.tbl th,table.tbl td{padding:11px 12px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}
table.tbl th{background:var(--rose);color:var(--maroon-dark);font-weight:600}
table.tbl tr:hover td{background:#faf7f8}
table.tbl img{width:46px;height:46px;object-fit:cover;border-radius:8px}
.pill{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.72rem;font-weight:600}
.pill.on{background:#e6f6ec;color:#1c7a3f}
.pill.off{background:#fdeaea;color:#b02a2a}
.pill.new{background:var(--gold);color:#3a2c00}
.actions{display:flex;gap:8px;flex-wrap:wrap}

/* Alerts */
.alert{padding:13px 16px;border-radius:8px;margin-bottom:18px;font-size:.92rem}
.alert-success{background:#e6f6ec;color:#1c7a3f;border:1px solid #b6e2c6}
.alert-error{background:#fdeaea;color:#b02a2a;border:1px solid #f3c2c2}

/* Login */
.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,var(--maroon-dark),var(--maroon))}
.login-card{background:#fff;border-radius:16px;box-shadow:0 20px 50px rgba(0,0,0,.3);padding:38px 34px;width:100%;max-width:390px}
.login-card .lc-emblem{width:64px;height:64px;border-radius:50%;background:var(--maroon);color:var(--gold);display:grid;place-items:center;font-size:1.9rem;font-weight:700;margin:0 auto 14px}
.login-card h1{text-align:center;color:var(--maroon-dark);font-size:1.4rem;margin-bottom:4px}
.login-card .sub{text-align:center;color:var(--muted);font-size:.85rem;margin-bottom:24px}
.login-card .btn{width:100%;padding:12px}
.login-hint{margin-top:16px;text-align:center;font-size:.8rem;color:var(--muted)}

img.thumb-preview{max-width:120px;border-radius:8px;margin-top:8px;border:1px solid var(--line)}

@media(max-width:860px){
  .sidebar{left:-260px;transition:.25s}
  .sidebar.open{left:0}
  .admin-main{margin-left:0}
  .burger{display:block}
  .stat-row{grid-template-columns:1fr 1fr}
  .grid2,.grid3{grid-template-columns:1fr}
}
