:root{
  --primary:#09301E; --primary-light:#0a4028; --primary-dark:#071f14;
  --accent:#fcd116; --accent-hover:#ffe44d; --white:#fff;
  --light-bg:#f8f9fc; --dark:#1a1a1a; --gray:#6c757d; --sidebar-width:260px;
}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'Inter',sans-serif;background:var(--light-bg);color:var(--dark);overflow-x:hidden;}

.sidebar{position:fixed;top:0;left:0;width:var(--sidebar-width);height:100vh;
  background:linear-gradient(180deg,#09301E 0%,#0a4028 100%);z-index:1050;padding:20px 0;
  overflow-y:auto;transition:transform .3s ease;}
.sidebar::-webkit-scrollbar{width:3px;}
.sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:3px;}
.sidebar-brand{padding:0 20px 20px;border-bottom:1px solid rgba(255,255,255,.06);}
.sidebar-brand h4{color:var(--accent);font-weight:800;font-size:1.15rem;}
.sidebar-brand small{color:rgba(255,255,255,.5);font-size:.75rem;}
.sidebar-nav{list-style:none;padding:0;margin:15px 0;}
.sidebar-nav .nav-item{margin:2px 12px;}
.sidebar-nav .nav-item a{display:flex;align-items:center;padding:10px 16px;color:rgba(255,255,255,.7);
  text-decoration:none;border-radius:10px;transition:all .2s;font-size:14px;font-weight:500;}
.sidebar-nav .nav-item a:hover{background:rgba(255,255,255,.08);color:#fff;}
.sidebar-nav .nav-item.active a{background:rgba(252,209,22,.12);color:var(--accent);border-left:3px solid var(--accent);}
.sidebar-nav .nav-item a i{width:24px;margin-right:12px;text-align:center;}
.sidebar-nav .nav-section{padding:16px 20px 6px;font-size:10px;text-transform:uppercase;
  letter-spacing:2px;color:rgba(255,255,255,.3);font-weight:700;}

.main-content{margin-left:var(--sidebar-width);padding:25px 30px;min-height:100vh;}
.main-header{background:#fff;padding:15px 25px;border-radius:15px;box-shadow:0 2px 10px rgba(0,0,0,.04);
  margin-bottom:25px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;}
.main-header h5{font-weight:700;margin:0;}
.main-header .user{display:flex;align-items:center;gap:12px;}
.main-header .user .avatar{width:38px;height:38px;border-radius:50%;background:var(--primary);color:#fff;
  display:flex;align-items:center;justify-content:center;font-weight:700;}

.stat-card{background:#fff;border-radius:15px;padding:20px 20px 16px;box-shadow:0 2px 10px rgba(0,0,0,.04);
  transition:all .2s;height:100%;}
.stat-card:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(0,0,0,.08);}
.stat-card .icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;
  justify-content:center;font-size:22px;}
.stat-card .icon.blue{background:#e3f2fd;color:#1976d2;}
.stat-card .icon.green{background:#e8f5e9;color:#388e3c;}
.stat-card .icon.gold{background:#fff8e1;color:#f57c00;}
.stat-card .icon.purple{background:#f3e5f5;color:#7b1fa2;}
.stat-card .icon.red{background:#ffebee;color:#c62828;}
.stat-card h3{font-weight:800;margin:8px 0 0;font-size:1.6rem;}
.stat-card small{color:var(--gray);font-size:13px;}

.card-custom{background:#fff;border-radius:15px;border:none;box-shadow:0 2px 10px rgba(0,0,0,.04);}
.card-custom .card-header{background:#fff;border-bottom:1px solid #f0f0f0;padding:15px 20px;
  font-weight:600;border-radius:15px 15px 0 0;}
.card-custom .card-body{padding:20px;}

.table-order th{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--gray);
  font-weight:600;white-space:nowrap;border-bottom:1px solid #eee!important;}
.table-order td{vertical-align:middle;padding:12px 10px;border-color:#f4f4f4;}

.badge-status{padding:4px 12px;border-radius:50px;font-size:11px;font-weight:600;display:inline-block;white-space:nowrap;}
.badge-status.active{background:#e3f2fd;color:#1976d2;}
.badge-status.completed{background:#e8f5e9;color:#388e3c;}
.badge-status.past-due{background:#fff3e0;color:#f57c00;}
.badge-status.delivered{background:#f3e5f5;color:#7b1fa2;}
.badge-status.cancelled{background:#ffebee;color:#c62828;}
.badge-status.new{background:#e8eaf6;color:#3949ab;}

.btn-primary{background:var(--primary);border-color:var(--primary);}
.btn-primary:hover,.btn-primary:focus{background:var(--primary-light);border-color:var(--primary-light);}
.btn-accent{background:var(--accent);border-color:var(--accent);color:var(--primary-dark);font-weight:600;}
.btn-accent:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--primary-dark);}
.text-primary{color:var(--primary)!important;}
.form-control:focus,.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 .2rem rgba(9,48,30,.12);}
.form-label{font-size:.82rem;font-weight:600;color:#444;margin-bottom:.25rem;}

.mobile-toggle{display:none;background:none;border:none;font-size:24px;color:var(--primary);padding:4px 8px;}
.sidebar-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;
  background:rgba(0,0,0,.5);z-index:1040;}
.sidebar-overlay.active{display:block;}

@media (max-width:992px){
  .sidebar{transform:translateX(-100%);}
  .sidebar.open{transform:translateX(0);}
  .main-content{margin-left:0;padding:15px;}
  .mobile-toggle{display:inline-block;}
}
::-webkit-scrollbar{width:6px;height:6px;}
::-webkit-scrollbar-thumb{background:#ccc;border-radius:6px;}
.modal-content{border-radius:16px;border:none;}

.item-row{background:#fafafa;border:1px solid #eee;border-radius:12px;padding:15px;margin-bottom:12px;}
.summary-box{background:#f8f9fc;border-radius:12px;padding:16px;}
.summary-line{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px dashed #e2e2e2;}
.summary-line:last-child{border-bottom:none;font-weight:700;font-size:1.05rem;}

.sync-banner{
  position:fixed;top:0;left:var(--sidebar-width);right:0;z-index:1060;
  background:#ff9800;color:#fff;padding:8px 16px;font-size:13px;
  display:flex;align-items:center;gap:10px;
}
.sync-banner.online{background:#388e3c;}
.sync-banner.syncing{background:#1976d2;}
@media (max-width:992px){ .sync-banner{left:0;} }