/* Thème Ark FlightBook — feuille commune à toutes les pages du portail.
   Charger après theme.config.js : <link rel="stylesheet" href="/static/theme.css"> */

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

body {
  font-family: 'Inter', sans-serif;
  background-color: #181F27 !important;
  color: #F1F5F9 !important;
}

h1, h2, h3, h4, h5, h6 {
  color: #FFFFFF !important;
}

p, li, span, label {
  color: inherit;
}

.text-white { color: #FFFFFF !important; }
.text-slate-100 { color: #F1F5F9 !important; }
.text-slate-200 { color: #E2E8F0 !important; }
.text-slate-300 { color: #CBD5E1 !important; }
.text-slate-400 { color: #94A3B8 !important; }
.text-accent-300 { color: #A5D8F3 !important; }
.text-accent-400 { color: #7EC4E8 !important; }
.text-emerald-300 { color: #6EE7B7 !important; }
.text-emerald-400 { color: #34D399 !important; }
.text-cyan-300 { color: #67E8F9 !important; }
.text-cyan-400 { color: #22D3EE !important; }
.text-purple-300 { color: #D8B4FE !important; }
.text-caution-400 { color: #F6BD5C !important; }

.bg-base { background-color: #181F27 !important; }
.bg-panel { background-color: #212B35 !important; }
.border-hairline { border-color: #37424E !important; }

.text-base { font-size: 1rem !important; line-height: 1.5rem !important; }

.mono { font-family: 'JetBrains Mono', monospace; }

/* Chiffres et données (heures, dates, immatriculations) : rendu "avionique" */
.readout { font-family: 'JetBrains Mono', monospace; letter-spacing: 0.02em; }

/* Encart à coins d'instrument — signature visuelle du thème */
.bracket {
  position: relative;
  border: 1px solid #1C2732;
}
.bracket::before, .bracket::after,
.bracket > .bracket-tr, .bracket > .bracket-bl {
  content: '';
  position: absolute;
  width: 14px; height: 14px;
  pointer-events: none;
}
.bracket::before { top: -1px; left: -1px; border-top: 2px solid #4FA8D8; border-left: 2px solid #4FA8D8; }
.bracket > .bracket-tr { top: -1px; right: -1px; border-top: 2px solid #4FA8D8; border-right: 2px solid #4FA8D8; }
.bracket > .bracket-bl { bottom: -1px; left: -1px; border-bottom: 2px solid #4FA8D8; border-left: 2px solid #4FA8D8; }
.bracket::after { bottom: -1px; right: -1px; border-bottom: 2px solid #4FA8D8; border-right: 2px solid #4FA8D8; }

/* Liseré gradué sous l'en-tête, évoque une graduation de bezel */
.tick-row { background-image: repeating-linear-gradient(90deg, #37424E 0, #37424E 1px, transparent 1px, transparent 8px); }

/* Composants réutilisables */
.btn-primary {
  background-color: #4FA8D8; color: #181F27;
  font-family: 'Space Grotesk', sans-serif; font-weight: 600;
  transition: background-color .15s ease;
}
.btn-primary:hover { background-color: #7EC4E8; }
.btn-primary:disabled { opacity: .5; cursor: not-allowed; }

.btn-outline {
  border: 1px solid #37424E; color: #CBD5E1;
  transition: border-color .15s ease, color .15s ease;
}
.btn-outline:hover { border-color: #3387B8; color: #7EC4E8; }

.badge-pending {
  background-color: #3A2A10; border: 1px solid #E8A33D; color: #F6BD5C;
}

.badge-count {
  background-color: #E8A33D; color: #181F27; font-weight: 700; font-family: 'JetBrains Mono', monospace;
}

.field-input {
  background-color: #181F27; border: 1px solid #37424E; color: #fff;
  transition: border-color .15s ease;
}
.field-input:focus { outline: none; border-color: #4FA8D8; }
.field-input::placeholder { color: #64748B; }
