:root{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:#e9eff8;background:#101d2d;font-size:16px}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 83% -15%,#284b62 0,transparent 38%),#101d2d}button,textarea,input{font:inherit}button,.file-button{cursor:pointer}button{border:1px solid #426077;background:#203448;color:#e9eff8;border-radius:11px;padding:11px 15px;font-weight:650}button:hover,.file-button:hover{border-color:#72c7db;background:#284459}button:focus-visible,.file-button:focus-within,textarea:focus-visible{outline:3px solid #f0b857;outline-offset:2px}.primary{background:#e6aa4a;color:#17212d;border-color:#e6aa4a}.primary:hover{background:#ffbe5c;color:#17212d}header{height:76px;padding:0 max(24px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #31465b}.brand{display:flex;align-items:center;gap:11px}.brand-icon{display:grid;place-items:center;background:#e6aa4a;color:#152438;font-weight:900;width:39px;height:39px;border-radius:11px;font-size:23px}.brand strong{display:block;font-size:18px}.brand small{display:block;color:#a6b6c6;font-size:13px}.save,.muted{color:#a6b6c6;font-size:14px}main{max-width:1180px;margin:auto;padding:26px 24px 55px}.tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:14px;border-bottom:1px solid #344a60}.tabs button{white-space:nowrap;background:transparent;border-color:transparent;color:#aebdcb}.tabs button.active{background:#29455b;border-color:#518299;color:#fff}.view{display:none}.view.active{display:block}.section-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin:28px 0 22px}.eyebrow{font-size:13px;letter-spacing:.14em;font-weight:800;color:#e6aa4a;margin:0 0 8px}h1{font-size:clamp(28px,4vw,42px);letter-spacing:-.035em;margin:0 0 8px}h2{font-size:20px;margin:0 0 12px}.section-head p:last-child,.card p,.tool-card p{color:#b7c5d2;line-height:1.55;margin:7px 0}.notice{background:#203448;border:1px solid #3f596d;border-left:4px solid #e6aa4a;padding:15px 18px;border-radius:11px;margin-bottom:20px;line-height:1.45}.card,.tool-card{background:#1a2c3e;border:1px solid #355067;border-radius:17px;padding:23px;margin:16px 0;box-shadow:0 12px 35px #0b162333}.question-card{display:grid;grid-template-columns:45px 1fr;gap:13px}.number{display:grid;place-items:center;border-radius:11px;background:#315065;color:#f1bd68;width:42px;height:42px;font-weight:800}.question-card h2{line-height:1.4}.answer{width:100%;min-height:80px;margin-top:8px}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:14px}textarea{width:100%;border:1px solid #456078;border-radius:10px;background:#122437;color:#f2f6fa;padding:13px;resize:vertical;line-height:1.5}textarea::placeholder{color:#899dad}summary{cursor:pointer;font-weight:750;font-size:18px}.file-button{display:inline-flex;border:1px solid #426077;background:#203448;color:#e9eff8;border-radius:11px;padding:11px 15px;font-weight:650}.reveal{margin-top:14px;padding:14px;background:#253e4d;border-radius:10px}.grade button.active{border-color:#e6aa4a;background:#6d532d}.score{font-size:24px;font-weight:800;padding:15px;border:1px solid #587388;border-radius:12px}.oral-layout{display:grid;grid-template-columns:255px 1fr;gap:20px}.oral-list{display:flex;flex-direction:column;gap:7px}.oral-list button{text-align:left;line-height:1.35}.oral-list button.active{border-color:#e6aa4a;color:#ffcf7e}.oral-list span{display:block;font-size:12px;color:#9fb3c4;margin-bottom:3px}.chips{display:flex;flex-wrap:wrap;gap:9px;padding:0;list-style:none}.chips li{border:1px solid #527085;border-radius:30px;padding:7px 11px;color:#d1e0ed}.oral-feedback{border-radius:12px;padding:14px;background:#254050;margin-top:13px}.oral-feedback ul{margin-bottom:0}.stepper{display:flex;gap:9px;flex-wrap:wrap}.stepper button.active{border-color:#e6aa4a;background:#514329}.upload-area{border-top:1px solid #355067;padding-top:20px;margin-top:25px}.photo{display:grid;grid-template-columns:minmax(120px,260px) 1fr;gap:15px;padding:16px;border:1px solid #405c72;border-radius:13px;margin:13px 0}.photo img{width:100%;height:180px;object-fit:cover;border-radius:9px}.photo textarea{min-height:95px}.photo-actions{display:flex;gap:8px;margin-top:9px}.label{color:#e6aa4a;font-weight:700}.empty{padding:25px;text-align:center;border:1px dashed #527085;border-radius:14px;color:#aec0cd}footer{text-align:center;color:#90a4b4;padding:25px;font-size:13px}footer a{color:#a6ddec}code{background:#112333;padding:2px 5px;border-radius:4px}@media(max-width:700px){header{padding:0 18px}.save{display:none}main{padding:14px 14px 45px}.section-head{align-items:start;flex-direction:column;margin:24px 0 16px}.section-head>button{width:100%}.oral-layout{grid-template-columns:1fr}.oral-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:210px;overflow:auto}.oral-list button{font-size:14px;padding:9px}.card,.tool-card{padding:17px}.question-card{grid-template-columns:1fr}.photo{grid-template-columns:1fr}.photo img{height:210px}} 
/* Repères de la fiche orale après transcription. */
.oral-feedback ul{list-style:none;padding:0;display:grid;gap:7px}
.oral-feedback li{padding:8px 10px;border-radius:8px}
.oral-feedback li.detected{background:#244b3e;color:#cbf4df}
.oral-feedback li.detected{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.oral-feedback li.missing{background:#443d30;color:#ffe2ac}
.oral-timer{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0}
.oral-timer strong{font-variant-numeric:tabular-nums;font-size:1.7rem;min-width:4.8ch}
.oral-timer strong.overtime{color:#ffd08b}
.oral-timer span{color:#a6b6c6;margin-right:auto}
.truck-reference{margin:19px 0 14px}
.truck-reference img{display:block;width:100%;max-height:520px;object-fit:contain;border-radius:12px;background:#d7dee1}
.truck-reference figcaption{color:#aebfcf;font-size:13px;line-height:1.45;margin-top:8px}
.vehicle-facts{display:grid;gap:5px;border:1px solid #527085;border-radius:11px;background:#20394b;padding:14px;line-height:1.45}
.vehicle-facts span{color:#d3e0e9}
.reveal.correct{border:1px solid #5c9c74;background:#214a39}
.reveal.incorrect{border:1px solid #b88a63;background:#49372e}
.question-sign{display:flex;align-items:center;gap:12px;margin:12px 0;padding:10px;border:1px solid #4b687d;border-radius:11px;background:#294052}
.question-sign img{width:225px;max-width:100%;height:auto;flex:none}
.question-sign figcaption{color:#d6e3ec;font-size:14px}
.answer:disabled{opacity:1;color:#e9eff8;background:#26394b}
button:disabled{cursor:default;opacity:.65}
[hidden]{display:none!important}
.account-menu{display:flex;align-items:center;gap:10px;color:#dce6ee}.account-menu button{padding:8px 10px;font-size:13px}
.auth-card{max-width:480px;margin:50px auto;padding:28px}.auth-card p{line-height:1.5}.auth-tabs{display:flex;gap:8px;margin:20px 0}.auth-tabs button.active{border-color:#e6aa4a;background:#514329}.auth-card form{display:grid;gap:15px}.auth-card label{display:grid;gap:6px;font-weight:700}.auth-card input{width:100%;background:#122437;border:1px solid #456078;border-radius:10px;color:#f2f6fa;padding:12px}.auth-card #auth-error{color:#ffd08b;min-height:1.2em;margin:0}
@media(max-width:700px){.account-menu span{display:none}.account-menu button{font-size:12px}}

.quiz-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0;padding:12px;background:#203448;border-radius:12px}.quiz-nav label{font-weight:700}.quiz-nav select{background:#122437;color:#fff;border:1px solid #527085;border-radius:8px;padding:10px}.mistake-item{border-top:1px solid #456078;padding:14px 0}.mistake-item p{margin:5px 0}.mistake-item strong{color:#ffd18e}@media(max-width:700px){.quiz-nav button{flex:1}.question-sign{align-items:start;flex-direction:column}}
.checklist{padding-left:1.5rem;line-height:1.6}.checklist li{padding:.55rem .25rem;border-bottom:1px solid #355067}.checklist li::marker{color:#e6aa4a;font-weight:800}.source-details{margin-top:1.25rem}.source-details li{line-height:1.55;margin:.55rem 0}

.truck-gallery{margin-top:24px}.truck-view-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.truck-view-buttons button[aria-pressed="true"]{background:#b79555;color:#101d2d;border-color:#d9ba79}.truck-reference img{width:100%;max-height:560px;object-fit:contain;border-radius:10px}.truck-reference figcaption p{margin:6px 0}.truck-gallery dialog{width:min(1100px,95vw);max-height:95vh;padding:16px;background:#172a3b;color:#fff;border:1px solid #527085;border-radius:12px}.truck-gallery dialog::backdrop{background:#000b}.truck-gallery dialog img{display:block;width:100%;max-height:80vh;object-fit:contain;margin-top:12px}
/* ADR: large tap targets, visible labels, and feedback after validation. */
.adr-summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:18px 0}.adr-summary p{margin:0}.adr-question h2{line-height:1.5}.adr-label-wrap{display:flex;justify-content:center;margin:20px 0}.adr-label{width:180px;height:180px;object-fit:contain;background:white;padding:7px;border-radius:8px}.adr-options{border:0;padding:0;margin:20px 0}.adr-options legend{color:#aebdcb;font-size:14px;margin-bottom:10px}.adr-options label{display:flex;align-items:center;gap:12px;padding:15px;margin:9px 0;border:1px solid #486276;border-radius:10px;cursor:pointer;background:#203448}.adr-options input{width:22px;height:22px;flex-shrink:0;accent-color:#e6aa4a}.adr-options label:has(input:checked){border-color:#e6aa4a;background:#314b5b}.adr-options:disabled label{cursor:default}.adr-question .adr-feedback{padding:18px;border:1px solid #456078;border-radius:12px;margin-top:20px;background:#253d50}.adr-question .adr-feedback.ok,#adr-history .adr-feedback.ok{background:#1d493d;border-color:#598b76}.adr-question .adr-feedback.wrong,#adr-history .adr-feedback.wrong{background:#503b2d;border-color:#ae8863}.adr-question .adr-feedback a,#adr-history a{color:#9ee1f0}.adr-label-bank{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}.adr-label-bank figure{margin:0;text-align:center}.adr-label-bank .adr-label{width:100%;height:auto;aspect-ratio:1}.adr-label-bank figcaption{padding-top:7px;font-weight:800;color:#f0bc69}.adr-match-inputs{display:grid;gap:12px;margin-bottom:20px}.adr-match-inputs label{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:10px;border-bottom:1px solid #355067}.adr-match-inputs select,#adr-support-select{font:inherit;max-width:100%;padding:12px;background:#122437;color:#fff;border:1px solid #456078;border-radius:9px}.adr-match-results>div{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #456078;padding:12px 0;gap:12px}.adr-match-results span{display:flex;align-items:center;gap:10px}.adr-match-results .adr-label{width:70px;height:70px}.adr-support{display:block;width:100%;max-width:850px;height:auto;margin:18px auto}.adr-question button:disabled{opacity:.65;cursor:default}#adr-history .adr-feedback{padding:15px;border-radius:10px}#adr-support-select{display:block;margin-top:12px}#adr a{color:#9ee1f0}@media(max-width:600px){.adr-question{padding:18px}.adr-match-inputs label{align-items:stretch;flex-direction:column;gap:8px}.adr-label-bank{gap:8px}.adr-label-bank .adr-label{padding:4px}.adr-summary{font-size:14px}}

.adr-controls{display:grid;grid-template-columns:1fr 1fr;gap:16px}.adr-controls label{display:grid;gap:8px;font-weight:700}.adr-controls select{width:100%;padding:12px;background:#122437;color:#fff;border:1px solid #456078;border-radius:9px;font:inherit}.adr-controls p{grid-column:1/-1;margin:0;line-height:1.6}.adr-match-results{overflow-wrap:anywhere}@media(max-width:600px){.adr-controls{grid-template-columns:1fr}.adr-match-results>div{align-items:flex-start;flex-direction:column}.adr-options label{align-items:flex-start}}
