
/* theme-olfabrand.css — Negro & #F1F0E2 (Cannoli Cream) */
:root {
  --olfa-bg: #000000;
  --olfa-fg: #F1F0E2;
  --olfa-muted: #b9b7a3;
  --olfa-accent: #F1F0E2; /* botones, links */
  --olfa-accent-ink: #000000;
  --olfa-border: #2a2a2a;
}

/* Base */
html, body {   background-image: url('https://ticket.olfabrand.com/uploads/fondo.jpg');}
a, .link { color: var(--olfa-accent); }
a:hover { color: #fff; opacity:.9; }

/* Navbar */
.navbar, .navbar-dark, .bg-dark { background-color: #000!important; border-color: var(--olfa-border)!important; }
.navbar .navbar-brand { color: var(--olfa-fg)!important; }
.navbar .btn-outline-light { border-color: var(--olfa-fg)!important; color: var(--olfa-fg)!important; }
.navbar .btn-outline-light:hover { background: var(--olfa-fg)!important; color: var(--olfa-accent-ink)!important; }

/* Cards, tables, forms */
.card { background: #0a0a0a!important; border:1px solid var(--olfa-border)!important; color: var(--olfa-fg)!important; }
.table { --bs-table-bg: #0a0a0a; --bs-table-color: var(--olfa-fg); --bs-table-striped-bg:#111; border-color: var(--olfa-border)!important; }
.form-control, .form-select, .input-group-text, textarea {
  background:#0b0b0b!important; color: var(--olfa-fg)!important; border:1px solid var(--olfa-border)!important;
}
.form-control::placeholder, .form-select::placeholder { color: var(--olfa-muted)!important; }

/* Buttons */
.btn-primary {
  --bs-btn-bg: var(--olfa-accent);
  --bs-btn-border-color: var(--olfa-accent);
  --bs-btn-color: var(--olfa-accent-ink);
  --bs-btn-hover-bg: #fff;
  --bs-btn-hover-border-color: #fff;
  --bs-btn-hover-color: #000;
}
.btn-outline-secondary, .btn-outline-info, .btn-outline-warning, .btn-outline-light, .btn-outline-danger {
  --bs-btn-color: var(--olfa-fg);
  --bs-btn-border-color: var(--olfa-border);
  --bs-btn-hover-bg: var(--olfa-fg);
  --bs-btn-hover-color: #000;
  --bs-btn-hover-border-color: var(--olfa-fg);
}

/* Badges de estado */
.badge { border-radius: 999px; padding:.35rem .6rem; font-size:.75rem; }
.badge.bg-success { background:#2e7d32!important; }
.badge.bg-secondary { background:#444!important; }
.badge.bg-warning { background:#8d6e00!important; color:#fff!important; }
.badge.bg-info { background:#006064!important; }
.badge.bg-danger { background:#8b0000!important; }

/* Borders/separators */
hr { border-color: var(--olfa-border)!important; opacity:1; }
.border, .border-top, .border-bottom { border-color: var(--olfa-border)!important; }

/* ===== Login background image ===== */
.login-page {
  min-height: 100vh;
  position: relative;
  color: var(--olfa-fg);
  background: var(--olfa-bg);
}
.login-page::before {
  content:"";
  position: fixed;
  inset: 0;
  background: var(--olfa-bg) url(var(--login-bg)) no-repeat center / cover fixed;
  filter: grayscale(10%) brightness(.45);
  z-index: -2;
}
.login-page::after {
  content:"";
  position: fixed; inset:0;
  background: radial-gradient(transparent, rgba(0,0,0,.55));
  z-index:-1;
}
.login-card {
  background: rgba(15,15,15,.82)!important;
  backdrop-filter: blur(6px);
  border:1px solid var(--olfa-border)!important;
  color: var(--olfa-fg)!important;
}
.login-card .form-control, .login-card .form-select {
  background:#0b0b0b!important; border:1px solid var(--olfa-border)!important; color: var(--olfa-fg)!important;
}
.text-muted, .text-secondary { color: var(--olfa-muted)!important; }
