/* =============================================
   ARORA ELECTRICALS - Admin Panel CSS
   ============================================= */

:root {
  --p: #1e5fcc; --pd: #1e3a8a; --pl: #eff6ff;
  --s: #f59e0b; --g: #10b981; --r: #ef4444;
  --t1: #0f172a; --t2: #334155; --t3: #64748b; --t4: #94a3b8;
  --bg: #f0f4ff; --white: #fff; --border: #e2e8f0;
  --sh: 0 1px 3px rgba(0,0,0,0.08);
  --sh2: 0 8px 25px rgba(0,0,0,0.1);
}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'Inter',sans-serif;color:var(--t1);background:var(--bg);}
a{text-decoration:none;color:inherit;}
button{cursor:pointer;font-family:inherit;}
img{max-width:100%;display:block;}

/* ── LOGIN ── */
.admin-login-body{background:linear-gradient(135deg,#0f172a 0%,#1e3a8a 100%);min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;}
.login-page{width:100%;}
.login-card{background:#fff;border-radius:24px;padding:44px 40px;width:100%;max-width:420px;margin:0 auto;box-shadow:0 30px 60px rgba(0,0,0,0.3);}
.login-brand{text-align:center;margin-bottom:28px;}
.login-brand img{height:64px;border-radius:12px;margin:0 auto 16px;box-shadow:0 8px 20px rgba(0,0,0,0.15);}
.login-brand h1{font-size:1.6rem;font-weight:800;color:var(--pd);margin-bottom:4px;}
.login-brand p{font-size:0.85rem;color:var(--t3);}
.alert-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:12px 16px;border-radius:10px;font-size:0.88rem;margin-bottom:18px;}
.field-group{margin-bottom:16px;}
.field-group label{display:block;margin-bottom:7px;font-weight:600;font-size:0.85rem;color:var(--t2);}
.input-icon{position:relative;display:flex;align-items:center;}
.input-icon svg{position:absolute;left:14px;color:var(--t4);pointer-events:none;}
.input-icon input{width:100%;padding:12px 14px 12px 44px;border:2px solid var(--border);border-radius:10px;font-size:0.95rem;font-family:inherit;outline:none;transition:border 0.2s;}
.input-icon input:focus{border-color:var(--p);}
.login-submit{width:100%;padding:14px;background:linear-gradient(135deg,var(--pd),var(--p));color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:700;margin-top:8px;transition:0.2s;}
.login-submit:hover{opacity:0.9;transform:translateY(-1px);}
.login-hint{text-align:center;font-size:0.8rem;color:var(--t4);margin-top:16px;background:#f8fafc;padding:10px;border-radius:8px;}
.back-link{display:block;text-align:center;margin-top:18px;font-size:0.85rem;color:var(--t3);transition:0.2s;}
.back-link:hover{color:var(--p);}

/* ── LAYOUT ── */
.admin-wrap{display:flex;height:100vh;overflow:hidden;}
.admin-sidebar{width:240px;background:var(--white);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow-y:auto;flex-shrink:0;}
.admin-body{flex:1;display:flex;flex-direction:column;overflow:hidden;}
.admin-topbar{height:64px;background:var(--white);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;flex-shrink:0;}
.topbar-title{font-weight:800;font-size:1.1rem;color:var(--t1);}
.topbar-actions{display:flex;align-items:center;gap:12px;}
.admin-content{flex:1;overflow-y:auto;padding:28px 32px;background:var(--bg);}

/* ── SIDEBAR ── */
.sidebar-brand{display:flex;align-items:center;gap:12px;padding:18px 20px;border-bottom:1px solid var(--border);}
.sidebar-brand img{height:36px;border-radius:8px;}
.sidebar-brand span{font-weight:800;font-size:1rem;color:var(--pd);}
.sidebar-section{padding:16px 20px 6px;font-size:0.68rem;font-weight:700;color:var(--t4);text-transform:uppercase;letter-spacing:1.5px;}
.sidebar-link{display:flex;align-items:center;gap:10px;padding:10px 20px;color:var(--t3);font-size:0.88rem;font-weight:500;border-left:3px solid transparent;transition:0.15s;cursor:pointer;background:none;border-right:none;border-top:none;border-bottom:none;width:100%;text-align:left;}
.sidebar-link:hover{background:#f8fafc;color:var(--pd);}
.sidebar-link.active{background:var(--pl);color:var(--p);border-left-color:var(--p);font-weight:700;}
.sidebar-icon{font-size:1.1rem;width:22px;text-align:center;}
.sidebar-bottom{margin-top:auto;border-top:1px solid var(--border);padding:16px 20px;}

/* ── TOP BAR BTNS ── */
.btn{padding:8px 16px;border-radius:8px;font-size:0.85rem;font-weight:600;border:none;transition:0.2s;display:inline-flex;align-items:center;gap:6px;}
.btn-primary{background:var(--p);color:#fff;}
.btn-primary:hover{background:var(--pd);}
.btn-outline{background:#fff;border:2px solid var(--border);color:var(--t2);}
.btn-outline:hover{border-color:var(--p);color:var(--p);}
.btn-danger{background:#fef2f2;color:var(--r);border:2px solid #fecaca;}
.btn-danger:hover{background:var(--r);color:#fff;}
.btn-sm{padding:5px 12px;font-size:0.78rem;}
.btn-success{background:#d1fae5;color:#059669;}
.btn-success:hover{background:#059669;color:#fff;}

/* ── STAT CARDS ── */
.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:28px;}
.stat-card{background:var(--white);border-radius:16px;padding:22px 24px;border:1px solid var(--border);box-shadow:var(--sh);position:relative;overflow:hidden;transition:0.2s;}
.stat-card:hover{transform:translateY(-3px);box-shadow:var(--sh2);}
.stat-card-icon{font-size:1.8rem;margin-bottom:12px;}
.stat-card-label{font-size:0.72rem;font-weight:700;color:var(--t4);text-transform:uppercase;letter-spacing:0.5px;}
.stat-card-value{font-size:2rem;font-weight:900;color:var(--t1);margin:4px 0;}
.stat-card-change{font-size:0.78rem;color:var(--g);font-weight:500;}
.stat-card::after{content:'';position:absolute;top:-20px;right:-20px;width:80px;height:80px;border-radius:50%;opacity:0.08;}
.stat-card.c-green::after{background:var(--g);}
.stat-card.c-blue::after{background:var(--p);}
.stat-card.c-yellow::after{background:var(--s);}
.stat-card.c-purple::after{background:#8b5cf6;}

/* ── CARDS ── */
.card{background:var(--white);border-radius:16px;border:1px solid var(--border);box-shadow:var(--sh);}
.card-header{padding:18px 22px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;}
.card-title{font-size:0.95rem;font-weight:700;color:var(--t1);}
.card-body{padding:22px;}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.col-full{grid-column:1/-1;}

/* ── TABLE ── */
.table-wrap{background:var(--white);border-radius:16px;border:1px solid var(--border);overflow:hidden;box-shadow:var(--sh);}
.table-toolbar{padding:14px 20px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;}
table{width:100%;border-collapse:collapse;}
th{font-size:0.72rem;font-weight:700;color:var(--t4);text-transform:uppercase;letter-spacing:0.5px;padding:12px 16px;background:#f8fafc;text-align:left;border-bottom:1px solid var(--border);}
td{padding:12px 16px;border-bottom:1px solid #f8fafc;font-size:0.88rem;color:var(--t2);}
tbody tr:hover{background:#fafbfc;}
tbody tr:last-child td{border-bottom:none;}
.prod-thumb{width:44px;height:44px;border-radius:8px;object-fit:cover;background:#f1f5f9;}
.no-img{width:44px;height:44px;border-radius:8px;background:var(--pl);display:flex;align-items:center;justify-content:center;font-size:1.2rem;}

/* ── BADGE / STATUS ── */
.badge{padding:3px 10px;border-radius:20px;font-size:0.72rem;font-weight:700;text-transform:uppercase;}
.badge-pending{background:#fef3c7;color:#d97706;}
.badge-approved{background:#d1fae5;color:#059669;}
.badge-rejected{background:#fee2e2;color:#dc2626;}
.badge-new{background:#dbeafe;color:#1d4ed8;}
.badge-contacted{background:#ede9fe;color:#7c3aed;}
.badge-closed{background:#f1f5f9;color:var(--t3);}
.badge-hot{background:#fef3c7;color:#d97706;}
.badge-sale{background:#fee2e2;color:#dc2626;}
.badge-featured{background:#dbeafe;color:var(--p);}

/* ── MODAL ── */
.modal-bg{display:none;position:fixed;inset:0;background:rgba(15,23,42,0.6);z-index:1000;align-items:center;justify-content:center;backdrop-filter:blur(4px);padding:16px;}
.modal-bg.open{display:flex;}
.modal{background:var(--white);border-radius:20px;width:100%;max-width:680px;max-height:92vh;overflow-y:auto;box-shadow:0 30px 80px rgba(0,0,0,0.2);}
.modal.sm{max-width:440px;}
.modal-head{padding:20px 26px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#fff;z-index:1;border-radius:20px 20px 0 0;}
.modal-head h2{font-size:1.1rem;font-weight:800;}
.modal-close{background:#f8fafc;border:none;width:32px;height:32px;border-radius:8px;font-size:1rem;cursor:pointer;color:var(--t3);display:flex;align-items:center;justify-content:center;}
.modal-body{padding:22px 26px;}
.modal-foot{padding:16px 26px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:10px;}

/* ── FORM ── */
.field-group{margin-bottom:16px;}
.field-group label{display:block;margin-bottom:6px;font-size:0.82rem;font-weight:600;color:var(--t2);}
.field-group input,.field-group select,.field-group textarea{width:100%;padding:10px 13px;border:2px solid var(--border);border-radius:8px;font-size:0.9rem;font-family:inherit;outline:none;transition:border 0.2s;}
.field-group input:focus,.field-group select:focus,.field-group textarea:focus{border-color:var(--p);}
.field-hint{font-size:0.75rem;color:var(--t4);margin-top:4px;}
.row-2{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;}

/* ── IMAGE UPLOADER ── */
.img-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px;}
.img-slot{border:2px dashed var(--border);border-radius:10px;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:0.2s;overflow:hidden;position:relative;}
.img-slot:hover{border-color:var(--p);background:var(--pl);}
.img-slot.has-img{border-style:solid;border-color:#e2e8f0;}
.img-slot img{width:100%;height:100%;object-fit:cover;border-radius:8px;}
.img-slot-del{position:absolute;top:4px;right:4px;background:rgba(239,68,68,0.9);color:#fff;border:none;border-radius:50%;width:22px;height:22px;font-size:0.75rem;display:flex;align-items:center;justify-content:center;}

/* ── CHECKBOX / TOGGLE ── */
.check-row{display:flex;gap:16px;flex-wrap:wrap;}
.check-label{display:flex;align-items:center;gap:8px;font-size:0.88rem;font-weight:500;cursor:pointer;}
.toggle-wrap{display:flex;align-items:center;gap:12px;}
.toggle{width:44px;height:24px;background:#e5e7eb;border-radius:12px;position:relative;cursor:pointer;transition:0.2s;flex-shrink:0;}
.toggle.on{background:var(--p);}
.toggle::after{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;background:#fff;border-radius:50%;transition:0.2s;box-shadow:0 1px 3px rgba(0,0,0,0.2);}
.toggle.on::after{left:23px;}

/* ── ALERTS ── */
.alert{padding:12px 16px;border-radius:10px;font-size:0.88rem;font-weight:500;margin-bottom:16px;}
.alert-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0;}
.alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca;}
.alert-info{background:var(--pl);color:var(--pd);border:1px solid #bfdbfe;}

/* ── PAGE HEADER ── */
.page-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;gap:12px;flex-wrap:wrap;}
.page-head h1{font-size:1.5rem;font-weight:800;color:var(--t1);}
.page-head p{font-size:0.85rem;color:var(--t3);margin-top:3px;}

/* ── CATEGORIES GRID ── */
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;margin-top:20px;}
.cat-card{background:var(--white);border-radius:14px;border:1px solid var(--border);overflow:hidden;transition:0.2s;box-shadow:var(--sh);}
.cat-card:hover{transform:translateY(-3px);box-shadow:var(--sh2);}
.cat-card-img{height:130px;background:#f8fafc;display:flex;align-items:center;justify-content:center;font-size:3rem;overflow:hidden;}
.cat-card-img img{width:100%;height:100%;object-fit:cover;}
.cat-card-body{padding:14px;}
.cat-card-name{font-weight:700;font-size:0.95rem;margin-bottom:4px;}
.cat-card-count{font-size:0.78rem;color:var(--t3);margin-bottom:10px;}
.cat-card-actions{display:flex;gap:8px;}

/* ── SETTINGS ── */
.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.settings-card{background:var(--white);border-radius:16px;border:1px solid var(--border);padding:24px;box-shadow:var(--sh);}
.settings-card.full{grid-column:1/-1;}
.settings-card-title{font-size:1rem;font-weight:700;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px;color:var(--t1);}
.setting-row{margin-bottom:16px;}
.setting-label{font-size:0.85rem;font-weight:600;color:var(--t2);display:block;margin-bottom:6px;}
.setting-hint{font-size:0.75rem;color:var(--t4);margin-top:4px;}
.setting-input{width:100%;padding:10px 13px;border:2px solid var(--border);border-radius:8px;font-size:0.9rem;font-family:inherit;outline:none;transition:0.2s;}
.setting-input:focus{border-color:var(--p);}

/* ── ORDERS / ENQUIRY ── */
.order-items-list{font-size:0.8rem;line-height:1.8;color:var(--t3);}
.order-total{font-weight:800;color:var(--t1);}

/* ── EMPTY ── */
.empty-box{text-align:center;padding:48px 20px;color:var(--t4);}
.empty-box .em{font-size:3rem;display:block;margin-bottom:12px;}
.empty-box h3{font-size:1.1rem;font-weight:700;color:var(--t2);margin-bottom:6px;}

/* ── SCROLLBAR ── */
::-webkit-scrollbar{width:6px;height:6px;}
::-webkit-scrollbar-track{background:#f1f5f9;}
::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px;}
::-webkit-scrollbar-thumb:hover{background:var(--t4);}

@media(max-width:768px){
  .admin-sidebar{display:none;}
  .stats-row{grid-template-columns:1fr 1fr;}
  .settings-grid{grid-template-columns:1fr;}
  .grid-2{grid-template-columns:1fr;}
  .row-2,.row-3{grid-template-columns:1fr;}
}
