.anatomy-app{--ink:#28382c;--muted:#657063;--paper:#faf9f5;--cream:#f2eee3;--line:#dadfd3;--accent:#ae5436;--green:#344d3b;--soft:#eaf0e6;--serif:Georgia,'Times New Roman',serif}
.anatomy-app *{box-sizing:border-box}
.anatomy-app{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
.anatomy-app button,.anatomy-app input,.anatomy-app select,.anatomy-app textarea{font:inherit}
.anatomy-app button,.anatomy-app a,.anatomy-app input,.anatomy-app textarea,.anatomy-app select{-webkit-tap-highlight-color:transparent}
.anatomy-app button{cursor:pointer}
.anatomy-app a{color:var(--green);text-underline-offset:3px}
.anatomy-app button:focus-visible,.anatomy-app a:focus-visible,.anatomy-app input:focus-visible,.anatomy-app textarea:focus-visible,.anatomy-app select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.anatomy-app button{color:inherit}
.anatomy-app header{padding:23px 4.5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}
.anatomy-app .brand{display:flex;gap:12px;align-items:center;font-size:12px;line-height:1.25;letter-spacing:.12em;text-transform:uppercase;font-weight:650}
.anatomy-app .brand svg{width:39px;height:39px}
.anatomy-app header nav{display:flex;gap:25px;font-size:12px}
.anatomy-app header nav a{text-decoration:none}
.anatomy-app{max-width:1510px;margin:auto;padding:38px 4.5% 50px}
.anatomy-app .intro{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:29px}
.anatomy-app .eyebrow{font-size:10px;font-weight:750;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
.anatomy-app h1{font:clamp(32px,3.6vw,54px)/1.08 var(--serif);letter-spacing:-.03em;margin:10px 0 12px;font-weight:normal}
.anatomy-app .intro p{margin:0;color:var(--muted);font-size:14px}
.anatomy-app .specimen{text-align:right;font-size:12px;padding-bottom:4px;white-space:nowrap}
.anatomy-app .specimen em{display:block;font:italic 20px var(--serif);margin-bottom:7px}
.anatomy-app .specimen span{display:inline-flex;gap:6px;align-items:center}
.anatomy-app .specimen span:before{content:'';height:6px;width:6px;border-radius:50%;background:#708966}
.anatomy-app .workspace{display:grid;grid-template-columns:minmax(0,1fr) 340px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}
.anatomy-app .viewer{min-width:0;background:#f2eee4;position:relative;display:flex;flex-direction:column}
.anatomy-app .viewtabs{padding:17px 19px;display:flex;gap:4px;background:var(--paper);border-bottom:1px solid var(--line);flex-wrap:wrap}
.anatomy-app .viewtabs button{border:0;background:transparent;border-radius:7px;padding:9px 13px;color:var(--muted);font-size:12px}
.anatomy-app .viewtabs button[aria-selected=true]{background:var(--green);color:white}
.anatomy-app .canvas-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:17px 22px 0;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#5a6253}
.anatomy-app .canvas-meta label{display:flex;gap:7px;align-items:center;cursor:pointer}
.anatomy-app .canvas-meta input{accent-color:var(--green)}
.anatomy-app .stage{position:relative;min-height:450px;flex:1;overflow:hidden;isolation:isolate}
.anatomy-app .stage svg{display:block;width:100%;height:100%;position:absolute;inset:0}
.anatomy-app .spot{cursor:pointer;outline:none}
.anatomy-app .region{fill:transparent;stroke:transparent;stroke-width:2;vector-effect:non-scaling-stroke}
.anatomy-app .spot:hover .region,.anatomy-app .spot:focus .region{fill:#a6523320;stroke:#a65233aa}
.anatomy-app .spot.selected .region{fill:#a6523314;stroke:#a6523366}
.anatomy-app .pin{fill:#faf9f5;stroke:var(--accent);stroke-width:1.5;vector-effect:non-scaling-stroke;pointer-events:none;transition:opacity .2s}
.anatomy-app .dot{fill:var(--accent);pointer-events:none}
.anatomy-app .spot.selected .pin{fill:var(--accent);stroke:#fff}
.anatomy-app .spot.selected .dot{fill:#fff}
.anatomy-app .hide-markers .pin,.anatomy-app .hide-markers .dot{opacity:0}
.anatomy-app .hide-markers .spot:hover .pin,.anatomy-app .hide-markers .spot:hover .dot,.anatomy-app .hide-markers .spot:focus .pin,.anatomy-app .hide-markers .spot:focus .dot{opacity:1}
.anatomy-app .hint{padding:13px 22px 17px;font-size:11px;color:#657060;display:flex;gap:8px;align-items:flex-start;min-height:55px}
.anatomy-app .hint svg{width:16px;flex:none;margin-top:1px}
.anatomy-app .tooltip{position:fixed;max-width:290px;width:max-content;padding:13px 16px;background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:0 8px 35px #23322120;z-index:20;pointer-events:auto;font-size:12px}
.anatomy-app .tooltip strong{display:block;font:19px var(--serif);margin-bottom:4px}
.anatomy-app .tooltip small{display:block;color:var(--accent);margin-top:6px}
.anatomy-app .inspector{padding:26px 25px;border-left:1px solid var(--line);display:flex;flex-direction:column;min-height:580px}
.anatomy-app .inspector .kicker{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.anatomy-app .counter{color:var(--accent)}
.anatomy-app .inspector h2{font:32px/1.1 var(--serif);margin:22px 0 4px;letter-spacing:-.02em}
.anatomy-app .plain{color:var(--muted);font-size:12px;margin:0 0 15px}
.anatomy-app .definition{font-size:14px;margin:0 0 17px}
.anatomy-app .rule{border-top:1px solid var(--line);padding-top:16px;margin-top:0}
.anatomy-app h3{font-size:10px;letter-spacing:.13em;text-transform:uppercase;margin:0 0 7px;font-weight:750}
.anatomy-app .observations{font-size:13px;margin:0 0 17px}
.anatomy-app .example{padding:14px 15px;background:var(--soft);border-radius:8px;margin-bottom:14px}
.anatomy-app .example h3{color:var(--muted);font-size:9px}
.anatomy-app .example p{font:16px/1.45 var(--serif);margin:0}
.anatomy-app .note{font-size:11px;color:var(--muted);margin:0 0 15px}
.anatomy-app .source-link{font-size:10px;margin-top:auto;padding-top:12px;border-top:1px solid var(--line);line-height:1.6}
.anatomy-app .source-link a{display:block}
.anatomy-app .goto{border:1px solid var(--line);border-radius:6px;background:transparent;padding:7px 10px;font-size:11px;margin-bottom:16px;align-self:flex-start}
.anatomy-app .below{display:flex;justify-content:space-between;align-items:center;padding:11px 3px 24px;gap:16px;color:var(--muted);font-size:10px}
.anatomy-app .below span:last-child{text-align:right}
.anatomy-app .index{border-top:1px solid var(--line);padding:25px 0}
.anatomy-app .section-top{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:17px}
.anatomy-app .section-top h2,.anatomy-app .practice h2,.anatomy-app .sources h2{font:27px var(--serif);margin:0}
.anatomy-app .section-top input{width:270px;max-width:50%;border:1px solid var(--line);background:#fff;border-radius:7px;padding:10px 13px;font-size:12px}
.anatomy-app .filterbar{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:15px}
.anatomy-app .filterbar button{border:1px solid var(--line);background:transparent;padding:6px 11px;border-radius:20px;font-size:11px}
.anatomy-app .filterbar button.active{border-color:var(--green);background:var(--soft)}
.anatomy-app .partgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.anatomy-app .partbtn{text-align:left;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:white;display:flex;align-items:center;gap:9px;min-height:56px}
.anatomy-app .partbtn .num{font:11px ui-monospace,monospace;color:#8b917f;min-width:18px}
.anatomy-app .partbtn strong{display:block;font-size:12px;font-weight:600}
.anatomy-app .partbtn small{display:block;font-size:10px;color:var(--muted)}
.anatomy-app .partbtn.active{border-color:#b8795f;background:#faf3ec}
.anatomy-app .partbtn:hover{border-color:#8d9a82}
.anatomy-app .empty{color:var(--muted);grid-column:1/-1}
.anatomy-app .practice{border:1px solid var(--line);border-radius:12px;padding:26px;background:#f2f5ee;margin-top:12px}
.anatomy-app .practice-head{display:flex;justify-content:space-between;gap:25px}
.anatomy-app .practice p{font-size:12px;color:var(--muted);margin:8px 0 0;max-width:740px}
.anatomy-app .practice-head span{font-size:10px;white-space:nowrap;color:var(--muted)}
.anatomy-app .fields{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:15px;margin-top:22px}
.anatomy-app .fields label{display:block;font-size:10px;font-weight:650;letter-spacing:.04em}
.anatomy-app .fields input,.anatomy-app .fields select,.anatomy-app .fields textarea{display:block;background:white;border:1px solid #cfd6c7;border-radius:6px;width:100%;padding:10px;font-size:12px;margin-top:6px;color:var(--ink)}
.anatomy-app .fields .wide{grid-column:1/-1}
.anatomy-app .fields textarea{min-height:76px;resize:vertical}
.anatomy-app .actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}
.anatomy-app .primary{border:1px solid var(--green);background:var(--green);color:#fff;border-radius:7px;padding:10px 16px;font-size:12px}
.anatomy-app .secondary{border:1px solid var(--line);background:white;border-radius:7px;padding:10px 16px;font-size:12px}
.anatomy-app .draft{white-space:pre-wrap;background:white;border-left:3px solid var(--accent);padding:16px 19px;font:16px/1.6 var(--serif);margin:20px 0 0}
.anatomy-app .status{font-size:11px;color:var(--muted)}
.anatomy-app .sources{margin-top:27px;border-top:1px solid var(--line);padding-top:25px}
.anatomy-app .sources summary{font:23px var(--serif);cursor:pointer}
.anatomy-app .sourcegrid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:22px}
.anatomy-app .sourcegrid a{font-size:12px;font-weight:600}
.anatomy-app .sourcegrid p{font-size:11px;color:var(--muted);margin:5px 0}
.anatomy-app .scope{font-size:11px;line-height:1.6;color:var(--muted);margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.anatomy-app footer{padding:24px 4.5%;border-top:1px solid var(--line);font-size:10px;color:var(--muted);display:flex;justify-content:space-between}
.anatomy-app .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}
.anatomy-app [hidden]{display:none!important}
@media(min-width:1400px){.anatomy-app .stage{min-height:525px}
.anatomy-app .workspace{grid-template-columns:minmax(0,1fr) 370px}
.anatomy-app .inspector{padding:28px 30px}}
@media(max-width:1050px){.anatomy-app .workspace{grid-template-columns:minmax(0,1fr) 310px}
.anatomy-app .viewtabs{padding:12px}
.anatomy-app .viewtabs button{padding:8px 10px}
.anatomy-app .partgrid{grid-template-columns:repeat(3,1fr)}
.anatomy-app .inspector{padding:22px}
.anatomy-app .stage{min-height:410px}}
@media(max-width:760px){.anatomy-app header{padding:17px 5%}
.anatomy-app header nav{gap:15px}
.anatomy-app .brand{font-size:9px}
.anatomy-app .brand svg{width:32px}
.anatomy-app{padding:25px 5%}
.anatomy-app .intro{display:block;margin-bottom:22px}
.anatomy-app .specimen{text-align:left;margin-top:17px}
.anatomy-app .specimen em{display:inline;font-size:16px;margin-right:12px}
.anatomy-app .intro p{font-size:12px}
.anatomy-app .workspace{grid-template-columns:1fr}
.anatomy-app .inspector{min-height:0;border-left:0;border-top:1px solid var(--line);padding:23px}
.anatomy-app .inspector h2{margin-top:14px}
.anatomy-app .stage{min-height:340px}
.anatomy-app .viewtabs{padding:10px;display:grid;grid-template-columns:1fr 1fr;gap:4px}
.anatomy-app .canvas-meta{padding:15px 15px 0;font-size:8px}
.anatomy-app .hint{padding:9px 15px 16px;font-size:10px}
.anatomy-app .partgrid{grid-template-columns:repeat(2,1fr)}
.anatomy-app .below{align-items:flex-start;font-size:9px}
.anatomy-app .section-top{align-items:start}
.anatomy-app .section-top h2{font-size:23px}
.anatomy-app .section-top input{width:160px}
.anatomy-app .fields{grid-template-columns:1fr}
.anatomy-app .fields .wide{grid-column:auto}
.anatomy-app .practice{padding:21px}
.anatomy-app .practice-head{display:block}
.anatomy-app .practice-head span{display:block;margin-top:8px}
.anatomy-app .sourcegrid{grid-template-columns:1fr}
.anatomy-app .partbtn{padding:9px}
.anatomy-app .partbtn strong{font-size:11px}
.anatomy-app footer{gap:20px}
.anatomy-app .tooltip{max-width:240px}}
@media(prefers-reduced-motion:reduce){.anatomy-app *{transition:none!important;scroll-behavior:auto!important}}
@media print{.anatomy-app header nav,.anatomy-app .viewtabs,.anatomy-app .canvas-meta label,.anatomy-app .index,.anatomy-app .practice,.anatomy-app .tooltip,.anatomy-app .goto,.anatomy-app footer{display:none}
.anatomy-app .workspace{display:block}
.anatomy-app .stage{height:480px}
.anatomy-app .inspector{min-height:0;border:0}
.anatomy-app .sourcegrid{display:block}
.anatomy-app .sourcegrid>div{break-inside:avoid}
.anatomy-app .pin,.anatomy-app .dot{opacity:0}
.anatomy-app{padding:10px}
.anatomy-app .sources details{display:block}}
.anatomy-app .sex-comparison{border-top:1px solid var(--line);padding:32px 0;margin:4px 0 15px;scroll-margin-top:20px}
.anatomy-app .compare-heading{display:flex;justify-content:space-between;gap:25px;align-items:center}
.anatomy-app .compare-heading h2{font:34px/1.15 var(--serif);margin:8px 0 10px}
.anatomy-app .compare-heading p{font-size:13px;color:var(--muted);margin:0;max-width:660px}
.anatomy-app .compare-tag{font-size:10px;white-space:nowrap;padding:8px 12px;border:1px solid var(--line);border-radius:20px}
.anatomy-app .trait-controls{display:flex;gap:7px;flex-wrap:wrap;margin:23px 0 16px}
.anatomy-app .trait-controls button{border:1px solid var(--line);border-radius:7px;background:transparent;padding:10px 14px;font-size:12px}
.anatomy-app .trait-controls button[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}
.anatomy-app .compare-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.anatomy-app .sex-card{margin:0;background:#f7f6ee;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.anatomy-app .sex-card figcaption{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;background:var(--paper);border-bottom:1px solid var(--line)}
.anatomy-app .sex-card figcaption span{font:26px var(--serif)}
.anatomy-app .sex-card figcaption small{font-size:10px;color:var(--muted)}
.anatomy-app .sex-image{position:relative;width:min(100%,330px);margin:0 auto;aspect-ratio:860/1366}
.anatomy-app .sex-image img{width:100%;height:100%;display:block;object-fit:contain}
.anatomy-app .sex-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.anatomy-app .sex-overlay :is(ellipse,path){fill:#ae54360b;stroke:#ae5436;stroke-width:2;stroke-dasharray:5 4;vector-effect:non-scaling-stroke}
.anatomy-app .sex-caption{padding:18px 22px 20px;background:var(--paper);border-top:1px solid var(--line);min-height:167px}
.anatomy-app .sex-caption h3{font-size:11px}
.anatomy-app .sex-caption p{font-size:13px;color:var(--muted);margin:0;min-height:41px;max-width:490px}
.anatomy-app .contour{display:flex;align-items:center;gap:12px;margin-top:9px}
.anatomy-app .contour svg{width:115px;height:35px;flex:none}
.anatomy-app .contour path{fill:none;stroke:var(--green);stroke-width:3}
.anatomy-app .contour .guide{stroke:#aeb7a7;stroke-width:1;stroke-dasharray:4 4}
.anatomy-app .contour span{font-size:10px;color:var(--muted)}
.anatomy-app .compare-explanation{display:flex;gap:25px;justify-content:space-between;align-items:center;background:var(--soft);border-radius:9px;padding:21px 23px;margin-top:16px}
.anatomy-app .compare-explanation p{font-size:13px;margin:0;max-width:850px}
.anatomy-app .compare-explanation button{flex:none}
.anatomy-app .compare-footer{font-size:11px;color:var(--muted);margin-top:16px;line-height:1.7}
.anatomy-app .compare-footer p{margin:9px 0}
.anatomy-app .compare-footer details{margin-top:12px}
.anatomy-app .compare-footer summary{cursor:pointer;color:var(--green)}
.anatomy-app .writer-label{display:block;margin:22px 0 8px;font-size:12px;font-weight:650}
.anatomy-app .writer-input{display:block;width:100%;border:1px solid #c6d0bd;border-radius:8px;padding:15px;font-size:14px;line-height:1.7;resize:vertical;color:var(--ink);background:white}
.anatomy-app .writer-input::placeholder{color:#87907f}
.anatomy-app .writer-examples{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:15px;font-size:10px;color:var(--muted)}
.anatomy-app .writer-examples button{border:1px solid #ced9c4;background:#f9fbf6;border-radius:20px;padding:6px 11px;font-size:10px}
.anatomy-app .draft-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:25px 0 9px}
.anatomy-app .draft-heading label{font-size:12px;font-weight:650}
.anatomy-app .draft-heading span{font-size:10px;color:var(--muted)}
.anatomy-app .writer-draft{display:block;width:100%;margin:0;min-height:120px;border:1px solid var(--line);border-left:3px solid var(--accent);resize:vertical;color:var(--ink);border-radius:4px;font:16px/1.65 var(--serif)}
.anatomy-app #translation-details{margin-top:18px;font-size:12px}
.anatomy-app #translation-details summary{cursor:pointer}
.anatomy-app #translation-list{padding-left:20px;line-height:1.65}
.anatomy-app #translation-list li{margin:8px 0}
.anatomy-app #translation-list small{display:block;color:var(--muted)}
.anatomy-app #writer-notes{font-size:11px;color:var(--muted);padding-left:18px;line-height:1.7}
.anatomy-app #writer-notes:empty{display:none}
.anatomy-app .practice .writer-privacy{font-size:10px;margin-top:22px;padding-top:14px;border-top:1px solid #d5ddcf}
.anatomy-app .practice .actions{margin-top:16px}
.anatomy-app header nav{flex-wrap:wrap;justify-content:end;gap:13px 22px}
.anatomy-app header nav a{white-space:nowrap}
@media(max-width:760px){.anatomy-app .compare-heading{display:block}
.anatomy-app .compare-heading h2{font-size:28px}
.anatomy-app .compare-tag{display:inline-block;margin-top:13px}
.anatomy-app .compare-pair{gap:9px}
.anatomy-app .sex-card figcaption{display:block;padding:12px}
.anatomy-app .sex-card figcaption span{display:block;font-size:22px}
.anatomy-app .sex-card figcaption small{font-size:8px}
.anatomy-app .sex-caption{padding:14px 12px;min-height:200px}
.anatomy-app .sex-caption p{font-size:11px;min-height:75px}
.anatomy-app .sex-caption h3{font-size:9px;letter-spacing:.07em}
.anatomy-app .contour{display:block}
.anatomy-app .contour svg{width:90px;height:27px;display:block}
.anatomy-app .contour span{font-size:9px;line-height:1.4;display:block}
.anatomy-app .trait-controls{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.anatomy-app .trait-controls button{font-size:10px;padding:9px 5px}
.anatomy-app .compare-explanation{display:block;padding:18px}
.anatomy-app .compare-explanation button{margin-top:14px}
.anatomy-app .compare-explanation p{font-size:12px}
.anatomy-app .draft-heading{display:block}
.anatomy-app .draft-heading span{display:block;margin-top:5px}
.anatomy-app .writer-input{font-size:13px}
.anatomy-app .writer-draft{font-size:15px}
.anatomy-app header nav{font-size:9px;max-width:60%;gap:8px 14px}}
@media print{.anatomy-app .trait-controls,.anatomy-app .compare-explanation button{display:none}
.anatomy-app .sex-card{break-inside:avoid}
.anatomy-app .sex-image{max-height:350px}}
/* Travel Twist Biologist theme: Archivo, paper, forest green and gold. */
.anatomy-page{background:#faf8f0}.anatomy-page #main{background:#faf8f0}
.anatomy-app{--ink:#24392f;--muted:#56675e;--paper:#faf8f0;--cream:#f2eee3;--line:#d9dfd2;--accent:#946514;--green:#315b46;--soft:#edf2e8;--serif:Archivo,Arial,sans-serif;max-width:1380px;margin:0 auto;padding:28px 32px 54px;font:15px/1.6 Archivo,Arial,sans-serif;color:var(--ink);background:var(--paper)}
.anatomy-app .intro{max-width:none;width:100%;font:inherit;margin:21px 0 28px;align-items:end;gap:30px}.anatomy-app h1{font-family:var(--sans);font-weight:600;font-size:clamp(34px,3.8vw,54px);line-height:1.12;letter-spacing:-.035em}.anatomy-app .intro p{font-size:15px;max-width:650px}.anatomy-app .eyebrow{color:#42624c;font-weight:600;margin:0}.anatomy-app .specimen em{font:italic 20px/1.4 Georgia,serif}.anatomy-app h2,.anatomy-app .inspector h2,.anatomy-app .section-top h2,.anatomy-app .practice h2,.anatomy-app .compare-heading h2{font-family:var(--sans);font-weight:600;letter-spacing:-.025em}.anatomy-app h3{letter-spacing:.11em;line-height:1.4}.anatomy-app .sex-card figcaption span{font-family:var(--sans);font-weight:600;font-size:24px}.anatomy-app .example p,.anatomy-app .writer-draft{font-family:var(--sans);font-size:14px;line-height:1.65}.anatomy-app .tooltip strong{font-family:var(--sans);font-size:18px;font-weight:600}.anatomy-app .sources summary{font-family:var(--sans);font-size:24px;font-weight:600}.anatomy-app .primary{background:linear-gradient(#47745a,#315b46);border-color:#193c2a;box-shadow:inset 0 1px 0 #ffffff45,0 3px 0 #193c2a;color:#fff;min-height:44px}.anatomy-app .primary:hover{background:linear-gradient(#3d6a50,#284d3b)}.anatomy-app .secondary{min-height:42px}.anatomy-app .spot.selected .region{stroke:#94651488;fill:#c8932114}.anatomy-app .spot:hover .region,.anatomy-app .spot:focus .region{stroke:#946514;fill:#c8932124}.anatomy-app .sex-overlay :is(ellipse,path){stroke:#946514;fill:#c893210b}.anatomy-app .partbtn.active{border-color:#c89321;background:#fcf6e7}.anatomy-app .anatomy-breadcrumb{font-size:12px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:var(--muted)}.anatomy-app .anatomy-breadcrumb a{font-weight:500}.anatomy-app .anatomy-page-links{display:flex;gap:10px 22px;flex-wrap:wrap;font-size:12px;margin:0 0 24px}.anatomy-app .anatomy-page-links a{text-decoration:none;border-bottom:1px solid #c8932155;padding-bottom:3px}.anatomy-app .anatomy-page-links a:hover{border-color:#c89321}.anatomy-app .compare-heading h2{font-size:32px}.anatomy-app .definition{line-height:1.6}.anatomy-app .viewtabs button{font-weight:500}.anatomy-app .specimen{font-size:11px}
@media(max-width:760px){.anatomy-app{padding:24px 20px 40px}.anatomy-app .intro{margin:21px 0}.anatomy-app .intro p{font-size:13px}.anatomy-app .anatomy-page-links{font-size:11px;gap:10px 18px}.anatomy-app .compare-heading h2{font-size:27px}.anatomy-app .sex-card figcaption span{font-size:20px}.anatomy-app .specimen em{font-size:17px}.anatomy-app .inspector h2{font-size:29px}.anatomy-app .practice h2{font-size:25px}}
@media print{.anatomy-app .anatomy-breadcrumb,.anatomy-app .anatomy-page-links{display:none}.anatomy-app{padding:0}}

.anatomy-app .intro{color:var(--ink)}

/* High-contrast markers and a card that also opens with a single touch. */
.anatomy-app .region{fill:transparent;stroke:none;pointer-events:all;cursor:pointer}
.anatomy-app .pin-hit{fill:transparent;stroke:none;pointer-events:all}
.anatomy-app .pin-halo{fill:#fff;stroke:#193c2a;stroke-width:1.2;vector-effect:non-scaling-stroke;pointer-events:none}
.anatomy-app .pin{fill:#315b46;stroke:#fff;stroke-width:2;filter:drop-shadow(0 1px 2px #193c2a40);pointer-events:none}
.anatomy-app .dot{fill:#fff;pointer-events:none}
.anatomy-app .spot.selected .pin{fill:#f2cf44;stroke:#193c2a;stroke-width:2}
.anatomy-app .spot.selected .dot{fill:#193c2a}
.anatomy-app .spot:focus-visible .pin-halo{stroke:#315b46;stroke-width:3}
.anatomy-app .spot:hover .pin{fill:#315b46}
.anatomy-app .spot.selected:hover .pin{fill:#f2cf44}
.anatomy-app .hide-markers .pin-halo{opacity:0}
.anatomy-app .hide-markers .spot:is(:hover,:focus,.selected) :is(.pin,.pin-halo,.dot){opacity:1}
.anatomy-app .tooltip{width:340px;max-width:calc(100vw - 24px);max-height:min(480px,calc(100dvh - 24px));overflow:auto;overscroll-behavior:contain;padding:18px 20px;background:#fffefa;border:1px solid #d9dfd2;border-top:4px solid #315b46;border-radius:14px;box-shadow:0 12px 40px #193c2a40;z-index:1000;color:#24392f;font-size:13px;line-height:1.5}
.anatomy-app .tooltip p{margin:0 0 10px}
.anatomy-app .tooltip .tip-eyebrow{font-size:9px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#315b46;padding-right:35px;margin-bottom:6px}
.anatomy-app .tooltip h2{font:600 21px/1.2 var(--sans);letter-spacing:-.025em;margin:0 32px 4px 0}
.anatomy-app .tooltip .tip-plain{font-size:12px;color:#56675e;margin-bottom:12px}
.anatomy-app .tooltip h3{font-size:9px;letter-spacing:.08em;margin:0 0 5px;color:#42624c}
.anatomy-app .tip-field{border-top:1px solid #dce4df;padding-top:11px}
.anatomy-app #tip-example{border-left:3px solid #f2cf44;padding-left:9px;margin-bottom:0;font-size:12px}
.anatomy-app .tip-close{position:absolute;right:5px;top:5px;display:grid;place-items:center;width:44px;height:44px;border:0;background:transparent;border-radius:50%;font-size:27px;line-height:1;color:#315b46}
.anatomy-app .tip-close:hover{background:#fff5bc}
.anatomy-app .tip-details{display:block;min-height:44px;margin-top:8px;padding:8px 0;background:transparent;border:0;text-align:left;font-size:12px;font-weight:600;color:#315b46;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.anatomy-app .tooltip{width:320px;font-size:12px;padding:15px 17px}.anatomy-app .tooltip h2{font-size:20px}.anatomy-app .tooltip p{margin-bottom:8px}}
@media print{.anatomy-app .pin-halo{opacity:0}.anatomy-app .tooltip{display:none!important}}

@media(max-width:760px){.anatomy-app .specimen{white-space:normal}.anatomy-app .specimen span{white-space:normal}}

/* Compact anatomy categories and contrasting comparison outlines. */
.anatomy-app .index{scroll-margin-top:24px}
.anatomy-app .index-help{font-size:12px;color:var(--muted);margin:-5px 0 17px}
.anatomy-app .anatomy-groups{display:grid;gap:8px}
.anatomy-app .anatomy-category{background:#fff;border:1px solid #d4dfd9;border-radius:10px;overflow:hidden}
.anatomy-app .anatomy-category>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;min-height:54px;padding:13px 17px;font-size:14px;font-weight:600;color:#315b46}
.anatomy-app .anatomy-category>summary::-webkit-details-marker{display:none}
.anatomy-app .anatomy-category>summary::after{content:'+';font-size:22px;line-height:1;font-weight:400;color:#315b46;width:18px;text-align:center}
.anatomy-app .anatomy-category[open]>summary::after{content:'−'}
.anatomy-app .anatomy-category>summary:hover,.anatomy-app .anatomy-category[open]>summary{background:#edf2e8}
.anatomy-app .anatomy-category>summary:focus-visible{outline:3px solid #315b46;outline-offset:-4px}
.anatomy-app .category-count{margin-left:auto;font-size:11px;font-weight:500;color:#56675e;white-space:nowrap}
.anatomy-app .anatomy-category .partgrid{padding:0 14px 14px;background:#edf2e8;grid-template-columns:repeat(3,minmax(0,1fr))}
.anatomy-app .anatomy-category .partbtn.active{border-color:#315b46;background:#fff5bc;box-shadow:inset 3px 0 #315b46}
.anatomy-app .sex-overlay .highlight-halo{fill:none;stroke:#fff;stroke-width:7;stroke-dasharray:none;vector-effect:non-scaling-stroke}
.anatomy-app .sex-overlay .highlight-outline{fill:#315b4612;stroke:#315b46;stroke-width:3;stroke-dasharray:none;vector-effect:non-scaling-stroke}
.anatomy-app .trait-controls button[aria-pressed=true]{background:#315b46;border-color:#193c2a;color:#fff}
.anatomy-app .contour path:not(.guide){stroke:#315b46}
@media(max-width:760px){.anatomy-app .anatomy-category>summary{font-size:13px;padding:12px 14px}.anatomy-app .anatomy-category .partgrid{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 10px 10px}.anatomy-app .index .section-top{flex-wrap:wrap;gap:12px}.anatomy-app .index .section-top input{width:100%;max-width:none}.anatomy-app .index-help{font-size:11px;margin-top:0}}
@media(max-width:360px){.anatomy-app .anatomy-category .partgrid{grid-template-columns:1fr}}

/* Optional field context, tucked below the comparison heading. */
.anatomy-app .trait-fact{margin-top:16px;border:1px solid #d4dfd9;border-radius:9px;background:#f5f8f3}
.anatomy-app .trait-fact>summary{cursor:pointer;min-height:46px;padding:12px 16px;font-size:12px;line-height:1.5;color:#315b46}
.anatomy-app .trait-fact>summary::marker{color:#315b46}
.anatomy-app .trait-fact>summary:focus-visible{outline:3px solid #315b46;outline-offset:2px;border-radius:7px}
.anatomy-app .fact-label{font-weight:600}
.anatomy-app .fact-body{display:flex;align-items:center;gap:20px;padding:0 16px 16px}
.anatomy-app .fact-body p{font-size:12px;line-height:1.6;margin:0;flex:1;max-width:850px}
.anatomy-app .fact-body button{flex:none;font-size:11px}
@media(max-width:760px){.anatomy-app .fact-body{display:block}.anatomy-app .fact-body button{margin-top:12px}.anatomy-app .trait-fact>summary{padding:12px 14px}}
@media print{.anatomy-app .fact-body button{display:none}}

/* Shared forest-green and yellow controls, with smaller, touch-friendly markers. */
.anatomy-app{--yellow:#f2cf44;--yellow-light:#fff5bc;--green-dark:#193c2a}
.anatomy-app .secondary,.anatomy-app .goto{background:var(--yellow);border-color:#b39931;color:var(--green-dark);font-weight:600}
.anatomy-app .secondary:not(:disabled):hover,.anatomy-app .goto:hover{background:#f7dc70;border-color:var(--green-dark)}
.anatomy-app button:disabled{opacity:.5;cursor:default}
.anatomy-app .terminology-toggle{background:linear-gradient(#f7dc70,var(--yellow));border-color:#987516;box-shadow:inset 0 1px 0 #ffffff65,0 3px 0 #987516;min-height:44px}
.anatomy-app .terminology-toggle span{margin-left:8px;font-size:14px;line-height:1}
.anatomy-app .viewtabs button:not([aria-selected=true]):hover,.anatomy-app .trait-controls button:not([aria-pressed=true]):hover,.anatomy-app .writer-examples button:hover{background:var(--yellow);color:var(--green-dark);border-color:#b39931}
.anatomy-app .trait-controls button[aria-pressed=true]{background:var(--green);border-color:var(--green-dark);color:#fff}
.anatomy-app .writer-examples button{color:var(--green);border-color:#bac9b5}
.anatomy-app .pin{fill:var(--yellow);stroke:var(--green-dark);stroke-width:1.25}
.anatomy-app .pin-halo{fill:#fff;stroke:var(--green-dark);stroke-width:1}
.anatomy-app .dot{fill:var(--green-dark)}
.anatomy-app .spot:is(:hover,:focus-visible,.selected,.tip-active) .pin{fill:var(--yellow);stroke:var(--green-dark);stroke-width:2}
.anatomy-app .spot:is(:focus-visible,.selected,.tip-active) .pin-halo{fill:var(--yellow);stroke:var(--green-dark);stroke-width:2}
.anatomy-app .spot.selected .dot{fill:var(--green-dark)}
.anatomy-app .tooltip{border-top-color:var(--yellow)}
.anatomy-app .tip-close:hover{background:var(--yellow)}
.anatomy-app .sex-overlay .highlight-halo{stroke:var(--green-dark);stroke-width:4.5;stroke-opacity:.85}
.anatomy-app .sex-overlay .highlight-outline{fill:#f2cf441a;stroke:var(--yellow);stroke-width:2.5}
.anatomy-app .anatomy-category>summary:hover{background:var(--yellow-light)}
.anatomy-app .anatomy-category .partbtn.active{background:var(--yellow);border-color:#b39931;box-shadow:inset 3px 0 var(--green)}
.anatomy-app .partbtn:hover{border-color:var(--green);background:var(--yellow-light)}
.anatomy-app .practice .terminology-panel{margin-top:23px;padding:23px 0 0;border-top:1px solid #cbd7c3}
.anatomy-app .practice .terminology-panel h2{font-size:23px}
.anatomy-app .practice .index-help{margin:0 0 16px}
.anatomy-app .terminology-panel .section-top input{min-height:44px}
.anatomy-app .terminology-detail{margin-top:15px;padding:20px;border:1px solid var(--line);border-left:4px solid var(--yellow);border-radius:8px;background:#fff}
.anatomy-app .terminology-detail h3{font:600 22px/1.3 var(--sans);text-transform:none;letter-spacing:-.02em;margin:0}
.anatomy-app .terminology-detail h4{font-size:10px;letter-spacing:.08em;text-transform:uppercase;margin:17px 0 4px;color:var(--green)}
.anatomy-app .practice .terminology-detail p{max-width:none;margin-top:5px;line-height:1.6}
.anatomy-app .terminology-detail .term-plain{font-size:11px}
.anatomy-app .terminology-detail button{margin-top:15px}
.anatomy-app .actions .status{flex-basis:100%}
@media(max-width:760px){.anatomy-app .terminology-detail{padding:16px}.anatomy-app .practice .terminology-panel h2{font-size:21px}}

/* Contour paths preserve the yellow anatomical guides when a highlight is not elliptical. */
.anatomy-app .sex-overlay path{vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}

/* Shell form and mating: explanatory context beside the matched ventral views. */
.anatomy-app .mating-context{margin-top:24px;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden;scroll-margin-top:24px}
.anatomy-app .mating-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center}
.anatomy-app .mating-figure{margin:0;background:#faf8f0;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.anatomy-app .mating-figure img{display:block;width:100%;height:auto}
.anatomy-app .mating-figure figcaption{display:flex;flex-wrap:wrap;gap:4px 14px;justify-content:center;padding:10px 16px 17px;font-size:11px;color:var(--muted);text-align:center}
.anatomy-app .mating-figure figcaption strong{color:var(--green-dark);font-weight:600}
.anatomy-app .mating-copy{padding:26px}
.anatomy-app .mating-copy h3{font:700 clamp(21px,2.2vw,27px)/1.2 var(--sans);text-transform:none;letter-spacing:-.02em;color:var(--ink);margin:0 0 13px}
.anatomy-app .mating-copy p{font-size:14px;line-height:1.65;margin:0;color:var(--muted)}
.anatomy-app .mating-anatomy{margin:18px 0 0}
.anatomy-app .mating-anatomy>div{border-left:3px solid var(--yellow);padding-left:13px;margin-top:15px}
.anatomy-app .mating-anatomy dt{font-size:12px;font-weight:700;color:var(--ink);margin-bottom:3px}
.anatomy-app .mating-anatomy dd{margin:0;font-size:12px;line-height:1.65;color:var(--muted)}
.anatomy-app .mating-field-note{border-top:1px solid var(--line);font-size:12px}
.anatomy-app .mating-field-note summary{cursor:pointer;padding:15px 22px;color:var(--green);font-weight:600;min-height:44px}
.anatomy-app .mating-field-note summary:focus-visible{outline:3px solid var(--green);outline-offset:-4px}
.anatomy-app .mating-field-note>div{padding:0 22px 10px;line-height:1.65;color:var(--muted)}
.anatomy-app .mating-example{padding:12px 15px;background:var(--soft);border-left:3px solid var(--yellow)}
.anatomy-app .mating-sources{padding:13px 22px;margin:0;border-top:1px solid var(--line);font-size:10px;line-height:1.7;color:var(--muted)}
@media(max-width:760px){.anatomy-app .mating-layout{grid-template-columns:1fr}.anatomy-app .mating-copy{padding:21px}.anatomy-app .mating-copy p{font-size:13px}.anatomy-app .mating-figure figcaption{padding-bottom:13px}.anatomy-app .mating-field-note summary{padding:14px 18px}.anatomy-app .mating-field-note>div{padding:0 18px 10px}.anatomy-app .mating-sources{padding:12px 18px}}

.anatomy-app .illustration-credit{font-size:11px;line-height:1.6;color:var(--muted);margin:0 0 24px;max-width:760px}

/* Bottom row of the detail panel: details link on the left, a thumb-sized Close on the right (touch screens). */
.anatomy-app .tip-foot{position:sticky;bottom:-18px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px -20px -18px;padding:8px 20px 12px;background:#fffefa;border-top:1px solid #e4e9df}
.anatomy-app .tip-foot .tip-details{margin-top:0}
.anatomy-app .tip-close-bottom{display:none;min-height:44px;padding:10px 20px;border:1px solid #315b46;border-radius:999px;background:#315b46;color:#fff;font:600 14px Archivo,Arial,sans-serif;cursor:pointer}
@media (pointer:coarse),(max-width:760px){.anatomy-app .tip-close-bottom{display:inline-flex;align-items:center}}
@media(max-width:760px){.anatomy-app .tip-foot{bottom:-15px;margin:10px -17px -15px;padding:8px 17px 12px}}
