/* MixMyVibz — couche « futuriste ». Se superpose à style.css et mix.css : même palette (la teinte --h des vibes continue de tout colorer),
   mais fond quadrillé, angles plus nets, repères d'angle façon écran de contrôle, chiffres en police technique. */
:root{
  --void:oklch(0.115 0.04 calc(var(--h) + 10));
  --hair:oklch(0.82 0.12 var(--h) / .3);
  --glow:oklch(0.78 0.17 var(--h) / .55);
  --mono:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,Consolas,monospace;
}
body{background:var(--void)}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background-image:linear-gradient(oklch(0.85 0.1 var(--h) / .055) 1px,transparent 1px),linear-gradient(90deg,oklch(0.85 0.1 var(--h) / .055) 1px,transparent 1px);
  background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse 85% 75% at 50% 25%,#000 15%,transparent 78%);mask-image:radial-gradient(ellipse 85% 75% at 50% 25%,#000 15%,transparent 78%)}

/* en-tête + logo */
header{background:oklch(0.1 0.04 calc(var(--h) + 10) / .72);border-bottom:1px solid transparent;border-image:linear-gradient(90deg,transparent,var(--hair) 18%,var(--hair) 82%,transparent) 1}
.brand{gap:11px;font-size:18px;letter-spacing:-.03em}
.brand svg{width:36px;height:36px;flex:none;filter:drop-shadow(0 0 12px var(--glow))}
.pages a{border-radius:8px}
.pages a.cur{box-shadow:0 0 18px var(--glow)}
.stat{font-family:var(--mono);font-size:12px}

/* boutons */
.btn{border-radius:8px;border-color:var(--hair);background:linear-gradient(180deg,oklch(0.27 0.06 var(--h) / .75),oklch(0.2 0.05 var(--h) / .75));transition:background .2s,transform .15s,box-shadow .2s,border-color .2s}
.btn:hover{border-color:var(--accent);box-shadow:0 0 20px var(--glow);background:linear-gradient(180deg,oklch(0.32 0.08 var(--h) / .85),oklch(0.24 0.07 var(--h) / .85))}
.btn.primary{position:relative;overflow:hidden;border-color:transparent;box-shadow:0 0 28px var(--glow),inset 0 1px 0 #fff6;background:linear-gradient(100deg,var(--accent),var(--accent-2))}
.btn.primary::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,#ffffff70 50%,transparent 65%);transform:translateX(-130%);transition:transform .7s}
.btn.primary:hover::after{transform:translateX(130%)}
.btn.sm,.ws-left .studio-top .btn{border-radius:7px}

/* panneaux : angles plus nets + repères d'angle */
.card,.sec,.tile,.mx-card,.ws-right,.dock,.edit-bar,.points li{border-radius:10px;border-color:var(--hair)}
.card,.sec,.mx-card,.ws-right,.tile{position:relative}
.card::after,.sec::after,.mx-card::after,.ws-right::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;opacity:.9;
  background:
   linear-gradient(var(--accent),var(--accent)) top left/16px 1.5px no-repeat,linear-gradient(var(--accent),var(--accent)) top left/1.5px 16px no-repeat,
   linear-gradient(var(--accent),var(--accent)) top right/16px 1.5px no-repeat,linear-gradient(var(--accent),var(--accent)) top right/1.5px 16px no-repeat,
   linear-gradient(var(--accent),var(--accent)) bottom left/16px 1.5px no-repeat,linear-gradient(var(--accent),var(--accent)) bottom left/1.5px 16px no-repeat,
   linear-gradient(var(--accent),var(--accent)) bottom right/16px 1.5px no-repeat,linear-gradient(var(--accent),var(--accent)) bottom right/1.5px 16px no-repeat}
.tile:hover{border-color:var(--accent);box-shadow:0 0 22px -4px var(--glow)}
.tabs button.on{box-shadow:0 2px 0 var(--accent),0 10px 20px -10px var(--glow)}
.trk.sel,.cs.sel{box-shadow:0 0 0 1px var(--accent),0 0 28px -4px var(--glow)}

/* chiffres et mesures en police technique */
#time,#mx-time,.time,.kv,.fdv,.fad b,.cs-val,.eqtab input,[data-rowout]{font-family:var(--mono);font-variant-numeric:tabular-nums}
.kv{font-size:9px}
.eqtab input{font-size:12px}

