/* Les logiciels : carte « Éditeur de partition » au même rang que l’éditeur audio et la DAW */
.software-score-card{grid-column:1/-1;display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:34px;align-items:center;background:#eef3ff!important;border-color:#1762ff33!important}
.software-score-card small{color:var(--blue)!important}
.score-visual .score-visual-paper{padding:18px 16px 10px;background:#fff}
.score-visual .score-svg{display:block;width:100%;height:auto}
.score-card-link{display:inline-block;margin-top:10px}
@media(max-width:900px){.software-score-card{grid-template-columns:1fr}}

/* Les commandes d’une piste : tranche de console redessinée */
.daw-control-explorer{grid-template-columns:230px 1fr!important;align-items:start}
.daw-strip2{display:grid;gap:8px;padding:0 0 12px;background:#1b202b;border:1px solid #ffffff14;border-radius:12px;overflow:hidden;box-shadow:0 14px 30px #0006}
.daw-strip2 button{font:inherit;color:#e7ebf3;cursor:pointer;border:1px solid #ffffff1c;background:#141925;border-radius:8px;transition:border-color .15s,box-shadow .15s,background .15s}
.daw-strip2 button:hover{border-color:#ffffff40}
.daw-strip2 button.selected{border-color:var(--mint);box-shadow:0 0 0 2px #8be8bd55}
.ds2-head{display:grid;grid-template-columns:6px 1fr;column-gap:10px;padding:10px 12px;background:#252c3b;border-bottom:1px solid #00000066}
.ds2-head i{grid-row:1/3;border-radius:3px;background:#ff8fb1}
.ds2-head b{font-size:13px}
.ds2-head small{font:9px 'DM Mono';color:#8f98aa}
.ds2-io,.ds2-inserts,.ds2-pan,.ds2-buttons,.ds2-fader{margin:0 10px}
.ds2-io{display:grid;gap:5px;padding:7px;text-align:left}
.ds2-io span{display:grid;grid-template-columns:1fr auto;align-items:center;padding:5px 8px;border-radius:5px;background:#0d1119;border:1px solid #ffffff10}
.ds2-io small{grid-column:1/-1;font:8px 'DM Mono';color:#8f98aa;letter-spacing:.06em}
.ds2-io b{font-size:11px}
.ds2-io em{font-style:normal;color:#8f98aa;font-size:10px}
.ds2-inserts{display:grid;gap:4px;padding:7px;text-align:left}
.ds2-inserts small{font:8px 'DM Mono';color:#8f98aa;letter-spacing:.06em}
.ds2-inserts span{padding:5px 8px;border-radius:5px;font-size:10.5px;background:#0d1119}
.ds2-inserts .on{background:#1f3a78;border-left:3px solid #6f9bff}
.ds2-inserts .empty{color:#6c7588;border:1px dashed #ffffff22;background:none}
.ds2-pan{display:grid;justify-items:center;padding:6px 7px 7px}
.ds2-pan svg{width:54px;height:54px}
.ds2-knob-track{fill:none;stroke:#2e3647;stroke-width:5;stroke-linecap:round}
.ds2-knob-value{fill:none;stroke:var(--mint);stroke-width:5;stroke-linecap:round}
.ds2-knob{fill:#3a4256;stroke:#0b0f16;stroke-width:2}
.ds2-knob-mark{stroke:#fff;stroke-width:2.5;stroke-linecap:round}
.ds2-pan b{font:9px 'DM Mono';color:#cfd5e1}
.ds2-pan small{font:9px 'DM Mono';color:var(--mint)}
.ds2-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}
.ds2-buttons button{height:34px;font:700 12px 'DM Mono';color:#8f98aa}
.ds2-buttons .ds2-r.on{background:#e0412b;border-color:#ff8a7a;color:#fff}
.ds2-buttons .ds2-i.on{background:#e8902c;border-color:#ffc27a;color:#151925}
.ds2-buttons .ds2-m{color:#ffd36e}
.ds2-buttons .ds2-s{color:#6fa8ff}
.ds2-fader{position:relative;height:230px;padding:0}
.ds2-scale{position:absolute;left:8px;top:12px;bottom:34px;width:26px}
.ds2-scale i{position:absolute;right:0;top:var(--y);transform:translateY(-50%);font:8.5px 'DM Mono';font-style:normal;color:#8f98aa}
.ds2-track{position:absolute;left:calc(50% - 12px);top:12px;bottom:34px;width:6px;border-radius:3px;background:#0b0f16;box-shadow:inset 0 0 0 1px #ffffff14}
.ds2-track i{position:absolute;left:-6px;right:-6px;top:18%;height:1px;background:#ffffff55}
.ds2-cap{position:absolute;left:calc(50% - 30px);top:calc(12px + (100% - 46px) * var(--y) / 100);width:42px;height:22px;margin-top:-11px;border-radius:4px;background:linear-gradient(#e9edf4,#9aa3b5);box-shadow:0 3px 6px #0008,inset 0 -2px 0 #6c7588}
.ds2-cap:after{content:"";position:absolute;left:6px;right:6px;top:50%;height:2px;margin-top:-1px;background:#151925}
.ds2-meter{position:absolute;right:16px;top:12px;bottom:34px;width:9px;border-radius:2px;background:#0b0f16;overflow:hidden}
.ds2-meter i{position:absolute;left:0;right:0;bottom:0;height:62%;background:linear-gradient(to top,#2c9d63 0 60%,#ffd36e 60% 85%,#e0412b 85%);background-size:100% 161%;background-position:bottom;animation:ds2Meter 1.6s ease-in-out infinite alternate}
@keyframes ds2Meter{0%{height:38%}30%{height:58%}55%{height:46%}80%{height:66%}100%{height:52%}}
.ds2-fader b{position:absolute;left:0;right:0;bottom:8px;font:10px 'DM Mono';color:#e7ebf3}
.ds2-key b{display:flex;align-items:center;gap:8px}
.ds2-chip{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:5px;font:700 11px 'DM Mono';background:#252b38;color:#fff}
.ds2-chip.r{background:#e0412b}.ds2-chip.i{background:#e8902c;color:#151925}.ds2-chip.m{background:#252b38;color:#ffd36e}.ds2-chip.s{background:#252b38;color:#6fa8ff}
@media(max-width:900px){.daw-control-explorer{grid-template-columns:1fr!important}.daw-strip2{max-width:320px;margin:auto;width:100%}}
@media(prefers-reduced-motion:reduce){.ds2-meter i{animation:none}}

/* Les courbes de fondu */
.fade-curves-block{margin-top:34px;color:#fff}
.fade-curves-block>h3{font-size:28px;margin:0 0 8px;color:#fff}
.fade-curves-block>p{color:#b7bdca;max-width:900px}
.fade-curves-block>p strong{color:#fff}
.fade-curves{margin:18px 0;padding:16px;border-radius:18px;background:#0d1119;border:1px solid #ffffff14;color:#fff}
.fc-controls{display:grid;gap:8px}
.fc-group{display:flex;flex-wrap:wrap;gap:4px}
.fc-group button{padding:8px 12px;border:1px solid #ffffff24;border-radius:8px;background:#1b202b;color:#e7ebf3;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.fc-group button:hover{background:#252d3e}
.fc-group button[aria-pressed=true]{background:#1762ff;border-color:#8aabff}
.fc-group:first-child button[aria-pressed=true]{background:var(--mint);border-color:var(--mint);color:var(--ink)}
.fc-graphs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.fc-graphs figure{margin:0;padding:10px 10px 6px;border-radius:12px;background:#151925;border:1px solid #ffffff12}
.fc-graphs figcaption{font:10px 'DM Mono';color:#8f98aa;margin-bottom:4px}
.fc-graphs svg{display:block;width:100%;height:auto}
.fc-grid{stroke:#ffffff12}.fc-axis{stroke:#ffffff40}.fc-zero{stroke:#ffffff55;stroke-dasharray:4 4}
.fc-tick{font:9px 'DM Mono',monospace;fill:#8f98aa}
.fc-line{fill:none;stroke-width:3;stroke-linecap:round}
.fc-line.a{stroke:#ff7048}.fc-line.b{stroke:var(--mint)}
.fc-line.same{stroke:#6fa8ff}.fc-line.diff{stroke:#ffd36e}
.fc-line.ref{stroke:#ffffff40;stroke-width:1.5;stroke-dasharray:5 5}
.fc-lab{font:700 10px 'DM Mono',monospace}
.fc-lab.a{fill:#ff9a7e}.fc-lab.b{fill:var(--mint)}.fc-lab.same{fill:#9cc1ff}.fc-lab.diff{fill:#ffd36e}.fc-lab.ref{fill:#8f98aa;font-weight:400}
.fc-desc{min-height:3em;margin:12px 2px;font-size:14px!important;color:#cfd5e1!important}
.fc-listen{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding-top:10px;border-top:1px solid #ffffff12;font-size:12px;color:#cfd5e1}
.fc-listen label{display:flex;align-items:center;gap:8px}
.fc-listen input{accent-color:var(--mint)}
.fc-listen select{padding:5px 8px;border:1px solid #ffffff2a;border-radius:6px;background:#151925;color:#fff;font:inherit;font-size:12px}
.fc-listen output{font:11px 'DM Mono';color:var(--mint)}
.fc-listen .button{padding:10px 16px;font-size:13px}
.fc-material[hidden]{display:none}
.fc-status{font-size:12px;color:var(--mint)}
.fade-uses{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}
.fade-uses article{padding:16px;border-radius:12px;background:#252b38;border:1px solid #ffffff14}
.fade-uses small{font:10px 'DM Mono';color:var(--mint)}
.fade-uses b{display:block;margin:5px 0;color:#fff}
.fade-uses p{margin:0;font-size:13px;color:#c1c8d3}
.fade-curves-block .remember{background:#8be8bd12;border-left-color:var(--mint)}
.fade-curves-block .remember b{color:var(--mint)}
.fade-curves-block .remember p{color:#cfd5e1}
.fade-curves-block .remember strong{color:#fff}
@media(max-width:800px){.fc-graphs,.fade-uses{grid-template-columns:1fr}}

/* Vue édition / vue mixeur */
.ds2-views{display:grid;gap:8px;min-width:0}
.ds2-switch{display:flex;gap:3px;padding:3px;border-radius:9px;background:#0d1119;border:1px solid #ffffff14}
.ds2-switch button{flex:1;padding:7px 8px;border:0;border-radius:7px;background:none;color:#aab2c2;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.ds2-switch button[aria-pressed=true]{background:#3a4c7d;color:#fff}
.ds2-note{margin:0;font-size:11.5px;line-height:1.45;color:#aab2c2}
.ds2-note b{color:#fff}
.ds2-mixer[hidden],.ds2-edit[hidden]{display:none}
.daw-control-explorer.ds2-wide{grid-template-columns:1fr!important}
.ds2-edit{display:grid;grid-template-columns:170px minmax(0,1fr);gap:8px;padding:10px;border-radius:12px;background:#1b202b;border:1px solid #ffffff14}
.ds2-edit button{font:inherit;color:#e7ebf3;cursor:pointer;border:1px solid #ffffff1c;background:#141925;border-radius:7px;transition:border-color .15s,box-shadow .15s}
.ds2-edit button:hover{border-color:#ffffff40}
.ds2-edit button.selected{border-color:var(--mint);box-shadow:0 0 0 2px #8be8bd55}
.dse-inspector{display:grid;align-content:start;gap:6px;padding:8px;border-radius:9px;background:#141925}
.dse-inspector>small{font:8px 'DM Mono';color:#8f98aa;letter-spacing:.06em}
.dse-inspector>b{font-size:12px}
.dse-io,.dse-fx{display:grid;gap:4px;padding:6px;text-align:left;font-size:10.5px!important}
.dse-io span{display:grid;padding:4px 6px;border-radius:4px;background:#0d1119}
.dse-io small,.dse-fx small{font:7.5px 'DM Mono';color:#8f98aa}
.dse-fx span{padding:4px 6px;border-radius:4px;background:#1f3a78;border-left:3px solid #6f9bff}
.dse-fx span.empty{background:none;border:1px dashed #ffffff22;color:#6c7588;text-align:center}
.dse-arrange{min-width:0;border-radius:9px;overflow:hidden;background:#111620}
.dse-ruler{display:grid;grid-template-columns:repeat(4,1fr);margin-left:250px;height:20px;background:#1b2130;font:9px 'DM Mono';color:#8f98aa}
.dse-ruler span{padding:4px 5px;border-left:1px solid #ffffff22}
.dse-track{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:92px;border-top:1px solid #00000066}
.dse-header{display:grid;grid-template-columns:5px 1fr auto;grid-template-rows:auto auto;gap:6px 8px;align-items:center;padding:8px 8px 8px 0;background:#232937;border-right:1px solid #00000077}
.dse-header>i{grid-row:1/3;align-self:stretch;border-radius:0 3px 3px 0;background:#ff8fb1}
.dse-header>b{font-size:12px}
.dse-buttons{display:flex;gap:3px}
.dse-buttons button{width:24px;height:22px;padding:0;font:700 10px 'DM Mono';color:#8f98aa}
.dse-buttons .ds2-r.on{background:#e0412b;border-color:#ff8a7a;color:#fff}
.dse-buttons .ds2-i.on{background:#e8902c;border-color:#ffc27a;color:#151925}
.dse-buttons .ds2-m{color:#ffd36e}.dse-buttons .ds2-s{color:#6fa8ff}
.dse-vol{grid-column:2;display:flex;align-items:center;gap:6px;padding:3px 6px}
.dse-vol small{font:8px 'DM Mono';color:#8f98aa}
.dse-vol span{flex:1;position:relative;height:5px;border-radius:3px;background:#0b0f16}
.dse-vol span i{position:absolute;left:0;top:0;bottom:0;border-radius:3px;background:var(--mint)}
.dse-vol em,.dse-pan em{font:9px 'DM Mono';font-style:normal;color:#cfd5e1}
.dse-pan{grid-column:3;display:flex;align-items:center;gap:3px;padding:2px 5px}
.dse-pan svg{width:24px;height:24px}
.dse-lane{position:relative;padding:8px 6px;background-image:linear-gradient(90deg,#ffffff14 1px,transparent 1px);background-size:25% 100%}
.dse-clip{height:100%;min-height:74px;display:grid;grid-template-rows:auto 1fr;width:78%;margin-left:6%;border-radius:6px;overflow:hidden;background:#6b2f45;border:1px solid #ff8fb1}
.dse-clip small{padding:2px 6px;font:700 9px 'DM Mono';color:#fff;background:#a8466a}
.dse-clip svg{width:100%;height:100%}
.dse-clip polygon{fill:#ffc2d4;opacity:.85}
@media(max-width:900px){.ds2-edit{grid-template-columns:1fr}.dse-ruler{margin-left:0}.dse-track{grid-template-columns:1fr}.dse-lane{min-height:80px}}

/* La barre de transport */
.daw-transport{margin-top:60px}
.transport-bar{padding:14px;border-radius:18px;background:var(--ink);color:#fff;user-select:none;-webkit-user-select:none}
.tb-bar{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px 14px;padding:10px;border-radius:12px;background:#1b202b;border:1px solid #ffffff14}
.transport-bar button{font:inherit;color:#e7ebf3;cursor:pointer;border:1px solid #ffffff1c;background:#111620;border-radius:8px;transition:border-color .15s,box-shadow .15s,background .15s}
.transport-bar button:hover{border-color:#ffffff40}
.transport-bar button.selected{border-color:var(--mint);box-shadow:0 0 0 2px #8be8bd55}
.tb-buttons{display:flex;gap:4px;align-items:center}
.tb-buttons button{min-width:40px;height:40px;padding:0 9px;font-size:14px}
.tb-buttons .tb-play.on{background:#2c9d63;border-color:#6fd3a1;color:#fff}
.tb-buttons .tb-rec{color:#ff5b4a}
.tb-toggle[aria-pressed=true]{background:#3a4c7d!important;border-color:#7fa0ff!important;color:#fff!important}
.tb-buttons .tb-toggle{font-size:12px;font-weight:700}
.tb-counter{display:grid;align-content:center;min-width:220px;padding:4px 14px;background:#0b0f16!important;text-align:center}
.tb-counter b{font:600 22px 'DM Mono';color:var(--mint);letter-spacing:.02em}
.tb-counter.pre b{color:#ffd36e}
.tb-counter small{font:8px 'DM Mono';color:#8f98aa;letter-spacing:.08em}
.tb-tempo{display:grid;align-content:center;padding:4px 12px;background:#0b0f16!important}
.tb-tempo b{font:600 18px 'DM Mono';color:#fff}
.tb-tempo small{font:8px 'DM Mono';color:#8f98aa}
.tb-follow{margin-left:auto;padding:0 12px;font-size:12px;font-weight:700}
.tb-formats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:8px}
.tb-formats button{display:grid;gap:2px;padding:7px 10px;text-align:left}
.tb-formats small{font:8.5px 'DM Mono';color:#8f98aa}
.tb-formats b{font:600 13px 'DM Mono';color:#cfd5e1}
.tb-formats button[aria-pressed=true]{background:#1f2a40;border-color:#6f9bff}
.tb-formats button[aria-pressed=true] b{color:var(--mint)}
.tb-stage{margin-top:8px;border-radius:12px;overflow-x:auto;background:#111620;border:1px solid #ffffff10}
.tb-svg{display:block;width:100%;min-width:620px;height:auto;touch-action:none}
.tb-ruler{fill:#1b2130;cursor:pointer}
.tb-ruler.selected{fill:#1f2a40}
.tb-cycle{fill:#ffd36e2e;stroke:#ffd36e;pointer-events:none}
.tb-grid{stroke:#ffffff14}
.tb-num{font:10px 'DM Mono',monospace;fill:#8f98aa;pointer-events:none}
.tb-track{font-size:11px;font-weight:700;fill:#cfd5e1}
.tb-clip{opacity:.55;pointer-events:none}
.tb-loc line{stroke:#ffd36e88;stroke-width:1.5}
.tb-loc path{fill:#ffd36e99;cursor:ew-resize}
.tb-loc.on path{fill:#ffd36e}
.tb-loc text{font:700 8px 'DM Mono',monospace;fill:#151925;pointer-events:none}
.tb-loc.selected path{stroke:#fff;stroke-width:1.5}
.tb-start{fill:var(--mint);pointer-events:none}
.tb-head{stroke:#fff;stroke-width:2;pointer-events:none}
.tb-view{font:9px 'DM Mono',monospace;fill:#6c7588}
.tb-detail{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:14px;margin-top:10px;padding:18px;border-radius:12px;background:#252b38}
.tb-detail .eyebrow{color:var(--mint);margin:0}
.tb-detail h4{font-size:26px;margin:6px 0}
.tb-text{margin:0;font-size:14px;color:#c1c8d3}
.tb-tip{display:flex;gap:10px;margin-top:14px;padding:12px 14px;border-left:4px solid var(--orange);background:#0d1018;font-size:12.5px}
.tb-tip b{color:var(--orange);white-space:nowrap}
.tb-tip span{color:#bdc5d1}
.tb-options{display:grid;align-content:start;gap:10px;font-size:13px;color:#cfd5e1}
.tb-options label{display:flex;align-items:center;gap:8px;cursor:pointer}
.tb-options input{accent-color:var(--mint);width:16px;height:16px}
.tb-scope{padding:8px 10px;border-radius:8px;background:#0d1018;font-size:12px}
.tb-scope b{color:#fff}
.tb-status{min-height:1.4em;color:var(--mint);font-size:13px}
.transport-key a{color:var(--blue);font-weight:700}
@media(max-width:900px){.tb-formats{grid-template-columns:1fr 1fr}.tb-detail{grid-template-columns:1fr}.tb-follow{margin-left:0}}
.tb-ico{width:15px;height:15px;fill:currentColor;display:block;margin:auto}
.tb-buttons [data-tp="rec"]{color:#ff5b4a}

/* Automation */
.daw-automation{margin-top:60px}
.automation-lab{padding:14px;border-radius:18px;background:var(--ink);color:#fff;user-select:none;-webkit-user-select:none}
.al-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px}
.al-modes{display:flex;flex-wrap:wrap;gap:4px}
.al-modes button{padding:8px 13px;border:1px solid #ffffff24;border-radius:8px;background:#1b202b;color:#e7ebf3;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.al-modes button[aria-pressed=true]{background:#1762ff;border-color:#8aabff}
.al-modes button[data-mode=write][aria-pressed=true]{background:#e0412b;border-color:#ff8a7a}
.al-actions{display:flex;gap:6px}
.al-actions .button{padding:9px 16px;font-size:13px}
.al-body{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:10px;margin-top:12px}
.al-lane-wrap{border-radius:12px;background:#111620;border:1px solid #ffffff10;overflow:hidden}
.al-lane{display:block;width:100%;height:auto;cursor:crosshair;touch-action:none}
.al-bar{stroke:#ffffff22}.al-grid{stroke:#ffffff0f}
.al-tick{font:10px 'DM Mono',monospace;fill:#8f98aa}
.al-area{fill:#1762ff26}.al-area.off{fill:#ffffff0a}
.al-curve{fill:none;stroke:#6f9bff;stroke-width:2.5}.al-curve.off{stroke:#6c7588;stroke-dasharray:5 4}
.al-written{fill:#e0412b33}
.al-head{stroke:#fff;stroke-width:2}
.al-fader{position:relative;border-radius:12px;background:#1b202b;border:1px solid #ffffff14;min-height:230px;cursor:ns-resize;touch-action:none;outline:none}
.al-fader:focus-visible{box-shadow:0 0 0 2px var(--mint)}
.al-track{position:absolute;left:calc(50% - 3px);top:16px;bottom:40px;width:6px;border-radius:3px;background:#0b0f16}
.al-cap{position:absolute;left:calc(50% - 22px);width:44px;height:22px;border-radius:4px;background:linear-gradient(#e9edf4,#9aa3b5);box-shadow:0 3px 6px #0008;transform:translateY(0)}
.al-cap:after{content:"";position:absolute;left:6px;right:6px;top:50%;height:2px;margin-top:-1px;background:#151925}
.al-fader.held .al-cap{background:linear-gradient(#fff,#c9d6f7)}
.al-fader.writing .al-cap{background:linear-gradient(#ffb3a6,#e0412b)}
.al-val{position:absolute;left:0;right:0;bottom:10px;text-align:center;font:11px 'DM Mono';color:#e7ebf3}
.al-desc{margin:12px 2px 4px;font-size:14px;color:#cfd5e1}
.al-status{margin:0 2px;min-height:1.4em;font-size:13px;color:var(--mint)}
.automation-modes{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:14px 0}
.automation-modes article{padding:15px;border-radius:12px;background:#eef1f7}
.automation-modes small{font:10px 'DM Mono';color:var(--blue);letter-spacing:.05em}
.automation-modes b{display:block;margin:5px 0}
.automation-modes p{margin:0;font-size:13px;color:#434958}
.automation-names{font-size:13px;color:var(--muted)}
@media(max-width:900px){.automation-modes{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.al-body{grid-template-columns:1fr}.al-fader{min-height:200px;max-width:120px}}

/* Le tempo en pratique */
.tempo-practice{margin-top:34px}
.tempo-practice>h3{font-size:28px;margin:0 0 8px}
.tempo-practice>p{color:var(--muted);max-width:900px}
.tempo-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:16px;margin:16px 0}
.tempo-grid h4{font-size:17px;margin:0 0 6px}
.tempo-grid p{font-size:14px!important;color:#434958}
.tempo-small{font-size:12.5px!important;color:var(--muted)!important}
.tap-tempo{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px;padding:14px;border-radius:16px;background:var(--ink);color:#fff;user-select:none;-webkit-user-select:none}
.tt-pad{display:grid;place-content:center;gap:4px;min-height:130px;border:2px solid #ffffff24;border-radius:14px;background:#1b202b;color:#fff;font:inherit;cursor:pointer;outline:none}
.tt-pad:focus-visible{border-color:var(--mint)}
.tt-pad b{font:600 26px 'DM Mono';color:var(--mint)}
.tt-pad small{font-size:10.5px;color:#8f98aa;max-width:100px;text-align:center}
.tt-pad.hit{animation:ttHit .18s ease-out}
@keyframes ttHit{from{background:#8be8bd55;transform:scale(.97)}}
.tt-bpm{display:flex;align-items:baseline;gap:8px}
.tt-bpm strong{font:600 34px 'DM Mono';color:#fff}
.tt-bpm small{font:11px 'DM Mono';color:#8f98aa}
.tt-info{margin:2px 0 8px;font-size:12.5px!important;color:#cfd5e1!important}
.tt-ms{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;margin:0;font-size:12.5px}
.tt-ms dt{color:#aab2c2}.tt-ms dd{margin:0;font:600 12.5px 'DM Mono';color:var(--mint)}
.tempo-map-fig{margin:8px 0 0;padding:10px;border-radius:14px;background:var(--ink)}
.tempo-map{display:block;width:100%;height:auto}
.tm-grid{stroke:#ffffff10}.tm-bar{stroke:#ffffff0c}
.tm-tick{font:9.5px 'DM Mono',monospace;fill:#8f98aa}
.tm-axis{font:10px 'DM Mono',monospace;fill:#aab2c2}
.tm-sig{fill:#ffd36e14}
.tm-line{fill:none;stroke:var(--mint);stroke-width:3;stroke-linejoin:round}
.tm-lab{font:700 11px 'DM Mono',monospace;fill:#fff}.tm-lab.ramp{fill:var(--mint)}
@media(max-width:900px){.tempo-grid{grid-template-columns:1fr}}
@media(max-width:480px){.tap-tempo{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.tt-pad.hit{animation:none}}

/* Cartes Effet audio / Effet MIDI / Instrument : la chaîne passe à la ligne au lieu de défiler */
.plugin-role-comparison article>div{flex-wrap:wrap;row-gap:6px;overflow:visible}
