:root{--bg:#08111f;--card:#111e31;--card2:#17263b;--stroke:#253851;--muted:#94a9c3;--text:#f0f6ff;--accent:#4de0bb;--accent2:#178b78;--danger:#fb7886;--yellow:#ffd27a;font-family:Inter,system-ui,-apple-system,Roboto,'Segoe UI',sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-size:14px;overscroll-behavior:none}button,input,select,textarea{font:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{opacity:.48;cursor:default}.topbar{height:70px;position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;padding:12px 17px;background:rgba(8,17,31,.98);border-bottom:1px solid #1c2d46}.brand{display:flex;align-items:center;gap:9px}.brandIcon{height:35px;width:35px;border-radius:10px;color:#081b1a;background:var(--accent);font-weight:900;display:grid;place-items:center;font-size:17px}.brand strong{display:block;letter-spacing:1.8px;font-size:16px}.brand em{color:var(--accent);font-style:normal}.brand small{font-size:9px;color:#90aac2;letter-spacing:1.4px;display:block;margin-top:3px}main{max-width:750px;margin:auto;min-height:calc(100vh - 160px);padding:18px 15px 100px}.panel{display:none}.panel.active{display:block}.smallbtn{border:1px solid var(--stroke);border-radius:11px;background:#142238;color:var(--text);padding:9px 12px;display:flex;align-items:center;gap:9px;max-width:51vw;font-weight:650}.smallbtn #showLabel{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.warning{padding:12px 20px;color:#190a08;background:#ffba70}.eyebrow{display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:800;color:#748da9;letter-spacing:1.6px;margin:3px 2px 12px}.lightdot{height:8px;width:8px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 4px #13453955}.nextCard{border:1px solid #2b595c;background:linear-gradient(145deg,#173847,#102539 70%);border-radius:17px;padding:18px;min-height:132px}.nextHead{display:flex;align-items:center;justify-content:space-between;color:#a2d7d8;font-size:10px;letter-spacing:1.4px;font-weight:800}.pill{border:1px solid #39686b;padding:5px 8px;border-radius:9px;color:#a6e5d9;letter-spacing:.6px}.nextName{font-size:27px;line-height:1.2;font-weight:780;margin:17px 0 5px;letter-spacing:-.6px;overflow-wrap:anywhere}.nextSub{color:#9fc4cd;font-size:12px}.transport{display:grid;grid-template-columns:1fr 1.45fr 1fr;align-items:stretch;gap:11px;margin-top:19px}.transport button{border-radius:17px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;font-size:10px;font-weight:800;letter-spacing:.5px;border:1px solid var(--stroke);min-height:116px}.backTransport{color:#bfd1e7;background:#172638}.stopTransport{color:#ff9ca7;background:#391e31;border-color:#703746!important}.transportIcon{font-size:32px;line-height:1}.goTransport{background:linear-gradient(145deg,#72f2c8,#2ac39c);color:#092d25;border:0!important;box-shadow:0 8px 29px #39ebbc23}.goTransport:active{filter:brightness(.8);transform:scale(.97)}.goText{font-size:49px;line-height:1;letter-spacing:1px;font-weight:950}.goMini{letter-spacing:1.5px}.volumeBar{border:1px solid var(--stroke);border-radius:14px;padding:13px 15px;margin-top:17px;background:#111e2d}.volTop{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.volTop label{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:1px}.volTop strong{color:var(--accent);font-size:14px}.volRow{display:flex;align-items:center;gap:14px}input[type=range]{accent-color:var(--accent);width:100%;height:19px}.miniAdjust{width:32px;min-width:32px;height:30px;border-radius:8px;border:1px solid #3a526b;background:#192e43;color:#d7e7f4;font-size:20px}.sectionTitle{display:flex;justify-content:space-between;align-items:center;margin:26px 0 13px;gap:10px}.sectionTitle h2{font-size:11px;letter-spacing:1.4px;color:#9db0c7;margin:0}.sectionTitle span{color:var(--muted);font-size:11px}.cueList,.editList,.audioList{display:grid;gap:8px}.cueRow{border:1px solid var(--stroke);border-radius:12px;padding:11px 12px;display:flex;gap:12px;align-items:center;background:#111e30;min-height:68px}.cueRow.next{border:1px solid #4cc99b;background:linear-gradient(115deg,#193b3e,#102a37)}.cueRow.playing{border-color:#2e87d0;background:#182e48}.cueNumber{width:35px;height:35px;background:#21344d;border-radius:9px;display:grid;place-items:center;font-size:12px;font-weight:900;color:#c1d3e5;flex-shrink:0}.cueRow.next .cueNumber{background:#237663;color:#cbfdeb}.cueInfo{flex:1;min-width:0}.cueInfo strong{display:block;font-size:14px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cueInfo small{color:#8ea6be;font-size:11px;display:block;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cueKind{font-size:9px;font-weight:900;letter-spacing:1px;border:1px solid #334a62;color:#9bb5d3;border-radius:7px;padding:5px;white-space:nowrap}.empty{background:#101d2f;border:1px dashed #334c6a;border-radius:12px;padding:32px 15px;text-align:center;color:#92a7c3;line-height:1.7}.muted{color:var(--muted)}.help{line-height:1.6;margin:0 0 17px}.accentButton{border:0;border-radius:10px;background:var(--accent);color:#09251e;padding:10px 15px;font-weight:800}.outlineButton,.dangerOutline{border:1px solid #38516c;border-radius:10px;background:#172639;color:#d9e8f7;padding:11px 13px;font-weight:700}.dangerOutline{border-color:#793d50;color:#ff9faa;background:#351e30}.full{width:100%;margin:7px 0}.editRow{border:1px solid var(--stroke);background:var(--card);border-radius:12px;padding:12px}.editMain{display:flex;gap:10px;align-items:center}.editActions{display:flex;gap:6px;margin-top:12px;justify-content:flex-end}.iconbtn{background:#1a2f48;border:1px solid #2f4761;color:#d7e5f5;border-radius:8px;min-height:35px;padding:6px 12px;font-weight:700}.editFoot{margin:16px 0}.storageNote{border-radius:11px;border:1px solid #3f5369;background:#16273a;padding:12px;color:#bdcede;margin-bottom:15px}.storageNote strong{color:#d7e7f7}.storageNote p{font-size:12px;margin:7px 0 0;line-height:1.6}.toolCard{padding:18px;border:1px solid var(--stroke);background:#111f31;border-radius:13px;margin:12px 0}.toolCard h3{font-size:16px;margin:0 0 8px}.toolCard p{color:var(--muted);font-size:12px;line-height:1.6;margin:0 0 14px}.buttonGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.keyboard{color:var(--muted);line-height:1.8}.footNote{text-align:center;color:#74879a;font-size:11px;line-height:1.7;margin:25px 2px}.bottomnav{position:fixed;bottom:0;left:0;right:0;height:calc(70px + env(safe-area-inset-bottom));padding:6px 8px env(safe-area-inset-bottom);display:flex;justify-content:space-around;background:#0e1c2e;border-top:1px solid #273951;z-index:5}.navItem{min-width:0;flex:1;color:#8aa0b7;background:transparent;border:0;border-radius:10px;display:flex;gap:3px;flex-direction:column;align-items:center;justify-content:center;font-size:10px;font-weight:750}.navItem.selected{background:#183b3c;color:var(--accent)}.navicon{font-size:23px;line-height:1.1}.shade{position:fixed;inset:0;background:#030811cf;z-index:20;display:flex;align-items:flex-end;justify-content:center}.shade.hidden{display:none}.modal{background:#132238;border:1px solid #355171;border-radius:20px 20px 0 0;padding:20px;width:100%;max-width:700px;max-height:94vh;overflow:auto;box-shadow:0 -12px 40px #0008;padding-bottom:max(22px,env(safe-area-inset-bottom))}.modalHeader{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.modalHeader h2{font-size:19px;margin:0}.modal label{display:block;font-size:11px;font-weight:800;color:#b9ccdc;letter-spacing:.5px;margin:12px 0 6px}.modal input:not([type=checkbox]),.modal select,.modal textarea{width:100%;background:#091728;border:1px solid #39516d;color:#ecf6ff;border-radius:9px;padding:11px 12px;outline:none}.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:var(--accent)}.modal textarea{resize:vertical}.formGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px}.modalFooter{display:flex;gap:10px;margin-top:18px}.modalFooter button{flex:1}.modalHelp{color:#879eb6;font-size:11px;margin-top:6px;line-height:1.5}.listOption{width:100%;padding:13px;text-align:left;border-radius:10px;margin:4px 0;border:1px solid #35516d;background:#192c45;color:#f2f9ff}.listOption.selected{border-color:var(--accent)}.toast{position:fixed;z-index:30;bottom:calc(82px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);background:#274255;color:white;border:1px solid #52738b;padding:12px 18px;border-radius:11px;display:none;max-width:min(90vw,540px);width:max-content;box-shadow:0 6px 22px #0008}.toast.visible{display:block}@media(min-width:740px){.shade{align-items:center}.modal{border-radius:20px;max-height:85vh}.bottomnav{max-width:750px;left:50%;transform:translateX(-50%);border:1px solid #273951;border-radius:18px 18px 0 0}.transport button{min-height:135px}}

/* v0.1.2 — MP3 réels et ajout express */
.importCard{border:1px solid #315e70;border-radius:15px;background:linear-gradient(135deg,#162c43,#102536);padding:16px;margin-bottom:16px}
.importCard strong{font-size:17px;color:#e4f7fb}.importCard p{font-size:12px;line-height:1.5;color:#adcad8;margin:8px 0 12px}.importCard .full{margin:6px 0}
.importStatus{font-size:12px;color:#e5ddad;margin-top:10px;overflow-wrap:anywhere;line-height:1.4}.importStatus[hidden]{display:none}
.audioEntry{flex-wrap:wrap}.audioEntry .cueInfo{min-width:145px}.audioActions{display:flex;gap:6px;align-items:center}.audioActions .iconbtn{padding:7px 9px}.audioActions .addCueSmall{color:#a4f5d9;border-color:#327461}.audioActions .deleteSmall{color:#e3a6a6}
@media(max-width:430px){.audioActions{width:100%;justify-content:flex-end}.audioEntry .cueInfo{min-width:0}}

/* v0.1.3 — réglage par piste en conduite + validation de l’édition en haut */
.levelModeToggle{width:100%;margin:0 0 11px;padding:11px 12px;background:#142438;border:1px solid #34516e;color:#c4d6e7;display:flex;align-items:center;justify-content:space-between;gap:8px;border-radius:11px;font-size:11px;font-weight:800;letter-spacing:.45px;text-align:left}
.levelModeToggle[aria-pressed="true"]{border-color:#4de0bb;color:#dcfff6;background:#163938}
.levelModeState{border-radius:7px;padding:5px 7px;background:#28394c;color:#abc0d6;font-size:9px;white-space:nowrap}
.levelModeToggle[aria-pressed="true"] .levelModeState{background:#2b8e72;color:#f5fffd}
.levelModeHelp{color:#a8d7d0;font-size:11px;line-height:1.55;margin:-3px 3px 13px}
.levelModeHelp[hidden]{display:none}
.cueRowWithLevel{flex-wrap:wrap;gap:10px}
.liveCueVolume{width:100%;flex:0 0 100%;border-top:1px solid #34536d;margin-top:4px;padding:12px 3px 6px}
.liveVolumeHeading{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:0 0 8px}
.liveVolumeHeading label{font-size:10px;color:#b2cddd;font-weight:800;letter-spacing:.7px}
.liveVolumeHeading strong{font-size:15px;color:#5af0c2;white-space:nowrap}
.liveCueVolume input[type="range"]{display:block;height:30px;width:100%;margin:0;touch-action:pan-y;accent-color:#4de0bb}
.cueFormToolbar{position:sticky;top:-20px;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:10px;background:#132238;padding:13px 5px 12px;margin:-3px -5px 14px;border-bottom:1px solid #34516b}
.cueFormToolbar button{padding:12px 8px;font-weight:800}


/* v0.1.4 — installation PWA et accès hors connexion */
.installBanner{margin:0 auto;max-width:750px;padding:10px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#13332f;border-bottom:1px solid #206657}
.installBanner[hidden],.updateBanner[hidden]{display:none}
.installBannerCopy{min-width:0;display:grid;gap:4px}
.installBannerCopy strong{font-size:13px;color:#dcfff2}
.installBannerCopy small{font-size:11px;color:#add3c7;line-height:1.35}
.installBannerButton{background:#4de0bb;border:none;border-radius:9px;padding:10px 13px;color:#09251e;font-weight:850;white-space:nowrap}
.updateBanner{margin:0 auto;max-width:750px;padding:10px 15px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#1c3145;font-size:12px}
.updateBanner button{padding:9px 13px;border-radius:9px;background:#4de0bb;color:#062d21;border:0;font-weight:800}
.installCard{border-color:#2c685b}
.installCard .installHelp{margin:9px 0 13px}
.connectionPill{padding:9px 11px;background:#142c38;color:#a9c8d9;border-radius:9px;font-size:11px;line-height:1.4}
.connectionPill.ready{color:#a7f9c7;background:#13342d}
.connectionPill.offline{color:#eac784;background:#342e1c}
@media(max-width:375px){.installBannerCopy small{font-size:10px}.installBannerButton{padding:9px 10px}}