/* hero : titre lumineux + radar autour de la zone de dépôt */
h1 em{filter:drop-shadow(0 0 24px var(--glow))}
.lead{max-width:44ch}
.drop{isolation:isolate}
.drop::before,.drop::after{content:"";position:absolute;border-radius:50%;pointer-events:none;z-index:0}
.drop::before{inset:-5%;border:1px dashed var(--hair);animation:fx-spin 90s linear infinite}
.drop::after{inset:3%;background:conic-gradient(from 0deg,transparent 0 78%,oklch(0.8 0.17 var(--h) / .0) 78%,oklch(0.8 0.17 var(--h) / .38) 100%);
  -webkit-mask:radial-gradient(circle,transparent 57%,#000 58%,#000 80%,transparent 81%);mask:radial-gradient(circle,transparent 57%,#000 58%,#000 80%,transparent 81%);animation:fx-spin 6s linear infinite}
.ring{z-index:1}.drop-core{z-index:2;border-color:var(--hair)}
@keyframes fx-spin{to{transform:rotate(360deg)}}
.hero > div:first-child{animation:fx-in .9s cubic-bezier(.2,.7,.2,1) both}
.drop{animation:fx-in 1.1s .15s cubic-bezier(.2,.7,.2,1) both}
@keyframes fx-in{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.drop::before,.drop::after,.hero > div:first-child,.drop{animation:none}.btn.primary::after{display:none}}

/* en-tête moins chargé */
.stat{white-space:nowrap}
@media (max-width:1620px){.steps.landing{display:none}}
@media (max-width:760px){.pages a{padding:6px 8px}.brand span{display:none}}

/* bulles d'aide */
#mmv-tip{position:fixed;z-index:9999;max-width:290px;padding:10px 12px;border-radius:12px;background:oklch(.19 .04 var(--h,270)/.97);border:1px solid oklch(.62 .16 var(--h,270)/.6);box-shadow:0 10px 30px #0009,0 0 18px oklch(.6 .2 var(--h,270)/.25);color:#dbe4ff;font:400 12.5px/1.45 Inter,system-ui,sans-serif;pointer-events:none;display:flex;flex-direction:column;gap:3px}
#mmv-tip[hidden]{display:none}
#mmv-tip b{color:#fff;font-size:13px;font-weight:700}
#mmv-tip span{color:#b9c6ea}
#mmv-tip-toggle{position:fixed;right:12px;bottom:10px;z-index:9000;padding:5px 10px;border-radius:999px;border:1px solid #ffffff26;background:#0b1230cc;color:#9fb0d8;font:500 11.5px Inter,system-ui,sans-serif;cursor:pointer;backdrop-filter:blur(6px)}
#mmv-tip-toggle:hover{color:#fff;border-color:#ffffff55}

/* assistant */
#mmv-chat-fab{position:fixed;right:14px;bottom:44px;z-index:9001;padding:11px 18px;border-radius:999px;border:1px solid oklch(.75 .15 var(--h,270)/.7);background:linear-gradient(135deg,oklch(.55 .2 var(--h,270)),oklch(.5 .22 calc(var(--h,270) + 50)));color:#fff;font:700 13.5px Inter,system-ui,sans-serif;cursor:pointer;box-shadow:0 8px 28px oklch(.5 .2 var(--h,270)/.5)}
#mmv-chat-fab:hover{filter:brightness(1.12)}
#mmv-chat-box{padding:0;margin:0;gap:0;position:fixed;right:14px;bottom:44px;z-index:9002;width:min(380px,calc(100vw - 28px));height:min(520px,calc(100dvh - 90px));display:flex;flex-direction:column;border-radius:16px;background:oklch(.16 .035 var(--h,270)/.98);border:1px solid oklch(.6 .16 var(--h,270)/.55);box-shadow:0 20px 60px #000b;overflow:hidden;font:400 13.5px/1.5 Inter,system-ui,sans-serif;color:#dbe4ff}
#mmv-chat-box[hidden]{display:none}
#mmv-chat-box .ch-h{display:flex;align-items:center;gap:8px;padding:11px 14px;background:oklch(.22 .06 var(--h,270));border-bottom:1px solid #ffffff14}
#mmv-chat-box .ch-h b{font-size:14px;color:#fff}
#mmv-chat-mode{font-size:11px;color:#9fb0d8;margin-right:auto;padding:2px 8px;border-radius:999px;background:#ffffff12}
#mmv-chat-x{background:none;border:0;color:#9fb0d8;font-size:22px;line-height:1;cursor:pointer}
#mmv-chat-log{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px}
#mmv-chat-log .m{max-width:88%;padding:9px 12px;border-radius:14px;white-space:pre-wrap}
#mmv-chat-log .bot{align-self:flex-start;background:#ffffff12;border-bottom-left-radius:4px}
#mmv-chat-log .me{align-self:flex-end;background:oklch(.5 .2 var(--h,270));color:#fff;border-bottom-right-radius:4px}
#mmv-chat-sug{display:flex;flex-wrap:wrap;gap:6px;padding:0 12px 8px}
#mmv-chat-sug button{padding:5px 10px;border-radius:999px;border:1px solid #ffffff22;background:#ffffff0c;color:#b9c6ea;font-size:12px;cursor:pointer}
#mmv-chat-sug button:hover{color:#fff;border-color:#ffffff55}
#mmv-chat-form{display:flex;gap:8px;padding:10px 12px;border-top:1px solid #ffffff14}
#mmv-chat-in{flex:1;min-width:0;padding:9px 12px;border-radius:10px;border:1px solid #ffffff22;background:#050b1c;color:#fff;font:inherit}
#mmv-chat-in:focus{outline:2px solid oklch(.7 .17 var(--h,270));outline-offset:1px}
#mmv-chat-form button{padding:0 14px;border-radius:10px;border:0;background:oklch(.6 .2 var(--h,270));color:#fff;font-weight:700;cursor:pointer}
#mmv-tip-toggle{bottom:10px}

/* outils de montage */
.tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:7px 10px;border-radius:12px;background:oklch(.19 .04 var(--h,270)/.85);border:1px solid oklch(.5 .12 var(--h,270)/.35);flex:none}
.tools .tool,.tools .tbtn{padding:7px 12px;border-radius:9px;border:1px solid #ffffff1f;background:#ffffff0a;color:#cfd9f5;font:600 12.5px Inter,system-ui,sans-serif;cursor:pointer;white-space:nowrap}
.tools .tool:hover,.tools .tbtn:hover{background:#ffffff16;color:#fff}
.tools .tool.on{background:linear-gradient(135deg,oklch(.58 .2 var(--h,270)),oklch(.5 .22 calc(var(--h,270) + 40)));border-color:transparent;color:#fff;box-shadow:0 0 16px oklch(.55 .2 var(--h,270)/.45)}
.tools .tbtn.on{background:oklch(.55 .18 150);border-color:transparent;color:#fff}
.tools .tbtn:disabled{opacity:.4}
.tsep{width:1px;height:20px;background:#ffffff22;margin:0 4px}
.thint{font-size:11.5px;margin-left:6px;min-width:0;flex:1 1 220px}
body.tool-cut .lane{cursor:crosshair !important}
body.tool-erase .lane{cursor:not-allowed !important}
body.tool-zone .lane{cursor:col-resize !important}
.cutline{position:absolute;left:0;width:0;border-left:2px dashed #ffd24d;pointer-events:none;z-index:6;display:none;box-shadow:0 0 8px #ffd24d88}
.keys-ov{position:fixed;inset:0;z-index:9800;display:grid;place-items:center}
.keys-ov[hidden]{display:none}
.keys-bg{position:absolute;inset:0;background:#020510aa;backdrop-filter:blur(4px)}
.keys-box{position:relative;width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:20px 22px;border-radius:16px;background:oklch(.18 .04 var(--h,270));border:1px solid oklch(.6 .16 var(--h,270)/.5);color:#dbe4ff}
.keys-box h3{margin:0 0 12px;color:#fff}
.keys-grid{display:grid;grid-template-columns:auto 1fr;gap:7px 16px;align-items:center;margin-bottom:14px;font-size:13.5px}
.keys-grid kbd{justify-self:start;padding:3px 9px;border-radius:7px;background:#ffffff14;border:1px solid #ffffff26;font:600 12px JetBrains Mono,monospace;color:#fff}

/* loupe */
.ws-left .tracks-scroll{overflow-x:auto}
.tracks.zoomed{width:max-content;min-width:100%}
.tracks.zoomed .trk,.tracks.zoomed .ruler-row{grid-template-columns:300px var(--lanew);overflow:visible}
body.compact .tracks.zoomed .trk,body.compact .tracks.zoomed .ruler-row{grid-template-columns:310px var(--lanew)}
.tracks.zoomed .trk-head{position:sticky;left:0;z-index:5;background:oklch(.17 .04 var(--h,270));border-radius:16px 0 0 16px}
.tracks.zoomed .ruler-head{position:sticky;left:0;z-index:7;background:oklch(.13 .03 var(--h,270))}
.tracks.zoomed .trk .lane-wrap{overflow:hidden;border-radius:0 16px 16px 0}
.zlab{font:500 11.5px JetBrains Mono,monospace;min-width:44px}

.keys-box h4{margin:12px 0 6px;font-size:12.5px;color:#9fb0d8;font-weight:600}
.zk-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px}
.zk{display:flex;align-items:flex-start;gap:8px;font-size:13px;cursor:pointer}
.zk small{display:block;color:#7f90b8;font-size:11.5px}
.zk input{margin-top:3px;accent-color:oklch(.7 .17 var(--h,270))}
@media (max-width:560px){.zk-grid{grid-template-columns:1fr}}

/* tarifs */
.pr{padding-top:36px;padding-bottom:60px}
.pr-hero{max-width:720px;margin:0 auto 34px;text-align:center}
.pr-hero h1{font:800 clamp(28px,4.4vw,46px)/1.08 Unbounded,Manrope,sans-serif;letter-spacing:-.03em;margin:0 0 14px}
.pr-hero p{color:var(--mute);font-size:17px;margin:0}
.pr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;align-items:stretch}
.pr-card{display:flex;flex-direction:column;gap:10px;padding:22px 20px;border-radius:20px;border:1px solid oklch(.5 .12 var(--h,270)/.4);background:linear-gradient(180deg,oklch(.2 .045 var(--h,270)/.9),oklch(.14 .035 var(--h,270)/.9))}
.pr-card.bm{border-color:oklch(.72 .17 var(--h,270)/.75);box-shadow:0 0 34px oklch(.5 .2 var(--h,270)/.25)}
.pr-card h2{margin:0;font:700 19px Unbounded,Manrope,sans-serif}
.pr-tag{margin:0;color:var(--mute);font-size:14px;min-height:42px}
.pr-price{display:flex;align-items:baseline;gap:8px;margin:6px 0 4px}
.pr-price b{font:800 40px/1 Unbounded,Manrope,sans-serif;letter-spacing:-.04em}
.pr-price span{color:var(--mute);font-size:13.5px}
.pr-card ul{list-style:none;margin:6px 0 14px;padding:0;display:grid;gap:9px;flex:1}
.pr-card li{position:relative;padding-left:22px;font-size:14.5px}
.pr-card li::before{content:"";position:absolute;left:2px;top:.5em;width:10px;height:6px;border-left:2px solid oklch(.8 .17 var(--h,270));border-bottom:2px solid oklch(.8 .17 var(--h,270));transform:rotate(-45deg)}
.pr-card .btn{width:100%}
.pr-card .btn:disabled{opacity:.55;cursor:default}
.pr-note{text-align:center;color:var(--mute);font-size:13.5px;margin:20px 0 0}
.pr-faq{max-width:720px;margin:44px auto 0}
.pr-faq h2{font:700 20px Unbounded,Manrope,sans-serif;margin:0 0 14px}
.pr-faq details{border-top:1px solid var(--line);padding:13px 2px}
.pr-faq summary{cursor:pointer;font-weight:700}
.pr-faq p{margin:9px 0 0;color:var(--mute)}

/* automation */
.mini.auto.has{box-shadow:inset 0 0 0 1px oklch(.8 .16 var(--th,270));color:#fff}
.auto-row{grid-column:1/-1;display:grid;grid-template-columns:inherit;height:96px;border-top:1px solid var(--line);background:oklch(.12 .03 var(--h,270)/.7)}
.auto-ctl{display:flex;flex-direction:column;gap:8px;justify-content:center;padding:8px 14px;min-width:0}
.auto-ctl .seg{display:flex;gap:4px}
.auto-ctl .seg button{flex:1;padding:6px 8px;border-radius:8px;border:1px solid #ffffff22;background:#ffffff0a;color:#cfd9f5;font:600 12px Inter,sans-serif;cursor:pointer}
.auto-ctl .seg button.on{background:oklch(.55 .18 var(--th,270));border-color:transparent;color:#fff}
.auto-ctl .au-read{font-size:11px;line-height:1.35}
canvas.autolane{width:100%;height:100%;display:block;cursor:crosshair;touch-action:none}
.tracks.zoomed .auto-ctl{position:sticky;left:0;background:oklch(.12 .03 var(--h,270))}
.auto-row{grid-template-rows:96px;overflow:hidden}
canvas.autolane{height:96px;min-height:0}
.auto-ctl{overflow:hidden;height:96px}
.auto-ctl{gap:5px}.auto-ctl .linkbtn{font-size:11.5px;text-align:left}.auto-ctl .au-read{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.auto-ctl .seg button{padding:4px 6px}

.resume-box{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px;padding:12px 16px;border-radius:14px;border:1px solid oklch(.7 .16 var(--h,270)/.6);background:oklch(.2 .06 var(--h,270)/.7);max-width:560px}
.resume-box[hidden]{display:none}
.resume-box b{color:#fff}.resume-box span{flex:1 1 180px;color:#b9c6ea;font-size:13px}

/* pages légales */
.lg{max-width:760px;padding-top:40px;padding-bottom:60px}
.lg h1{font-family:'Unbounded',sans-serif;font-size:clamp(24px,4vw,34px);margin:0 0 18px}
.lg h2{font-size:18px;margin:28px 0 8px}
.lg p{line-height:1.65;color:var(--muted,#aab3d4);max-width:70ch}
.lg .lg-todo{border:1px dashed oklch(0.75 0.15 80);border-radius:10px;padding:10px 14px;color:oklch(0.85 0.12 80)}
footer a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.lg a{color:var(--accent,#8ab4ff)}
.lg-page nav.pages a,body header nav.pages a{text-decoration:none}
.brand img{height:50px;width:auto;display:block;filter:drop-shadow(0 0 14px var(--glow))}
header .bar{min-height:62px}
@media (max-width:760px){.brand img{height:40px}}
.brand img{height:66px}
header .bar{min-height:76px}
@media (max-width:760px){.brand img{height:46px}header .bar{min-height:58px}}

.back-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 16px}.back-row .btn{text-decoration:none}

/* assistant de mix */
#pane-asst{padding-bottom:30px}
.as-card{border:1px solid oklch(.55 .12 var(--h) / .5);border-radius:14px;padding:14px;background:linear-gradient(160deg,oklch(.24 .08 var(--h) / .55),oklch(.18 .04 var(--h) / .4));display:flex;flex-direction:column;gap:10px}
.as-sel{display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--mute)}
.as-sel select{background:#050b1c;color:#fff;border:1px solid #ffffff2a;border-radius:9px;padding:9px 10px;font:600 14px var(--body,inherit)}
.as-go{font-size:16px;padding:13px 16px}
.as-hint{margin:0;font-size:12.5px}
.as-h{margin:20px 0 8px;font-size:15px}
.as-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.as-steps li{display:flex;gap:12px;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#ffffff06}
.as-steps li.done{border-color:oklch(.7 .15 150 / .6)}
.as-steps b{font-size:14px}.as-steps p{margin:3px 0 0;font-size:12.5px;color:var(--mute);line-height:1.45}
.as-ok{margin-left:8px;padding:1px 8px;border-radius:999px;background:oklch(.6 .16 150);color:#04140a;font-size:11px;font-weight:700}
.as-links{display:flex;gap:6px;flex:none}
.as-steps .btn{flex:none}
.as-rep,.as-diag{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:13px;line-height:1.45}
.as-rep li{padding-left:14px;position:relative;color:#cdd8f5}.as-rep li::before{content:"✓";position:absolute;left:0;color:oklch(.75 .15 150)}
.as-diag li{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 10px;border-radius:10px;border:1px solid var(--line)}
.as-diag li.warn{border-color:oklch(.75 .15 70 / .7)}.as-diag li.ok{border-color:oklch(.7 .15 150 / .6)}
.as-q{margin-top:18px}

.as-chains{display:flex;flex-direction:column;gap:8px}
.as-chain{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#ffffff06}
.as-ch-h{display:flex;justify-content:space-between;gap:10px;align-items:center}
.as-ch-h b{display:block;font-size:14px}.as-ch-h span{font-size:12px;color:var(--mute)}
.as-chain details{margin-top:6px}.as-chain summary{cursor:pointer;font-size:12.5px;color:var(--accent)}
.as-chain ul{margin:8px 0 0;padding-left:18px;font-size:12.5px;line-height:1.5;color:#cdd8f5}
.as-src{margin:8px 0 0;font-size:11.5px;color:var(--mute)}.as-src a{color:var(--accent)}

/* ---------- Groupes de pistes liées ---------- */
.trk-r2{display:flex;gap:6px;align-items:center}
.trk-r2 .trk-type{flex:1;min-width:0}
.grpb{margin:0;padding:5px 8px;font-size:12px;white-space:nowrap;max-width:120px;overflow:hidden;text-overflow:ellipsis;border:1px solid oklch(0.38 0.05 var(--th,270));background:transparent;color:var(--text);border-radius:8px;cursor:pointer}
.grpb.on{border-color:oklch(0.74 0.16 var(--th,270));background:oklch(0.3 0.06 var(--th,270)/.6)}
.grpb:hover{border-color:oklch(0.8 0.14 var(--th,270))}
.cs .grpb{display:block;width:calc(100% - 4px);margin:6px 2px 0;max-width:none;text-align:left}
.grp-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px;vertical-align:baseline}
#grp-menu{position:fixed;z-index:1000;width:270px;max-height:80vh;overflow:auto;padding:14px;border-radius:14px;background:oklch(0.2 0.04 270);border:1px solid oklch(0.4 0.08 280);box-shadow:0 18px 50px rgba(0,0,0,.55);color:var(--text);font-size:13px}
#grp-menu p{margin:6px 0 10px;color:var(--muted,#9aa);line-height:1.4}
#grp-menu .gm-list{display:grid;gap:6px;margin-bottom:10px}
#grp-menu button{margin:0;font:inherit;cursor:pointer;color:var(--text);background:oklch(0.26 0.05 270);border:1px solid oklch(0.36 0.05 270);border-radius:9px;padding:7px 10px;text-align:left}
#grp-menu button:hover,#grp-menu button.on{border-color:oklch(0.7 0.14 285)}
#grp-menu .gm-list small{float:right;opacity:.65}
#grp-menu .gm-list i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px}
#grp-menu .gm-new{display:flex;gap:6px}
#grp-menu .gm-new input{flex:1;min-width:0;margin:0}
#grp-menu .gm-act{display:grid;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid oklch(0.34 0.05 270)}
#grp-menu label{display:flex;gap:8px;align-items:center;cursor:pointer}

/* ---------- Copier / coller des réglages ---------- */
.grpb.cpb{flex:0 0 auto;max-width:none;padding:5px 9px}
.cs .grpb.cpb{width:calc(100% - 4px)}
#fx-menu{position:fixed;z-index:1001;width:290px;max-height:82vh;overflow:auto;padding:14px;border-radius:14px;background:oklch(0.2 0.04 270);border:1px solid oklch(0.4 0.08 280);box-shadow:0 18px 50px rgba(0,0,0,.55);color:var(--text);font-size:13px;display:grid;gap:8px}
#fx-menu button{margin:0;font:inherit;cursor:pointer;color:var(--text);background:oklch(0.26 0.05 270);border:1px solid oklch(0.36 0.05 270);border-radius:9px;padding:7px 10px;text-align:left}
#fx-menu button:hover{border-color:oklch(0.7 0.14 285)}
#fx-menu .fxm-go{background:linear-gradient(135deg,#5b8cff,#a06bff);border:0;font-weight:700;text-align:center;color:#fff}
#fx-menu .fxm-from{margin:0;color:var(--muted,#9aa)}
#fx-menu fieldset{border:1px solid oklch(0.32 0.05 270);border-radius:10px;margin:0;padding:8px 10px;display:grid;gap:5px}
#fx-menu legend{padding:0 6px;color:var(--muted,#9aa)}
#fx-menu label{display:flex;gap:8px;align-items:center;cursor:pointer}
#fx-menu .fxm-link{display:inline-block;margin-right:6px;padding:4px 8px;font-size:12px}
.eq-tabs{display:flex;gap:6px;margin:8px 0}
.eq-tabs button{margin:0;flex:1;padding:7px 10px;font-size:13px;border-radius:9px;border:1px solid oklch(0.34 0.05 270);background:transparent;color:var(--text);cursor:pointer}
.eq-tabs button.on{background:oklch(0.34 0.1 270);border-color:oklch(0.7 0.14 285)}
.eqx{margin-bottom:8px}.eqx-row{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}
.eqx-help,.eqx-note{margin:6px 0;font-size:12.5px;line-height:1.45;color:var(--muted,#9aa)}
.eqx-note{color:var(--text);padding:8px 10px;border-radius:9px;background:oklch(0.26 0.05 60/.35);border:1px solid oklch(0.5 0.1 60/.5)}
.eqx select{margin:0}.eqx-hum{display:flex;gap:6px;align-items:center;cursor:pointer}
.eqx select{width:auto;padding:6px 8px;font-size:13px}.eqx input[type=checkbox]{width:auto;margin:0}.eqx .btn{padding:8px 12px;font-size:13px}
