
.admin-body{
  background:var(--gray-100);
}

/* ---------------- Admin auth screen ---------------- */
.admin-auth{
  min-height:100vh; display:flex; align-items:center; justify-content:center;
  background:var(--green-900); padding:24px;
}
.admin-auth-card{
  background:var(--white); border-radius:var(--radius-lg); padding:40px;
  width:100%; max-width:420px; box-shadow:var(--shadow-md);
}
.admin-auth-card .brand{justify-content:center; margin-bottom:24px;}
.admin-auth-card h1{font-size:1.4rem; text-align:center; margin-bottom:6px;}
.admin-auth-card > p{text-align:center; margin-bottom:28px;}
.remember-row{display:flex; justify-content:space-between; align-items:center; font-size:.85rem; margin-bottom:20px;}
.remember-row label{display:flex; align-items:center; gap:8px; color:var(--charcoal-700);}

/* ---------------- Admin shell ---------------- */
.admin-shell{display:flex; min-height:100vh;}
.admin-sidebar{
  width:250px; flex-shrink:0; background:var(--green-900); color:var(--green-100);
  display:flex; flex-direction:column; position:sticky; top:0; height:100vh;
}
.admin-sidebar .brand{color:var(--white); padding:22px 20px; border-bottom:1px solid rgba(255,255,255,.1);}
.admin-nav{flex:1; padding:16px 12px; overflow-y:auto;}
.admin-nav a{
  display:flex; align-items:center; gap:12px; padding:11px 14px; border-radius:var(--radius-sm);
  color:var(--green-100); font-size:.92rem; font-weight:500; margin-bottom:4px;
}
.admin-nav a:hover{background:rgba(255,255,255,.08); text-decoration:none;}
.admin-nav a.active{background:var(--green-700); color:var(--white);}
.admin-sidebar-footer{padding:16px; border-top:1px solid rgba(255,255,255,.1);}
.admin-sidebar-footer a{color:var(--green-100); display:flex; align-items:center; gap:10px; font-size:.9rem;}

.admin-main{flex:1; min-width:0;}
.admin-topbar{
  height:64px; background:var(--white); border-bottom:1px solid var(--gray-300);
  display:flex; align-items:center; justify-content:space-between; padding:0 24px; position:sticky; top:0; z-index:20;
}
.admin-toggle{display:none; background:none; border:none; cursor:pointer;}
.admin-profile{display:flex; align-items:center; gap:10px; font-size:.88rem; font-weight:600;}
.admin-avatar{width:34px; height:34px; border-radius:50%; background:var(--green-100); color:var(--green-800); display:flex; align-items:center; justify-content:center; font-weight:700;}
.admin-content{padding:28px;}
.admin-page-head{display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:24px; flex-wrap:wrap; gap:12px;}
.admin-page-head p{margin:0;}

/* ---------------- Stat cards ---------------- */
.stat-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-bottom:28px;}
.stat-card{background:var(--white); border:1px solid var(--gray-300); border-radius:var(--radius-md); padding:20px;}
.stat-card .stat-label{font-size:.8rem; color:var(--gray-600); font-weight:600; text-transform:uppercase; letter-spacing:.02em;}
.stat-card .stat-value{font-family:var(--font-display); font-size:1.7rem; font-weight:700; margin:6px 0 4px; color:var(--green-900);}
.stat-card .stat-delta{font-size:.8rem; color:var(--green-700);}
.stat-card .stat-delta.down{color:var(--red-600);}

/* ---------------- Admin panels & tables ---------------- */
.admin-panel{background:var(--white); border:1px solid var(--gray-300); border-radius:var(--radius-md); padding:20px; margin-bottom:24px;}
.admin-panel-head{display:flex; justify-content:space-between; align-items:center; margin-bottom:16px;}
.admin-panel-head h3{font-size:1.02rem; margin:0;}

.table-scroll{overflow-x:auto;}
table.data-table{width:100%; border-collapse:collapse; font-size:.88rem; min-width:640px;}
.data-table th{
  text-align:left; padding:10px 14px; background:var(--gray-100); color:var(--charcoal-700);
  font-weight:600; font-size:.78rem; text-transform:uppercase; letter-spacing:.02em; white-space:nowrap;
}
.data-table td{padding:12px 14px; border-bottom:1px solid var(--gray-100); vertical-align:middle;}
.data-table tr:last-child td{border-bottom:none;}
.data-table tbody tr:hover{background:var(--green-50);}
.row-product{display:flex; align-items:center; gap:10px;}
.row-thumb{width:38px; height:38px; border-radius:6px; background:var(--green-50); color:var(--green-700); display:flex; align-items:center; justify-content:center;}
.row-thumb svg{width:60%; height:60%;}
.table-actions{display:flex; gap:6px;}
.table-actions button, .table-actions a{
  background:none; border:1px solid var(--gray-300); border-radius:var(--radius-sm);
  width:30px; height:30px; display:flex; align-items:center; justify-content:center; cursor:pointer; color:var(--charcoal-700);
}
.table-actions button:hover, .table-actions a:hover{border-color:var(--green-700); color:var(--green-700);}

.admin-controls{display:flex; gap:12px; flex-wrap:wrap; align-items:center; margin-bottom:18px;}
.admin-controls .toolbar-search{max-width:280px;}

/* ---------------- Admin form ---------------- */
.form-section{border-bottom:1px solid var(--gray-100); padding:22px 0;}
.form-section:first-child{padding-top:0;}
.form-section:last-of-type{border-bottom:none;}
.form-section h3{font-size:.98rem; margin-bottom:16px;}
.upload-area{
  border:2px dashed var(--gray-300); border-radius:var(--radius-md); padding:32px;
  text-align:center; color:var(--gray-600); cursor:pointer; background:var(--gray-100);
}
.upload-area.dragover{border-color:var(--green-600); background:var(--green-50);}
.upload-preview{width:120px; height:120px; border-radius:var(--radius-sm); object-fit:cover; margin:0 auto 12px;}
.form-actions-sticky{
  position:sticky; bottom:0; background:var(--white); border-top:1px solid var(--gray-300);
  padding:16px 0; display:flex; justify-content:flex-end; gap:12px; margin-top:8px;
}

/* ---------------- Order timeline modal, chart placeholder ---------------- */
.chart-placeholder{height:220px; display:flex; align-items:flex-end; gap:8px; padding:12px 6px;}
.chart-bar{flex:1; background:var(--green-500); border-radius:4px 4px 0 0; position:relative;}
.chart-bar span{position:absolute; bottom:-22px; left:0; right:0; text-align:center; font-size:.7rem; color:var(--gray-600);}

@media (max-width:1024px){
  .stat-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:900px){
  .admin-sidebar{position:fixed; left:-260px; z-index:100; transition:left .2s ease; box-shadow:var(--shadow-md);}
  .admin-sidebar.open{left:0;}
  .admin-toggle{display:flex;}
  .admin-content{padding:18px;}
}
@media (max-width:560px){
  .stat-grid{grid-template-columns:1fr;}
}
.product-FormError, .loginError, .registerError, .editPrdtImage, .settingsError, .orderdetailsError{
  background-color: #fff1f2;
  border: 1px solid #fecdd3;
  color: #be123c;
  padding: 12px 16px;
  border-radius: 7px;
  margin-bottom: 20px;
}.product-FormError p, .registerError p, .loginError p, .editPrdtImage p, .settingsError p, .orderdetailsError p{
  margin: 0;
}
