/* Infierno Festival inspired theme (dark/industrial/metal) */
:root{
  --bg: #0b0b0d;
  --panel: #121218;
  --panel2: #171722;
  --text: #e9e9ee;
  --muted: #a8a8b3;
  --red: #e10600;
  --red2: #ff2a1a;
  --border: rgba(255,255,255,.08);
  --shadow: rgba(0,0,0,.6);
  --ok: #22c55e;
  --warn: #f59e0b;
}

html, body {
  color: var(--text);
  background:
    linear-gradient(rgba(0,0,0,.72), rgba(0,0,0,.72)),
    url("/assets/img/fondo.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
}

body { font-family: system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif; }

a{ color: var(--red2); }
a:hover{ color: #fff; }

.brand {
  font-family: "Oswald", system-ui, sans-serif;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.navbar {
  background: rgba(0,0,0,.65);
  border-bottom: 1px solid var(--border);
  backdrop-filter: blur(6px);
}

.card, .modal-content {
  background: linear-gradient(180deg, var(--panel), var(--panel2));
  border: 1px solid var(--border);
  box-shadow: 0 10px 30px var(--shadow);
}

.form-control, .form-select {
  background: rgba(0,0,0,.35);
  color: var(--text);
  border: 1px solid var(--border);
}
.form-control:focus, .form-select:focus {
  border-color: rgba(225,6,0,.55);
  box-shadow: 0 0 0 .25rem rgba(225,6,0,.15);
}

.btn-danger{
  background: linear-gradient(180deg, var(--red2), var(--red));
  border: 1px solid rgba(255,42,26,.35);
}
.btn-outline-light{ border-color: var(--border); }

.badge.bg-success{ background: rgba(34,197,94,.18) !important; color: #000000; border: 1px solid rgba(34,197,94,.35); }
.badge.bg-warning{ background: rgba(245,158,11,.18) !important; color: #ffe2b6; border: 1px solid rgba(245,158,11,.35); }
.badge.bg-secondary{ background: rgba(148,163,184,.16) !important; color: #d1d5db; border: 1px solid rgba(148,163,184,.25); }
.badge.bg-danger{ background: rgba(225,6,0,.18) !important; color: #ffb4ad; border: 1px solid rgba(225,6,0,.35); }

.table{ color: var(--text); }
.table thead th{ color: var(--muted); border-color: var(--border); }
.table td, .table th{ border-color: var(--border); }

.kpi{
  display:flex; gap:12px; flex-wrap:wrap;
}
.kpi .k{
  min-width: 190px;
  padding: 12px 14px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: rgba(0,0,0,.25);
}
.kpi .k .v{ font-size: 22px; font-weight: 700; font-family: "Oswald", system-ui, sans-serif; }
.kpi .k .l{ color: var(--muted); font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }

.small-muted{ color: var(--muted); font-size: .92rem; }
.pulse-dot{
  width: 10px; height: 10px; border-radius: 50%;
  background: var(--red2);
  box-shadow: 0 0 0 0 rgba(255,42,26,.45);
  animation: pulse 1.6s infinite;
}
@keyframes pulse { 0%{ box-shadow: 0 0 0 0 rgba(255,42,26,.45);} 70%{ box-shadow: 0 0 0 14px rgba(255,42,26,0);} 100%{ box-shadow: 0 0 0 0 rgba(255,42,26,0);} }



@media (min-width: 1800px){ /* lg */
  .loans-card-wide{
    width: calc(100% + 145%);
  }
}


html, body { height: 100%; }

body{
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

/* tu contenedor principal (el que abres en header.php con <div class="container py-4">) */
body > .container.py-4{
  flex: 1 0 auto;
}

.site-footer{
  margin-top: auto;
  border-top: 1px solid var(--border);
  background: rgba(0,0,0,.55);
  backdrop-filter: blur(6px);
}


.card .brand{
  color: #ffffff !important;   /* pon aquí tu color */
}


/* 1) Texto que escribe el usuario en inputs/selects */
.form-control,
.form-select{
  color: #ffffff !important;   /* texto introducido por el usuario */
}

/* 2) Texto de las etiquetas (Nombre y apellidos, etc.) */
.form-label{
  color: #ffffff !important;   /* cámbialo al color que quieras */
}

.form-control::placeholder{
  color: rgba(255,255,255,.45) !important;  /* placeholder */
}

/* Checklist multi-material (retirada) */
.materials-checklist{
  display: grid;
  gap: 10px;
  max-height: 260px;
  overflow: auto;
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: rgba(0,0,0,.20);
}

.materials-checklist .mc-item{
  display: grid;
  grid-template-columns: 22px 1fr 92px;
  align-items: center;
  gap: 10px;
  padding: 10px;
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 12px;
  background: rgba(0,0,0,.18);
}

.materials-checklist .mc-name{ font-weight: 600; color: white}
.materials-checklist .mc-qty{ text-align: center; }

.materials-checklist .form-check-input{
  width: 18px; height: 18px;
}

/* Mantener inputs oscuros al hacer focus (evitar blanco) */
.form-control:focus,
.form-select:focus,
.form-control:focus-visible,
.form-select:focus-visible{
  background: rgba(0,0,0,.35) !important;
  color: var(--text) !important;
  border-color: rgba(225,6,0,.55) !important;
  box-shadow: 0 0 0 .25rem rgba(225,6,0,.15) !important;
}

/* Por si el navegador pinta el interior blanco en algunos casos */
input.form-control{
  background-color: rgba(0,0,0,.35);
}

