/* === 銀巷食光暖橙主題 === */
:root {
  --primary: #E8722A;
  --primary-dark: #C45A1A;
  --primary-light: #FEF3EB;
  --success: #5B9A3C;
  --success-light: #E8F5E0;
  --warning: #F0AD4E;
  --warning-light: #FFF8E7;
  --danger: #D94452;
  --danger-light: #FDECEE;
  --info: #4A8DB7;
  --info-light: #E8F2F8;
  --page-bg: #FFFDFB;
  --card-border: #F0EDE9;
  --text-primary: #2D2A26;
  --text-secondary: #5C5650;
  --text-muted: #8A837B;
}

body {
  background-color: var(--page-bg);
  color: var(--text-primary);
  font-family: 'Noto Sans TC', -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 16px;
}

/* Navbar */
.navbar-brand { font-weight: bold; font-size: 20px; }
.navbar { background-color: var(--primary) !important; }

/* Cards */
.card { border-color: var(--card-border); border-radius: 12px; }
.card-header { background-color: var(--primary-light); border-bottom-color: var(--card-border); font-weight: bold; }
.stat-card { border-left: 4px solid var(--primary); }
.stat-card .stat-number { font-size: 28px; font-weight: bold; color: var(--primary); }
.stat-card .stat-label { font-size: 14px; color: var(--text-muted); }

/* Buttons */
.btn-primary { background-color: var(--primary); border-color: var(--primary); }
.btn-primary:hover { background-color: var(--primary-dark); border-color: var(--primary-dark); }
.btn-outline-primary { color: var(--primary); border-color: var(--primary); }
.btn-outline-primary:hover { background-color: var(--primary); color: white; }
.btn-success { background-color: var(--success); border-color: var(--success); }
.btn-danger { background-color: var(--danger); border-color: var(--danger); }

/* Tables */
.table th { background-color: var(--primary-light); color: var(--text-primary); font-size: 15px; }
.table td { font-size: 16px; vertical-align: middle; }

/* Forms */
.form-control { font-size: 16px; border-color: var(--card-border); }
.form-control:focus { border-color: var(--primary); box-shadow: 0 0 0 0.2rem rgba(232,114,42,0.25); }
.form-label { font-weight: 600; color: var(--text-secondary); }

/* Badge */
.badge-active { background-color: var(--success-light); color: var(--success); }
.badge-inactive { background-color: var(--danger-light); color: var(--danger); }

/* Login page */
.login-container { max-width: 420px; margin: 80px auto; }
.login-card { border: none; box-shadow: 0 2px 12px rgba(0,0,0,0.08); border-radius: 16px; }
.login-header { background-color: var(--primary); color: white; text-align: center; padding: 24px; border-radius: 16px 16px 0 0; }
.login-header h3 { margin: 0; font-size: 24px; }
.login-header small { opacity: 0.8; }

/* Responsive */
@media (max-width: 768px) {
  .stat-card .stat-number { font-size: 22px; }
  .table td, .table th { font-size: 14px; }
}
