:root{--bg:#0D1917;--s1:#142320;--s2:#1A2C28;--s3:#22382F;--line:rgba(214,235,225,.09);--line2:rgba(214,235,225,.18);--tx:#EEF3EC;--tx2:#A8B8B1;--tx3:#6F837C;--acc:#F4B860;--acc-ink:#231806;--p:#F08C70;--hot:#FF5B6E;--g:#A7D28B;--red:#EF7B6B;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:radial-gradient(70% 40% at 85% 0%,rgba(240,140,112,.12),transparent 70%),var(--bg);color:var(--tx);font:16px/1.55 Onest,system-ui,sans-serif;min-height:100vh}
body.xd-on{overflow:hidden}
a{color:var(--acc)}.w{max-width:1120px;margin:0 auto;padding:0 20px}
header.top{display:flex;align-items:center;gap:12px;padding:22px 0}header.top .brand{font-weight:800;font-size:24px;letter-spacing:-.04em;color:var(--tx);text-decoration:none}header.top .brand i{font-style:normal;color:var(--acc)}
header.top nav{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}header.top nav button{font:inherit;font-size:12.5px;font-weight:650;padding:5px 8px;border-radius:99px;border:1px solid var(--line2);background:transparent;color:var(--tx2);cursor:pointer}header.top nav button[aria-pressed="true"]{background:var(--tx);color:var(--bg);border-color:transparent}
h1{font-size:clamp(34px,7vw,58px);letter-spacing:-.04em;line-height:1.04;margin:22px 0 8px}.lead{color:var(--tx2);font-size:18px;margin:0 0 22px;max-width:640px}
.btns{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 26px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 18px;border-radius:14px;font:inherit;font-weight:650;text-decoration:none;border:1px solid var(--line2);color:var(--tx);background:transparent;cursor:pointer}.btn.pri{background:var(--acc);color:var(--acc-ink);border-color:transparent}
.btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
/* outils : le corps (filtre), la recherche, les muscles */
.xt{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center;margin:0 0 18px;padding:14px 16px;border-radius:24px;background:var(--s1);border:1px solid var(--line)}
.xb{display:grid;justify-items:center;gap:4px}.xb-b{display:flex;gap:6px}.xb p{margin:0;font-size:11.5px;color:var(--tx3);text-align:center;max-width:170px}
.xb .mbody{width:74px}
.xf{display:grid;gap:10px;min-width:0}
.xf input{width:100%;padding:12px 16px;border-radius:14px;border:1px solid var(--line2);background:var(--bg);color:var(--tx);font:inherit;font-size:16px;outline:none}.xf input:focus{border-color:var(--acc)}
.chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px 0}.chips::-webkit-scrollbar{display:none}
.chips button{flex:none;font:inherit;font-size:13px;font-weight:600;padding:6px 12px;border-radius:99px;border:1px solid var(--line2);background:transparent;color:var(--tx2);cursor:pointer}.chips button[aria-pressed="true"]{background:var(--p);color:#2A0F07;border-color:transparent}
.cnt{margin:0;color:var(--tx3);font-size:13.5px}
@media (max-width:640px){.xt{grid-template-columns:1fr;padding:12px}.xb{grid-auto-flow:column;justify-content:start;align-items:center;gap:12px}.xb p{text-align:left}.xb .mbody{width:52px}}
/* le corps anatomique */
.mbody{height:auto;display:block;overflow:visible}.mbody .mb-sk{fill:#1B302D}.mbody .mb-m{fill:#35524B;stroke:var(--bg);stroke-width:1.2;stroke-linejoin:round;cursor:pointer;transition:fill .3s}
.mbody .mb-m.on{fill:color-mix(in srgb,var(--hot) calc(var(--l) * 100%),var(--acc))}.mbody .mb-ln{fill:none;stroke:var(--bg);stroke-width:1}
.xb .mbody .mb-m:hover{fill:#3A554D}.xb .mbody .mb-m.on:hover{fill:var(--hot)}
/* la grille */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:12px;margin:0 0 30px}
.xc{display:flex;flex-direction:column;gap:2px;padding:8px 10px 12px;border-radius:20px;background:var(--s1);border:1px solid var(--line);color:var(--tx);text-decoration:none;transition:transform .2s var(--ease),border-color .2s}
.xc:hover{transform:translateY(-2px);border-color:var(--line2)}
.xc-a{display:block;aspect-ratio:200/184;margin:0 -4px 4px;--xa-n:#EEF3EC;--xa-f:#7E908A;--xa-o:var(--s1);--xa-e:#0D1917;--xa-g:rgba(214,235,225,.14);--xa-mu:var(--hot);--xa-a:#F4B860;--xa-ad:#9A6A22;--xa-m:#5F8597;--xa-c:#A9C4CF}
.xc-a .xa-svg{display:block;width:100%;height:100%}
.xc b{font-size:14.5px;font-weight:700;line-height:1.25}.xc small{font-size:12px;color:var(--tx3)}
.xc.sm{padding:6px 8px 10px;border-radius:16px}.xc.sm b{font-size:13px}
.none{grid-column:1/-1;color:var(--tx3);text-align:center;padding:30px 0}
footer{color:var(--tx3);font-size:13px;padding:30px 0 60px;text-align:center}
/* la fiche */
.xd[hidden]{display:none!important}
.xd:not(.on){pointer-events:none}
.xd{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:rgba(5,10,9,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:opacity .22s}
.xd.on{opacity:1}
.xd-in{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:22px;width:min(1000px,100%);max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow:auto;padding:22px;border-radius:28px;background:var(--s1);border:1px solid var(--line2);box-shadow:0 30px 80px rgba(0,0,0,.5);transform:translateY(14px) scale(.98);transition:transform .3s var(--ease)}
.xd.on .xd-in{transform:none}
.xd-x{position:absolute;right:14px;top:14px;z-index:2;width:40px;height:40px;border-radius:50%;border:1px solid var(--line2);background:var(--s2);color:var(--tx);cursor:pointer;display:grid;place-items:center}
.xd-x svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.xd-l{display:grid;gap:10px;align-content:start;position:sticky;top:0}
.xd-a{aspect-ratio:200/184;border-radius:22px;background:radial-gradient(90% 80% at 50% 30%,#1D3330,var(--bg));--xa-n:#EEF3EC;--xa-f:#7E908A;--xa-o:#15272A;--xa-e:#0D1917;--xa-g:rgba(214,235,225,.16);--xa-mu:var(--hot);--xa-a:#F4B860;--xa-ad:#9A6A22;--xa-m:#5F8597;--xa-c:#A9C4CF;touch-action:pan-y}
.xd-a .xa-svg{display:block;width:100%;height:100%}.xd-a .x3-drag{cursor:grab}
.xd.bad .xd-a{box-shadow:inset 0 0 0 2px var(--red)}
.xd-v{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.xd-v button{font:inherit;font-size:13px;font-weight:650;padding:7px 12px;border-radius:99px;border:1px solid var(--line2);background:transparent;color:var(--tx2);cursor:pointer}.xd-v button[aria-pressed="true"]{background:var(--tx);color:var(--bg);border-color:transparent}
.xd-hint{margin:0;text-align:center;font-size:12.5px;color:var(--tx3)}
.xd-r{min-width:0;padding-top:4px}
.xd-k{margin:0;font-size:12px;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--p)}
.xd-r h2{margin:4px 44px 14px 0;font-size:clamp(26px,4vw,36px);letter-spacing:-.03em;line-height:1.1}
.xd-m{display:flex;gap:16px;align-items:center;padding:12px 14px;border-radius:20px;background:var(--s2);margin:0 0 14px}
.xd-b{display:flex;gap:4px;flex:none}.xd-b .mbody{width:58px}.xd-b .mb-m{cursor:default}
.xd-m ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.xd-m li{display:flex;align-items:center;gap:8px;font-weight:650}.xd-m li i{width:10px;height:10px;border-radius:50%;background:var(--hot);flex:none}.xd-m li.s i{background:color-mix(in srgb,var(--hot) 45%,var(--acc))}
.xd-m li small{color:var(--tx3);font-weight:500;font-size:12px}
.xd-bad{margin:0 0 14px}.xd-bad button{display:inline-flex;align-items:center;gap:8px;font:inherit;font-weight:650;padding:9px 14px;border-radius:14px;border:1px solid rgba(239,123,107,.45);background:transparent;color:var(--red);cursor:pointer}
.xd-bad button[aria-pressed="true"]{background:rgba(239,123,107,.14)}
.xd-bad svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.xd-bad p{margin:10px 0 0;padding:10px 14px;border-radius:14px;background:rgba(239,123,107,.1);color:var(--tx);font-size:14.5px}
.xd-act{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}
.xd-r h3{margin:0 0 10px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--tx3)}
.xd-rel{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}
@media (max-width:760px){.xd{padding:0;place-items:end stretch}.xd-in{grid-template-columns:1fr;gap:14px;width:100%;max-height:94vh;max-height:94dvh;border-radius:26px 26px 0 0;padding:16px 16px 28px}.xd-l{position:static}.xd-a{margin:0 -4px}}
.toast{position:fixed;left:50%;bottom:28px;z-index:60;transform:translate(-50%,20px);opacity:0;padding:10px 16px;border-radius:99px;background:var(--tx);color:var(--bg);font-weight:650;font-size:14px;transition:opacity .2s,transform .2s;pointer-events:none}.toast.on{opacity:1;transform:translate(-50%,0)}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* 0.85.4 : sept langues sur une ligne, même sur un petit téléphone */
@media (max-width:440px){header.top nav{gap:3px}header.top nav button{padding:5px 5px;font-size:12px}}@media (max-width:380px){header.top{gap:8px}header.top .brand{font-size:21px}header.top nav{gap:2px}header.top nav button{padding:4px 4px;font-size:11.5px}}
