/* Admin shared styles (used by orders.html and others) */
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; background: #f5f6fa; }

/* Sidebar */
.sidebar { position: fixed; top: 0; left: 0; height: 100vh; width: 260px; background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%); color: white; overflow-y: auto; z-index: 1000; box-shadow: 4px 0 10px rgba(0,0,0,0.1); }
.logo { padding: 22px 20px; background: rgba(0,0,0,0.2); border-bottom: 1px solid rgba(255,255,255,0.1); display:flex; align-items:center; gap:10px; font-weight:700; color:#d4af37; }
.logo i { color:#d4af37; }

/* Orders.html uses .nav-menu; dashboard uses .sidebar-menu. Style both the same */
.nav-menu, .sidebar-menu { list-style: none; padding: 20px 0; }
.nav-menu a, .sidebar-menu a { display: flex; align-items: center; gap:12px; padding: 15px 20px; color: rgba(255,255,255,0.85); text-decoration: none; transition: all 0.3s; border-left: 3px solid transparent; }
.nav-menu a i, .sidebar-menu a i { width:25px; text-align:center; font-size:18px; }
.nav-menu a:hover, .nav-menu a.active, .sidebar-menu a:hover, .sidebar-menu a.active { background: rgba(255,255,255,0.1); color: #fff; border-left-color: #d4af37; }

/* Main */
.main-content { margin-left: 260px; padding: 30px; min-height: 100vh; }
.top-bar { background: white; padding: 20px 30px; border-radius: 10px; box-shadow: 0 2px 10px rgba(0,0,0,0.08); margin-bottom: 30px; display: flex; justify-content: space-between; align-items: center; }
.top-bar h1 { margin: 0; font-size: 28px; font-weight: 700; color: #2c3e50; }

/* Cards/Stats */
.stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; margin-bottom: 30px; }
.stat-card { background: #fff; padding: 25px; border-radius: 12px; box-shadow: 0 2px 8px rgba(0,0,0,0.1); }
.stat-icon { width: 50px; height: 50px; border-radius: 10px; display: flex; align-items: center; justify-content: center; margin-bottom: 15px; font-size: 24px; }
.stat-value { font-size: 32px; font-weight: 700; color: #2c3e50; margin-bottom: 5px; }
.stat-label { color: #7f8c8d; font-size: 14px; }

/* Content card */
.content-card { background: white; padding: 25px; border-radius: 10px; box-shadow: 0 2px 10px rgba(0,0,0,0.08); margin-bottom: 30px; }

/* Tables */
.table { width: 100%; }
.table thead th { background: #f5f6fa; color: #2c3e50; font-weight: 600; font-size: 13px; text-transform: uppercase; letter-spacing: 0.5px; border: none; }
.table tbody td { vertical-align: middle; }
.table tr:hover { background: #f8f9fa; }

/* Buttons */
.btn-primary-custom { background: linear-gradient(135deg, #a8741a 0%, #d4af37 100%); color: white; border: none; padding: 10px 20px; border-radius: 6px; font-weight: 600; transition: all 0.3s; }
.btn-primary-custom:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(168,116,26,0.3); }
.btn-icon { background: transparent; border: none; cursor: pointer; color: #2c3e50; padding: 6px; border-radius: 6px; }
.btn-icon:hover { background: #f1f1f1; }

/* Badges */
.badge-custom { padding: 5px 12px; border-radius: 12px; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; }
.badge-success { background: #d4edda; color: #155724; }
.badge-warning { background: #fff3cd; color: #856404; }
.badge-danger { background: #f8d7da; color: #721c24; }

/* Status chips used by orders */
.status-badge { padding: 6px 12px; border-radius: 20px; font-size: 12px; font-weight: 600; text-transform: uppercase; }
.status-pending { background: rgba(255, 193, 7, 0.2); color: #ffc107; }
.status-paid { background: rgba(40, 167, 69, 0.2); color: #28a745; }
.status-completed { background: rgba(23, 162, 184, 0.2); color: #17a2b8; }
.status-cancelled { background: rgba(220, 53, 69, 0.2); color: #dc3545; }
.status-refunded { background: rgba(108, 117, 125, 0.2); color: #6c757d; }

/* Misc */
.order-actions { display: flex; gap: 6px; }
.loading-centered { text-align: center; padding: 40px; color: #999; }
