/* SAE — essai lisibilité du 15 octobre 2026. Polices locales, licences dans fonts/. */
@font-face{font-family:'SAE IBM Plex Sans';src:url('fonts/IBMPlexSans-Variable.woff') format('woff');font-style:normal;font-weight:100 700;font-display:swap}
@font-face{font-family:'SAE IBM Plex Sans';src:url('fonts/IBMPlexSans-Italic.woff') format('woff');font-style:italic;font-weight:100 700;font-display:swap}
@font-face{font-family:'SAE Inter';src:url('fonts/Inter-Variable.woff') format('woff');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:'SAE Inter';src:url('fonts/Inter-Italic.woff') format('woff');font-style:italic;font-weight:100 900;font-display:swap}
:root{--sae-font-text:'SAE IBM Plex Sans',Helvetica,Arial,sans-serif;--sae-font-heading:var(--sae-font-text)}
body{font-family:var(--sae-font-text)!important;font-size:16px;line-height:1.45}
input,select,textarea,option,dialog,.leaflet-popup-content,.leaflet-tooltip{font-family:var(--sae-font-text)!important}
h1,h2,h3,h4,h5,h6,button,.button,.btn,.brand,.side-label,.section-label,.eyebrow,.sidebar summary,.identity strong,.display-brand,.display-time strong,.display-mean strong,.display-count,.display-status,.display-priority-square,.cadre-mean-row strong,.cadre-mean-status{font-family:var(--sae-font-heading)!important}
h1{font-size:30px;font-weight:700;line-height:1.15}
h2{font-size:22px;font-weight:700;line-height:1.25}
h3{font-size:18px;font-weight:700;line-height:1.3}
.workspace h1,.setup h1{font-size:clamp(27px,2.2vw,32px)}
.reg-form-block>h3,.panel>h2{font-size:22px;font-weight:700}
button,.button,.btn{font-size:16px;font-weight:600;line-height:1.3}
input,select,textarea{font-size:16px!important;font-weight:400;line-height:1.4}
label{font-size:16px;font-weight:600}
label input,label select,label textarea{font-weight:400}
#simple-navigation button,#simple-navigation summary{font-size:16px}
#simple-navigation summary{font-weight:700}
.section-label,.eyebrow{font-size:14px;font-weight:700}
small,.muted,.map-hint,.help-access{font-size:14px;line-height:1.4}
.mini-resource strong,.simple-means strong,.resource-card h3,.cadre-mean-row strong{font-size:18px;font-weight:700}
.call-button>strong{font-size:18px;font-weight:700}
.identity strong{font-size:clamp(24px,5vw,34px);font-weight:700;line-height:1.15}
.display-status{font-size:13px;font-weight:600}
.display-mean strong{font-size:18px;font-weight:700}
code,pre,kbd,samp{font-family:ui-monospace,Consolas,monospace}
/* Mission messages are prose, not source code. */
#mission-text{font-family:var(--sae-font-text)!important;font-size:17px;line-height:1.5}
/* Colors, status meanings and the compact display header are unchanged. */
@media(max-width:600px){h1{font-size:27px}h2{font-size:21px}.reg-form-block>h3{font-size:21px}}
