*{box-sizing:border-box}body{margin:0;background:#0b0b0d;color:#f3f3f4;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}a{color:inherit}button{font:inherit;cursor:pointer}.top{max-width:1260px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:24px 30px;border-bottom:1px solid #29292c}.brand{font-size:31px;font-weight:900;letter-spacing:-2px;text-decoration:none}.brand span{color:#e64842}.top nav{display:flex;gap:24px}.top nav a{text-decoration:none;color:#c6c6c8;font-size:14px}main{max-width:1260px;margin:auto;padding:0 30px}.hero{padding:68px 0 54px;border-bottom:1px solid #28282b}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.6px;color:#e66c67}.hero h1{font-size:clamp(38px,6vw,77px);letter-spacing:-3.5px;line-height:1.02;margin:20px 0 22px;font-weight:900}.hero h1 em{color:#e04a45;font-style:normal}.hero p{max-width:640px;color:#bcbcc0;font-size:17px;line-height:1.65}.hero-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero-meta span{border:1px solid #37373a;border-radius:30px;padding:9px 15px;color:#c9c9cc;font-size:13px}.workspace{display:grid;grid-template-columns:280px minmax(0,1fr);gap:36px;padding:44px 0}.groups{align-self:start;position:sticky;top:20px;background:#171719;border:1px solid #303034;border-radius:20px;padding:22px}.groups h2{font-size:20px;margin:0 0 8px}.groups p{color:#a9a9ad;font-size:13px;line-height:1.5}.group-buttons{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}.group-buttons button{background:#222225;color:#dedee0;border:1px solid #38383d;border-radius:10px;padding:10px 12px;text-align:left;font-size:13px}.group-buttons button.active{background:#e34842;color:white;border-color:#e34842}.results-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.results-head h2{font-size:30px;letter-spacing:-.8px;margin:8px 0}.results-head p{color:#a4a4aa;margin:0}.results-head button{border:1px solid #444;background:transparent;color:white;border-radius:9px;padding:10px 13px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.exercise{background:#19191c;border:1px solid #303034;border-radius:18px;overflow:hidden;display:flex;flex-direction:column}.exercise img{width:100%;aspect-ratio:1;object-fit:contain;background:#000}.exercise .info{padding:18px;display:flex;flex-direction:column;flex:1}.exercise small{color:#ef7671;font-weight:800;letter-spacing:1px}.exercise h3{font-size:17px;line-height:1.35;margin:9px 0 16px;flex:1}.exercise button{background:#e34842;color:white;border:0;border-radius:9px;padding:12px 14px;font-weight:700}.safety{color:#99999e;border-top:1px solid #303034;padding:22px 0 42px;font-size:13px}footer{padding:24px 30px;text-align:center;color:#96969b;border-top:1px solid #303034;font-size:13px}dialog{background:#19191c;color:#f3f3f4;border:1px solid #444;border-radius:18px;width:min(750px,calc(100% - 20px));max-height:90vh;overflow:auto;padding:26px}dialog::backdrop{background:#000c}.close{position:sticky;top:0;float:right;border:0;background:#39393d;color:white;border-radius:50%;width:38px;height:38px;font-size:24px}.detail-grid{display:grid;grid-template-columns:260px 1fr;gap:22px}.detail-grid img{width:100%;border-radius:12px;object-fit:contain;object-position:center;background:#000}.detail-grid h2{margin:8px 0}.detail-grid p,.detail-grid li{line-height:1.6;color:#d2d2d5}.detail-grid a{color:#f08883}.detail-grid .tip{font-size:13px;color:#a9a9ad}@media(max-width:850px){.workspace{grid-template-columns:1fr}.groups{position:static}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){main{padding:0 17px}.top{padding:17px}.top nav{gap:10px}.top nav a{font-size:11px}.hero{padding:43px 0}.hero h1{letter-spacing:-1.8px}.cards{grid-template-columns:1fr}.results-head h2{font-size:24px}.detail-grid{grid-template-columns:1fr}.detail-grid img{max-width:340px;margin:auto}.workspace{gap:20px;padding:24px 0}}
/* V42S interactive anatomical atlas */
.anatomy-layout{max-width:1240px;margin:0 auto;padding:25px 20px 65px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;align-items:start}.anatomy-panel{background:#18181b;border:1px solid #38383d;border-radius:20px;padding:25px}.panel-heading h2{font-size:24px;margin:0 0 9px}.panel-heading p{color:#bdbdc3;line-height:1.6;font-size:15px}.anatomy-models{display:grid;grid-template-columns:1fr 1fr;gap:12px}.anatomy-model{background:#101012;border:1px solid #35353a;border-radius:14px;padding:13px 8px;text-align:center}.anatomy-model h3{font-size:16px;margin:4px 0 8px}.anatomy-model p{font-size:12px;color:#aaa}.anatomy-figure{position:relative;width:100%;max-width:235px;margin:auto;aspect-ratio:240/520}.body-svg{width:100%;height:100%;display:block}.muscle-point{position:absolute;transform:translate(-50%,-50%);width:27px;height:27px;border:1.5px solid #ffb6b4;border-radius:50%;background:rgba(235,55,55,.48);box-shadow:0 0 0 5px rgba(225,52,52,.13);cursor:pointer;z-index:2;padding:0}.muscle-point span{display:block;width:9px;height:9px;margin:auto;border-radius:50%;background:#ff6b67}.muscle-point:hover,.muscle-point:focus-visible,.muscle-point.selected{background:#e63f3c;outline:2px solid white;outline-offset:3px}.anatomy-panel .group-buttons{margin-top:24px;display:flex;flex-wrap:wrap;gap:8px}.anatomy-panel .group-buttons button{font-size:13px;padding:9px 12px}.anatomy-layout .results{min-width:0}.anatomy-layout .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.anatomy-layout .exercise img{width:100%;object-fit:contain;background:#050505}.anatomy-layout .results-head{margin-bottom:20px}@media(max-width:900px){.anatomy-layout{grid-template-columns:1fr}.anatomy-layout .cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.anatomy-layout{padding:15px 12px 40px}.anatomy-panel{padding:14px}.anatomy-models{gap:7px}.anatomy-model{padding:9px 3px}.muscle-point{width:24px;height:24px}.anatomy-layout .cards{grid-template-columns:1fr}}

/* V42T realistic anatomical interface */
.atlas-workspace{max-width:1280px;margin:0 auto;padding:26px 22px 70px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:28px;align-items:start}.atlas-panel{background:linear-gradient(150deg,#1b1b1e,#0f0f11);border:1px solid #39393d;border-radius:20px;padding:25px}.atlas-intro h2{font-size:clamp(27px,3vw,38px);margin:12px 0}.atlas-intro p{font-size:15px;color:#bdbdc2;line-height:1.65;max-width:600px}.real-models{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.real-model{border:1px solid #323238;background:#0a0a0c;border-radius:15px;overflow:hidden;padding:10px}.real-model h3{margin:3px 0 9px;text-align:center;font-size:15px;font-weight:600}.real-figure{position:relative;width:100%;aspect-ratio:320/724;overflow:hidden}.real-figure>img{display:block;width:100%;height:100%;object-fit:fill}.anatomy-hotspot{position:absolute;inset:0;z-index:2;border:0;padding:0;background:transparent;cursor:pointer}.anatomy-hotspot:hover,.anatomy-hotspot:focus-visible{background:rgba(237,54,54,.28);outline:none}.anatomy-hotspot.selected{background:rgba(235,45,45,.46);filter:drop-shadow(0 0 8px #ff5555)}.muscle-glow{position:absolute;inset:0;pointer-events:none;z-index:1}.atlas-fallback{margin-top:20px;color:#d9d9dc}.atlas-fallback summary{cursor:pointer;font-size:14px;text-decoration:underline;text-underline-offset:4px}.atlas-fallback .group-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.atlas-fallback button{font-size:13px;padding:9px 12px}.atlas-workspace .results{min-width:0}.atlas-workspace .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.atlas-workspace .results-head{margin-bottom:20px}.atlas-workspace .exercise img{width:100%;object-fit:contain;object-position:center;background:#000}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:950px){.atlas-workspace{grid-template-columns:1fr}.atlas-workspace .cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.atlas-workspace{padding:12px 12px 45px}.atlas-panel{padding:14px}.real-models{gap:8px}.real-model{padding:5px}.real-model h3{font-size:14px}.atlas-workspace .cards{grid-template-columns:1fr}.atlas-intro h2{font-size:29px}}

/* V43: precise SVG muscle silhouettes, mapped 1:1 to each source illustration. */
.real-figure{width:100%;height:auto;aspect-ratio:320/724;isolation:isolate}
.real-figure.figure-back{aspect-ratio:320/724}
.real-figure>img{width:100%;height:100%;display:block;object-fit:contain}
.muscle-overlay{position:absolute;inset:0;width:100%;height:100%;z-index:2;overflow:visible;pointer-events:none}
.muscle-overlay .anatomy-hotspot{position:static;inset:auto;display:inline;cursor:pointer;pointer-events:visiblePainted;outline:none;filter:none;background:none;clip-path:none}
.muscle-overlay .anatomy-hotspot path{fill:rgba(255,50,62,.005);stroke:transparent;stroke-width:4px;pointer-events:visiblePainted;stroke-linejoin:round;transition:fill .16s ease,stroke .16s ease,filter .16s ease;vector-effect:non-scaling-stroke}
.muscle-overlay .anatomy-hotspot:hover path,
.muscle-overlay .anatomy-hotspot:focus-visible path{fill:rgba(244,48,59,.32);stroke:rgba(255,130,130,.74);stroke-width:2px;filter:drop-shadow(0 0 3px rgba(251,44,55,.4))}
.muscle-overlay .anatomy-hotspot.selected path,
.muscle-overlay .anatomy-hotspot.selected:hover path,
.muscle-overlay .anatomy-hotspot.selected:focus-visible path{fill:rgba(240,37,48,.61);stroke:rgba(255,100,100,.82);stroke-width:1.5px;filter:drop-shadow(0 0 5px rgba(255,38,52,.55))}
.atlas-results-link{display:inline-flex;align-items:center;margin-top:13px;padding:9px 14px;border:1px solid #9e3439;color:#ffe8e8;background:rgba(190,30,38,.11);border-radius:9px;text-decoration:none;font-size:14px;font-weight:600;transition:background .2s}
.atlas-results-link:hover,.atlas-results-link:focus-visible{background:rgba(221,40,48,.25)}
@media(prefers-reduced-motion:reduce){.muscle-overlay .anatomy-hotspot path{transition:none}}
/* Keep the existing page navigation inside narrow 320px viewports. */
@media(max-width:360px){.top{padding:14px 12px;gap:12px;flex-wrap:wrap}.top nav{width:100%;gap:10px;justify-content:space-between}.top nav a{font-size:12px}}
