/* Utilities CSS natives pour les pages métier historiques. Aucune dépendance Bootstrap. */
:root{--bs-primary:#315fba;--bs-body-color:#172033;--bs-border-color:#dbe4f0;--bs-secondary-color:#64748b}
.container,.container-fluid,.container-lg,.container-xl{width:min(100% - 40px,1140px);margin-inline:auto}
.row{display:flex;flex-wrap:wrap;margin-inline:-8px;row-gap:16px}.row>*{min-width:0;padding-inline:8px;flex:0 0 auto;width:100%}
.col-12{width:100%}.col-lg{flex:1 1 0}.col-lg-auto{flex:0 0 auto;width:auto}
.g-2,.gap-2{gap:.5rem}.g-3,.gap-3{gap:1rem}.g-4,.gap-4{gap:1.5rem}
.d-flex{display:flex!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-none{display:none!important}.flex-wrap{flex-wrap:wrap!important}.flex-grow-1{flex:1 1 0}.flex-column{flex-direction:column}.flex-nowrap{flex-wrap:nowrap}.align-items-center{align-items:center}.align-items-start{align-items:flex-start}.justify-content-center{justify-content:center}.justify-content-between{justify-content:space-between}
.text-center{text-align:center!important}.text-start{text-align:left!important}.text-end{text-align:right!important}.text-muted{color:#64748b!important}.text-secondary{color:#536177!important}.text-white{color:white!important}.text-white-50{color:#ffffffac!important}.text-success{color:#177245!important}.text-danger{color:#a33!important}.text-primary{color:#315fba!important}.text-dark{color:#172033!important}.text-warning-emphasis{color:#88521d!important}.text-capitalize{text-transform:capitalize}.text-decoration-none{text-decoration:none}.fw-bold{font-weight:760!important}.fw-semibold{font-weight:650!important}.small,small{font-size:.85em}.fs-1{font-size:2.5rem}.fs-2{font-size:2rem}.fs-4{font-size:1.5rem}.fs-5{font-size:1.2rem}.h3{font-size:1.65rem}.h5{font-size:1.2rem}.h6{font-size:1rem}.display-4{font-size:2.5rem;font-weight:740}.lh-sm{line-height:1.3}.w-100{width:100%}.h-100{height:100%}
.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.my-4{margin-block:1.5rem!important}.my-5{margin-block:3rem!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.ms-2{margin-left:.5rem!important}.mx-auto{margin-inline:auto!important}
.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.py-2{padding-block:.5rem!important}.py-3{padding-block:1rem!important}.py-4{padding-block:1.5rem!important}.py-5{padding-block:3rem!important}.px-3{padding-inline:1rem!important}.px-4{padding-inline:1.5rem!important}.pb-2{padding-bottom:.5rem!important}
.rounded-circle{border-radius:50%!important}.rounded-4{border-radius:16px!important}.border-0{border:0!important}.border{border:1px solid #d7e1eb!important}.border-warning{border-color:#eba43f!important}.shadow-sm{box-shadow:0 8px 30px #142e531e}.bg-light{background:#f8fafc}.visually-hidden{position:absolute!important;clip:rect(0,0,0,0)!important;width:1px!important;height:1px!important;overflow:hidden!important;white-space:nowrap!important}
.form-label{display:block;margin-bottom:.5rem;font-weight:720}.form-control,.form-select{display:block;appearance:auto;width:100%;padding:.7rem .9rem;border:1px solid #b9c8dc;border-radius:10px;background:#fff;color:#172033}.form-control:focus,.form-select:focus{outline:2px solid #b1c7ef;border-color:#315fba}.form-check{display:flex;align-items:flex-start;gap:.55rem}.form-check-input{appearance:auto;flex:0 0 auto;accent-color:#315fba;margin:.3rem 0 0}.form-check-label{cursor:pointer}.form-text{color:#64748b;font-size:.82rem}.btn{appearance:none;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:40px;padding:.7rem 1.1rem;border-radius:9px;font-weight:740;line-height:1.2;border:1px solid transparent;cursor:pointer}.btn:hover{filter:brightness(.96)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-lg{padding:1rem 1.4rem;font-size:1.05rem}.btn-primary{background:#315fba;color:white}.btn-secondary{background:#e8eef7;color:#172e52}.btn-success{background:#167446;color:#fff}.btn-light{background:#fff;color:#243f67}.btn-outline-primary{border-color:#315fba;background:#fff;color:#315fba}.btn-soft{border-color:#ccd8e8;background:#f0f5fc;color:#173f7e}
.alert{padding:1rem 1.3rem;border:1px solid transparent;border-radius:10px}.alert-success{background:#eaf7f0;border-color:#b3dbc5;color:#176142}.alert-info{background:#e9f3ff;border-color:#c0daf6;color:#214b86}.alert-warning{background:#fff4df;border-color:#f0d7a4;color:#785123}.alert-danger{background:#fff0f0;border-color:#eabbbb;color:#963838}
.card{border:1px solid #dce5f0;border-radius:12px;background:#fff}.card-body{padding:1.5rem}.card-title{font-size:1.3rem}.badge{display:inline-block;padding:.25rem .6rem;border-radius:6px;font-size:.78rem;font-weight:760}.bg-primary{background:#315fba;color:#fff}.bg-success{background:#1b794c;color:#fff}.bg-warning{background:#eab454;color:#322617}
.spinner-border{display:inline-block;width:1rem;height:1rem;vertical-align:middle;border:.18rem solid currentColor;border-right-color:transparent;border-radius:50%;animation:arlen-spin .75s linear infinite}.spinner-border-sm{width:.85rem;height:.85rem}@keyframes arlen-spin{to{transform:rotate(360deg)}}
.position-fixed{position:fixed!important}.overflow-auto{overflow:auto!important}.list-unstyled{list-style:none;padding-left:0}
@media(min-width:576px){.col-sm-6{width:50%}}
@media(min-width:768px){.col-md-4{width:33.3333%}.col-md-6{width:50%}.col-md-8{width:66.6667%}.flex-md-nowrap{flex-wrap:nowrap!important}}
@media(min-width:992px){.col-lg{flex:1 1 0}.col-lg-auto{flex:0 0 auto;width:auto}.p-lg-5{padding:3rem!important}}
/* Legacy public pages mobile containment */
.rdv-hero,.tracking-hero,.page-legal-hero{overflow:hidden}.rdv-card,.tracking-card,.legal-card,.registry-card{min-width:0;max-width:100%}
.form-control,.form-select,textarea,input{max-width:100%}textarea{resize:vertical}
@media(max-width:767px){.container,.container-lg,.container-xl{width:min(100% - 32px,1140px)}.row{margin-inline:-6px}.row>*{padding-inline:6px}.rdv-card,.tracking-form-card,.legal-card{padding:20px!important}.rdv-title,.tracking-title{font-size:clamp(2rem,9vw,3rem)!important}.hero-actions,.tracking-actions{justify-content:center}.rdv-hero,.tracking-hero,.page-legal-hero{text-align:center}.info-grid,.tracking-search-grid{grid-template-columns:1fr!important}.calendar-day{min-width:0}.calendar-weekday{min-width:0}}

.row.g-2,.row.g-3,.row.g-4{column-gap:0;row-gap:16px}.row.g-2{row-gap:8px}.row.g-4{row-gap:24px}
