:root{--bg:#1b1e20;--card:#25292c;--line:#3a3e41;--text:#f1f2f3;--muted:#a4adb2;--accent:#ffd21c;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button,.button{border:1px solid var(--line);border-radius:6px;background:#303539;color:var(--text);padding:11px 16px;cursor:pointer;text-decoration:none;display:inline-block}button:hover,.button:hover{border-color:var(--accent);background:#3a4043}button:focus-visible,a:focus-visible,input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:3px}button.primary{background:var(--accent);color:#131719;border-color:var(--accent);font-weight:750}button.danger{color:#ff8e96}header{padding:24px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand b{font-size:25px;letter-spacing:-1px;font-style:italic}.brand b span{color:#ed3448;margin-left:8px}.brand small{display:block;font-size:10px;letter-spacing:4px;margin-top:5px}.mode{font:11px ui-monospace,monospace;letter-spacing:1px;color:var(--muted)}.mode button{font-size:11px;margin-left:16px;padding:7px}main{max-width:1240px;margin:auto;padding:0 40px 110px}.hero{padding:48px 0 38px;display:flex;justify-content:space-between;gap:35px;background:repeating-linear-gradient(132deg,transparent 0 30px,#ffffff03 31px 32px);border-bottom:1px solid var(--line)}.eyebrow{font:11px ui-monospace,monospace;letter-spacing:2px;color:var(--muted);text-transform:uppercase}h1,h2,h3{font-family:"Avenir Next Condensed","Arial Narrow",Impact,sans-serif;font-stretch:condensed;text-transform:uppercase;margin:0;letter-spacing:.4px}h1{font-size:clamp(44px,6vw,78px);line-height:.99;font-weight:900}h1 em{font-style:normal;color:var(--accent)}.hero p:last-child{color:var(--muted);font-size:13px}.hero aside{width:265px;padding:20px;background:#24282b;border:1px solid var(--line);border-top:3px solid #ed3448;align-self:center}.hero small{font-size:11px;color:var(--muted)}label{display:block;font-size:12px;color:var(--muted);margin:14px 0}input,select,textarea{display:block;width:100%;margin-top:7px;border:1px solid #50575b;background:#1c2022;color:var(--text);border-radius:5px;padding:11px;min-width:0}textarea{min-height:95px}input[type=checkbox]{width:auto;display:inline}.notice{font:11px ui-monospace,monospace;letter-spacing:1px;color:#e3c65b;border-left:3px solid #ffd21c;padding:13px 16px;margin-top:20px;background:#ffd21c08}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:32px 0 22px}.toolbar h2{font-size:32px;color:var(--accent)}.toolbar .eyebrow{margin-top:0}.toolbar button{margin:3px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:23px;border-left:4px solid var(--accent)}.event{width:100%;text-align:left;display:flex;align-items:center;gap:22px;min-height:155px}.event:hover{transform:translateY(-2px)}.flag{font-size:38px}.event h3{font-size:27px;margin:8px 0}.event .meta{font-size:12px;color:var(--muted);line-height:1.8}.circuit{margin-left:auto;width:105px;flex-shrink:0;color:var(--accent)}.circuit svg{width:100%;height:65px}.circuit small{font:9px monospace;color:var(--muted)}.tag{display:inline-block;border:1px solid #545b5f;border-radius:3px;padding:4px 7px;font:10px ui-monospace,monospace;letter-spacing:.5px;color:var(--muted)}.tag.accent{color:var(--accent);border-color:var(--accent)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}.stat{background:var(--card);border:1px solid var(--line);padding:18px}.stat b{font-size:30px;display:block;color:var(--accent)}.stat span{color:var(--muted);font-size:12px}.subnav{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.subnav button.selected{border-color:var(--accent);color:var(--accent)}.route{display:flex;justify-content:space-between;align-items:center;margin:25px 0}.route strong{font-size:36px}.route .plane{flex:1;text-align:center;color:var(--accent);margin:0 15px;border-bottom:1px dashed #68747b;padding-bottom:8px}.route small{display:block;color:var(--muted);margin-top:5px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.details{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:18px}.details small{display:block;color:var(--muted);margin-bottom:6px}.details b{font-size:13px}.muted{color:var(--muted);font-size:13px;line-height:1.7}.empty{padding:35px;border:1px dashed #51595f;border-radius:8px;color:var(--muted);text-align:center}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;background:var(--card)}th,td{padding:15px;text-align:left;border-bottom:1px solid var(--line);font-size:13px}th{font:10px ui-monospace,monospace;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}td button{padding:7px 10px}.avatar{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:50%;background:#3b4a43;color:#7bddae;font-weight:700;margin-right:10px}.message{margin-bottom:15px}.message p{white-space:pre-wrap}.timeline{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;gap:10px;padding:20px 0}.timeline span{border-top:2px solid var(--accent);padding-top:12px;flex:1}.document{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:12px 0}.document span{overflow-wrap:anywhere}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.formgrid .wide{grid-column:1/-1}nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;background:#191c1ef5;backdrop-filter:blur(15px);border-top:1px solid var(--line);z-index:5;padding:10px max(10px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom))}nav button{border:0;background:none;border-radius:0;color:var(--muted);font-size:11px;letter-spacing:1px;padding:9px 22px}nav button span{display:block;font-size:20px;margin-bottom:5px}nav button.selected{color:var(--accent);box-shadow:inset 0 2px var(--accent)}footer{margin-top:40px;border-top:1px solid var(--line);padding-top:20px;font:10px monospace;color:var(--muted);display:flex;justify-content:space-between;gap:20px}dialog{background:#22272a;color:var(--text);border:1px solid #596167;border-radius:12px;width:min(760px,94vw);max-height:90vh;padding:30px}dialog::backdrop{background:#000b;backdrop-filter:blur(4px)}dialog h2{margin:0 35px 20px 0;color:var(--accent);font-size:29px}dialog h3{margin-top:25px}.close{position:absolute;right:12px;top:10px;font-size:24px;padding:3px 11px}.modalActions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}#toast{position:fixed;bottom:95px;left:50%;transform:translateX(-50%);background:#edf5ee;color:#16231a;border-radius:6px;padding:14px 22px;z-index:20;display:none;max-width:90vw}.viewer{width:100%;height:65vh;background:#fff;object-fit:contain;border:0}.search{max-width:320px;margin:0 0 20px}.read{opacity:.7}a{color:var(--accent)}@media(max-width:720px){header{padding:18px}.brand b{font-size:19px}.brand small{font-size:8px;letter-spacing:3px}.mode{font-size:9px}.mode button{display:block;margin:6px 0 0 auto}main{padding:0 18px 120px}.hero{padding:28px 0;display:block}.hero aside{width:100%;margin-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.hero aside .eyebrow,.hero aside small{grid-column:1/-1}.grid{grid-template-columns:1fr}.event{gap:15px;padding:18px}.flag{font-size:30px}.event h3{font-size:23px}.circuit{width:75px}.toolbar{align-items:flex-start}.toolbar h2{font-size:27px}.toolbar button{font-size:12px;padding:9px}.formgrid{grid-template-columns:1fr}.formgrid .wide{grid-column:auto}nav{justify-content:space-around}nav button{font-size:8px;padding:9px 5px;letter-spacing:0}.stats{gap:8px}.stat{padding:12px}.stat span{font-size:10px}footer{display:block;line-height:1.8}footer span{display:block}.details{grid-template-columns:repeat(2,1fr)}}@media print{header,.hero,nav,footer,.toolbar,#notice,.close,.modalActions{display:none}body,dialog{background:white;color:black}dialog{position:static;max-height:none;width:100%;border:0}.viewer{height:90vh}}

:root{--bg:#1b1f21;--card:#252a2d;--line:#3b4246;--muted:#aab3b8}
header{min-height:112px;padding:24px max(22px,calc((100% - 1040px)/2))}
.brand b{font-size:32px;color:#f14a51;letter-spacing:1px}.brand b span{color:#f14a51}
main{max-width:1120px}.hero{display:block;padding:32px 0;background:repeating-linear-gradient(133deg,transparent 0 23px,#ffd21c0b 24px 25px)}
h1,h2,h3{font-family:"DIN Condensed","Avenir Next Condensed","Arial Narrow",Impact,sans-serif;font-weight:800;letter-spacing:1px}h1{font-size:clamp(37px,6vw,59px)}.hero .eyebrow,.hero p:last-child{color:#d4b735}.garage{margin-top:24px;border-bottom:1px solid var(--line)}.garage h2{font-size:24px}.toolbar .eyebrow{margin-bottom:5px}
.card{margin-bottom:16px}.summary{border-left-width:1px;border-top:3px solid var(--accent)}.summary h3{font-size:29px}.summary .row{flex-wrap:wrap}.actions{display:flex;flex-wrap:wrap;gap:8px}.actions button{margin:0}.sectionhead{margin:22px 0 12px;color:var(--accent)}.sectionhead:first-child{margin-top:0}
.setup-group{margin-bottom:9px;border:1px solid var(--line);border-radius:7px;background:var(--card)}.setup-group summary{cursor:pointer;padding:15px 18px;color:var(--accent);font-weight:700}.setup-group .formgrid{padding:0 18px 12px}.setup-group label{margin:8px 0}.setup-group[hidden]{display:none}.sticky{position:sticky;bottom:74px;z-index:2;background:var(--bg);border-top:1px solid var(--line);padding:12px 0;margin-top:16px}.tablewrap td,.tablewrap th{overflow-wrap:anywhere;min-width:94px}.delta{color:var(--accent);font-weight:700}.record p,.tips p{white-space:pre-wrap;overflow-wrap:anywhere}.badge{font:11px ui-monospace,monospace;color:#a4cefa}.muted a{color:var(--accent)}[hidden]{display:none!important}
nav button.selected{color:var(--tone,var(--accent));box-shadow:inset 0 2px var(--tone,var(--accent))}nav button{min-height:48px}.subnav button{overflow-wrap:anywhere}h3{overflow-wrap:anywhere}.err{color:#ff9399}.search{margin:12px 0 18px}.fields-count{font-size:12px}.backup-line{margin-bottom:12px}
@media(max-width:720px){header{min-height:90px}.brand b{font-size:25px}.toolbar{flex-wrap:wrap;gap:8px}.hero{padding:25px 0}.sticky{bottom:68px}.formgrid{gap:0}.stat b{font-size:22px}}

/* En-tête et navigation issus de la présentation de Workshop. */
:root{color-scheme:light dark;--bg:light-dark(#fcfaf7,#202321);--card:light-dark(#f4f0e9,#292d2a);--line:light-dark(#dcded6,#4a514a);--text:light-dark(#242923,#f6f3ec);--muted:light-dark(#565b52,#c0c7bd);--accent:light-dark(#8a291f,#f29181);--control:light-dark(#fffefa,#262a27)}
header{min-height:72px;background:var(--bg);border-bottom:1px solid var(--line);padding-block:16px}
.brand b,.brand b span{font:650 24px/1.15 system-ui;color:var(--text);letter-spacing:0}.brand b span{color:var(--accent);margin-left:5px}.brand small{letter-spacing:2px;color:var(--muted)}
main{padding-bottom:110px}.hero{background:none;padding:22px 0}.hero h1,h2,h3,.toolbar h2{font:650 24px/1.2 system-ui;letter-spacing:0;text-transform:none}.hero h1{font-size:clamp(30px,5vw,48px)}.hero .eyebrow,.hero p:last-child{color:var(--muted)}
button,.button,input,select,textarea,dialog{background:var(--control);color:var(--text);border-color:var(--line)}button:hover,.button:hover{background:var(--card);border-color:var(--accent)}
button.primary{color:light-dark(#fff,#242321);background:var(--accent);border-color:var(--accent)}
nav{background:var(--card);padding:6px max(6px,calc((100vw - 900px)/2)) calc(6px + env(safe-area-inset-bottom));gap:4px;justify-content:stretch}nav button{flex:1;min-width:0;min-height:48px;padding:5px 1px;text-transform:none;letter-spacing:0;border-radius:8px;color:var(--muted);font-size:12px}nav button.selected{background:color-mix(in srgb,var(--accent) 12%,var(--card));box-shadow:none;color:var(--accent)}
.card,.setup-group{background:var(--card);border-color:var(--line)}.card{border-left:4px solid var(--accent);padding:17px 19px}.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{padding:12px;border-radius:7px}.stat b{font-size:clamp(17px,4vw,27px)}.tag{border-color:var(--line)}
.car-head{display:flex;align-items:center;gap:12px}.car-mark{width:54px;height:44px;border-radius:8px;background:var(--card);color:var(--accent);border:1px solid var(--line);display:grid;place-items:center;font:800 italic 17px/1 system-ui;flex-shrink:0;overflow:hidden}.car-mark img{width:100%;height:100%;object-fit:contain}.garage{margin-top:16px}
.chips{display:flex;gap:8px;flex-wrap:wrap}.chips label{display:flex;gap:6px;align-items:center;border:1px solid var(--line);border-radius:6px;padding:8px 10px;margin:0;color:var(--text)}.chips input{width:auto;display:inline;margin:0}.parts-picks{margin-top:12px}.parts-picks legend{color:var(--muted);font-size:12px}.run-list{display:grid;gap:10px}.run-list .card{margin:0}.parts-section{margin:22px 0 12px}.part-row{overflow-wrap:anywhere}.status-text{color:var(--accent);font-weight:650}.row.wrap{flex-wrap:wrap}.record h3{margin:4px 0}.lap-file{overflow-wrap:anywhere}.warn{color:var(--accent)}fieldset{border:1px solid var(--line);border-radius:6px}.form-error{color:var(--accent);min-height:1.3em}.part-row .muted,.record .muted{margin:5px 0}.tablewrap{border:1px solid var(--line);border-radius:8px}.pdf-actions{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:720px){nav button{font-size:10px}.toolbar{margin-top:18px}.hero{padding:18px 0}.card{padding:13px}.stat{padding:8px}}
