@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600&family=IBM+Plex+Mono:wght@400;500&display=swap');

html {
  --v-theme-primary: 196, 30, 30 !important;
  --v-theme-on-primary: 255, 255, 255 !important;
  --v-theme-surface: 255, 255, 255 !important;
  --v-theme-background: 245, 246, 248 !important;
  --v-theme-primary-darken-1: 168, 24, 24 !important;
}

html, body, #app,
.v-application,
.v-main,
.v-main__wrap {
  background: #F5F6F8 !important;
  font-family: 'Space Grotesk', sans-serif !important;
}

.v-application * { font-family: 'Space Grotesk', sans-serif !important; }

body::before {
  content: '';
  position: fixed;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: #C41E1E;
  z-index: 99999;
}

.v-card,
.v-sheet.v-card {
  background: #ffffff !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.07) !important;
  border: 0.5px solid rgba(0,0,0,0.09) !important;
}

/* Botones — override directo de color inline de Vuetify */
.v-btn {
  font-family: 'Space Grotesk', sans-serif !important;
  text-transform: none !important;
  letter-spacing: 0.3px !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
}

.v-btn.bg-primary,
.v-btn[style*="background"],
.v-btn--variant-elevated {
  background: #C41E1E !important;
  background-color: #C41E1E !important;
  color: #fff !important;
  box-shadow: none !important;
}

.v-btn--variant-text,
.v-btn--variant-plain {
  color: #C41E1E !important;
}

/* Inputs */
.v-field__outline {
  --v-field-border-color: rgba(0,0,0,0.15) !important;
}

.v-field--focused {
  --v-field-border-color: #C41E1E !important;
}

.v-field--focused .v-field__outline *,
.v-field--focused .v-field__outline {
  border-color: #C41E1E !important;
  color: #C41E1E !important;
  opacity: 1 !important;
}

.v-label.v-field-label--floating {
  color: #C41E1E !important;
}

.v-field__input {
  font-family: 'Space Grotesk', sans-serif !important;
  color: #1A1A1A !important;
}

/* Checkbox */
.v-selection-control--dirty .v-icon { color: #C41E1E !important; }

/* Links */
.v-application a { color: #C41E1E !important; }

/* Loader */
.v-progress-circular__overlay { stroke: #C41E1E !important; }

/* Footer */
.v-application > div > div:last-child,
[class*="footer"] {
  font-family: 'IBM Plex Mono', monospace !important;
  font-size: 11px !important;
  color: #aaa !important;
}

/* Logo más grande — ajuste jul 2026 */
.v-application img[alt="Logo"],
.v-application header img,
#root img,
#app img {
  width: 180px !important;
  height: auto !important;
  max-width: 180px !important;
}

/* Anti-azul: selectores MUI (framework real de Authelia) — jul 2026 */
a, .MuiLink-root {
  color: #C41E1E !important;
}
.MuiButton-containedPrimary,
.MuiButton-contained {
  background-color: #C41E1E !important;
  color: #ffffff !important;
}
.MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline {
  border-color: #C41E1E !important;
}
.MuiInputLabel-root.Mui-focused {
  color: #C41E1E !important;
}
.MuiCheckbox-root.Mui-checked,
.MuiCheckbox-colorPrimary.Mui-checked {
  color: #C41E1E !important;
}
.MuiCircularProgress-root {
  color: #C41E1E !important;
}
