:root { --app-navy:#15324b; --app-blue:#dce9f1; --app-border:#b7c8d3; }
body { background:#f5f7f9; color:#1f2933; }
.app-navbar { background:var(--app-navy); }
.card { border:1px solid #dce3e8; box-shadow:0 2px 10px rgba(20,40,60,.04); }
.section-title { background:var(--app-blue); border-left:4px solid var(--app-navy); padding:.55rem .75rem; font-weight:700; margin-bottom:1rem; }
.form-label { font-size:.86rem; font-weight:600; color:#385265; margin-bottom:.25rem; }
.sticky-actions { position:sticky; bottom:0; background:rgba(245,247,249,.94); backdrop-filter:blur(7px); padding:1rem 0; border-top:1px solid #dce3e8; z-index:20; }
.status-dot { width:.65rem; height:.65rem; border-radius:50%; display:inline-block; margin-right:.4rem; }
.status-vide{background:#adb5bd}.status-en_cours{background:#f0ad4e}.status-complet{background:#0d6efd}.status-valide{background:#198754}
.table-clickable tbody tr { cursor:pointer; }
@media (min-width: 1200px){ .sanitary-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.25rem; } }
.auth-shell { min-height:100vh; display:flex; align-items:center; justify-content:center; padding-top:3rem; padding-bottom:3rem; }
.auth-card { width:min(100%, 460px); }
.auth-logo { width:64px; height:64px; border-radius:18px; margin:0 auto 1rem; display:grid; place-items:center; background:var(--app-navy); color:white; font-weight:800; font-size:1.25rem; }
.navbar-text { color:rgba(255,255,255,.8)!important; }
