/* ===== Admin Panel Styles ===== */
:root{
  --primary:#c8102e;
  --dark:#1a1a2e;
  --sidebar-w:250px;
  --gray:#6b7280;
  --border:#e5e7eb;
  --light:#f3f4f6;
  --green:#16a34a;
  --yellow:#eab308;
  --red:#dc2626;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Segoe UI',system-ui,sans-serif;background:var(--light);color:#1f2937}
a{text-decoration:none;color:inherit}

/* Login */
.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e,#c8102e)}
.login-box{background:#fff;border-radius:12px;padding:40px;width:100%;max-width:400px;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.login-box .logo{text-align:center;font-size:28px;font-weight:800;margin-bottom:8px}
.login-box .logo span{color:var(--primary)}
.login-box p{text-align:center;color:var(--gray);margin-bottom:24px;font-size:14px}

.form-group{margin-bottom:16px}
.form-group label{display:block;font-weight:600;font-size:14px;margin-bottom:6px}
.form-group input,.form-group select,.form-group textarea{
  width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:6px;font-size:15px;font-family:inherit}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:2px solid var(--primary);border-color:var(--primary)}
.btn{display:inline-block;padding:10px 20px;border:none;border-radius:6px;font-weight:700;font-size:14px;cursor:pointer;transition:.2s}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{background:var(--primary-dark,#9a0c23)}
.btn-green{background:var(--green);color:#fff}
.btn-yellow{background:var(--yellow);color:#fff}
.btn-red{background:var(--red);color:#fff}
.btn-gray{background:var(--gray);color:#fff}
.btn-sm{padding:5px 10px;font-size:12px}
.btn-block{width:100%;padding:12px}

/* Admin layout */
.admin-header{background:var(--dark);color:#fff;padding:0 20px;height:60px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100}
.admin-header .brand{font-size:20px;font-weight:800}
.admin-header .brand span{color:var(--primary)}
.admin-header .user-area{display:flex;align-items:center;gap:14px;font-size:14px}
.admin-header .user-area a{color:#cbd5e1;font-size:13px}
.admin-body{display:flex}
.sidebar{width:var(--sidebar-w);background:var(--dark);min-height:calc(100vh - 60px);padding:16px 0;position:fixed}
.sidebar a{display:block;padding:12px 20px;color:#cbd5e1;font-weight:600;font-size:14px;border-left:3px solid transparent}
.sidebar a:hover{background:rgba(255,255,255,.08);color:#fff}
.sidebar a.active{background:rgba(200,16,46,.2);border-left-color:var(--primary);color:#fff}
.sidebar .group-label{padding:10px 20px;font-size:11px;text-transform:uppercase;color:#64748b;letter-spacing:1px}
.main{margin-left:var(--sidebar-w);padding:24px;flex:1;width:calc(100% - var(--sidebar-w))}

/* Cards */
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}
.stat-card{background:#fff;border-radius:8px;padding:20px;box-shadow:0 1px 3px rgba(0,0,0,.1)}
.stat-card .num{font-size:32px;font-weight:800;color:var(--dark)}
.stat-card .label{color:var(--gray);font-size:13px;margin-top:4px}
.stat-card .icon{font-size:24px;float:right}

/* Tables */
.table-card{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.1);overflow-x:auto}
table{width:100%;border-collapse:collapse}
th{background:var(--dark);color:#fff;text-align:left;padding:12px;font-size:13px;text-transform:uppercase;letter-spacing:.5px}
td{padding:10px 12px;border-bottom:1px solid var(--border);font-size:14px}
tr:hover{background:#f9fafb}
.badge{padding:3px 10px;border-radius:20px;font-size:12px;font-weight:700}
.badge-published{background:#dcfce7;color:#166534}
.badge-draft{background:#fef3c7;color:#92400e}
.badge-pending{background:#fed7aa;color:#9a3412}

.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
.page-head h1{font-size:24px;font-weight:800}

/* Flash */
.flash{padding:12px 16px;border-radius:6px;margin-bottom:16px;font-weight:600;font-size:14px}
.flash-success{background:#dcfce7;color:#166534}
.flash-error{background:#fee2e2;color:#991b1b}

.img-preview{max-width:150px;border-radius:6px;margin-top:8px}
.thumb-sm{width:80px;height:60px;object-fit:cover;border-radius:4px}

@media(max-width:768px){
  .sidebar{display:none}
  .main{margin-left:0;width:100%}
  .stat-grid{grid-template-columns:repeat(2,1fr)}
  .mobile-nav-btn{display:block!important}
}
.mobile-nav-btn{display:none;background:var(--primary);color:#fff;border:none;padding:8px 14px;border-radius:6px;font-size:14px;cursor:pointer;margin-bottom:12px}
