/* Species extension: all styles are scoped; Human design tokens remain authoritative. */
body[data-platform-section]:not([data-platform-section="human"]) #app>.topbar,
body[data-platform-section]:not([data-platform-section="human"]) #app>.controls,
body[data-platform-section]:not([data-platform-section="human"]) #app>#infoCard,
body[data-platform-section]:not([data-platform-section="human"]) #labels,
body[data-platform-section]:not([data-platform-section="human"]) #legend,
body[data-platform-section]:not([data-platform-section="human"]) #quizPanel,
body[data-platform-section]:not([data-platform-section="human"]) .label-leaders,
body[data-platform-section]:not([data-platform-section="human"]) .atlas-root,
body[data-platform-section]:not([data-platform-section="human"]) .atlas-movement-return,
body[data-platform-section]:not([data-platform-section="human"]) .footer-hint{display:none!important}
.platform-root [hidden],.platform-home-link[hidden]{display:none!important}
.platform-root{position:fixed;inset:0;z-index:12;pointer-events:none}
.platform-root button,.platform-root input,.platform-root select,.platform-root a,.platform-root summary{pointer-events:auto}
.platform-home-link{position:fixed;z-index:40;right:24px;bottom:24px;pointer-events:auto;min-height:36px;padding:8px 13px;font-size:12px;background:var(--panel)}
body:not([data-platform-section="human"]) .platform-home-link{top:24px;bottom:auto}
.platform-root button:disabled{cursor:not-allowed;opacity:.48}
.platform-root .control-button{min-height:34px;height:auto;white-space:normal;font-size:12px;padding:7px 10px}
.platform-start{width:min(1060px,calc(100% - 64px));margin:0 auto;height:100%;padding:7vh 0 32px;overflow:auto;pointer-events:auto;scrollbar-width:thin}
.platform-start header{margin:0 0 32px;max-width:780px}
.platform-start .eyebrow{font-size:12px;letter-spacing:.06em;margin-bottom:12px}
.platform-start h1{font-size:clamp(30px,4.5vw,52px);line-height:1.05;font-weight:730;margin:0 0 14px;letter-spacing:-.025em}
.platform-start header>p:last-of-type{color:var(--muted);font-size:16px;line-height:1.5;margin:0}
.platform-visitor-counter{display:inline-flex;align-items:baseline;gap:12px;margin-top:18px;padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--muted)}
.platform-visitor-counter span{font-size:11px;font-weight:800;letter-spacing:.1em}.platform-visitor-counter strong{font-size:18px;color:var(--teal);font-variant-numeric:tabular-nums}
.platform-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.platform-choice{position:relative;text-align:left;border:1px solid var(--line);border-radius:var(--radius);background:transparent;color:var(--text);padding:0;overflow:hidden;cursor:pointer;transition:border-color .2s,box-shadow .2s;min-height:365px}
.platform-choice:hover,.platform-choice:focus-visible{border-color:var(--teal);box-shadow:0 0 0 1px rgba(99,208,200,.13),var(--shadow)}
.platform-preview{height:260px;pointer-events:none;position:relative}
.platform-preview-placeholder{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:14px}
.platform-choice-copy{display:block;padding:23px 26px;background:var(--panel);border-top:1px solid var(--line);min-height:132px}
.platform-choice-copy strong{display:block;font-size:24px;font-weight:750;margin-bottom:6px}.platform-choice-copy>span{color:var(--muted);font-size:14px;line-height:1.5;display:block}
.platform-choice .choice-arrow{position:absolute;right:24px;bottom:37px;color:var(--teal);font-size:23px}
.platform-start .platform-note{font-size:13px;color:var(--muted);margin:24px 0;max-width:700px;line-height:1.5}
.platform-skeleton-labs{margin-top:32px}.platform-skeleton-labs h2{font-size:24px;margin:0 0 6px}.platform-skeleton-labs>p{color:var(--muted);font-size:14px;margin:0 0 14px;line-height:1.5}
.platform-lab-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.platform-lab-link{display:grid;gap:7px;align-content:start;min-height:138px;padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);color:var(--text);text-decoration:none}.platform-lab-link:hover,.platform-lab-link:focus-visible{border-color:var(--teal);outline:2px solid transparent;box-shadow:0 0 0 1px rgba(99,208,200,.13)}.platform-lab-link strong{font-size:18px}.platform-lab-link>span{color:var(--muted);font-size:13px;line-height:1.45}.platform-lab-link .platform-lab-action{color:var(--teal);font-weight:700;margin-top:5px}
@media(max-width:540px){.platform-lab-links{grid-template-columns:1fr}.platform-lab-link{min-height:0}}
.platform-species-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.platform-species-grid .platform-dog-card{grid-column:1/-1;display:grid;grid-template-columns:1.15fr 1fr;min-height:235px}.platform-dog-card .platform-preview{height:245px}.platform-dog-card .platform-choice-copy{border-top:0;border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:center}
.platform-coming{border:1px solid var(--line);background:var(--panel);border-radius:var(--radius);padding:25px;min-height:118px;color:var(--muted)}.platform-coming strong{display:block;color:var(--text);font-size:21px;margin-bottom:10px}.platform-badge{display:inline-block;font-size:12px;padding:4px 8px;border:1px solid var(--line);border-radius:999px;color:var(--teal);margin-top:12px;width:fit-content}
.vet-header{position:fixed;left:24px;top:24px;right:170px;pointer-events:none}.vet-header h1{font-size:clamp(26px,3vw,39px);margin:4px 0 0;line-height:1.08}.vet-tabs{position:fixed;top:105px;left:24px;display:flex;gap:6px}.vet-tabs button[aria-selected="true"]{background:var(--teal);color:#082021;border-color:var(--teal)}
.vet-panel{pointer-events:auto;overflow:auto;scrollbar-width:thin;padding:15px;font-size:13px;line-height:1.5}.vet-controls{left:24px;top:155px;bottom:24px;width:282px}.vet-info{right:24px;top:155px;max-height:calc(100vh - 180px);width:310px}.vet-info h2{margin:3px 0 12px;font-size:23px;line-height:1.15}.vet-info h3{font-size:14px;color:var(--teal);margin:18px 0 6px}.vet-info p{margin:8px 0}.vet-panel .section-title{font-size:12px}.vet-panel input[type="search"],.vet-panel select{width:100%;color:var(--text);background:#111a1e;border:1px solid var(--line);border-radius:6px;font-size:13px;min-height:36px;padding:7px;margin:4px 0 8px}.vet-panel input[type="range"]{width:100%;accent-color:var(--teal)}
.vet-status{font-size:12px;color:var(--muted);margin:7px 0}.vet-status[data-error="true"]{color:var(--rose)}.vet-section{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.vet-section summary{cursor:pointer;color:var(--teal);font-weight:700;font-size:12px}
.vet-warning{padding:11px 12px;border-left:3px solid var(--amber);background:rgba(228,177,95,.06);font-size:12px;color:var(--text);line-height:1.55;margin:10px 0}.vet-warning strong{display:block;color:var(--amber);margin-bottom:3px}.vet-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.vet-views{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.vet-results{display:grid;gap:5px;max-height:235px;overflow:auto;scrollbar-width:thin}.vet-results button{text-align:left;display:block;width:100%}.vet-results small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.vet-results button[aria-pressed="true"]{border-color:var(--teal);background:rgba(99,208,200,.12)}
.vet-systems{display:grid;gap:7px}.vet-system{display:flex;gap:8px;align-items:flex-start;font-size:12px;cursor:pointer}.vet-system input{accent-color:var(--teal);margin-top:4px}.vet-system small{display:block;color:var(--muted);font-size:10px}.vet-system:has(input:disabled){color:var(--muted)}
.vet-fields{margin:14px 0}.vet-fields>div{border-top:1px solid var(--line);padding:8px 0;display:grid;grid-template-columns:88px 1fr;gap:12px}.vet-fields dt{font-size:11px;color:var(--muted)}.vet-fields dd{font-size:12px;margin:0;overflow-wrap:anywhere}.vet-links{display:grid;gap:5px}.vet-references a{display:block;color:var(--teal);font-size:12px;margin:7px 0;overflow-wrap:anywhere}
.vet-labels{position:fixed;inset:0;pointer-events:none}.vet-label{position:absolute;pointer-events:auto;background:rgba(11,16,19,.88);border:1px solid var(--line);color:var(--text);padding:4px 7px;font-size:11px;border-radius:4px;max-width:170px;transform:translate(-50%,-50%)}
.vet-lesson-select{display:grid;gap:7px}.vet-lesson-select button{text-align:left}.vet-lesson-select button[aria-pressed="true"]{border-color:var(--teal);background:rgba(99,208,200,.12)}.vet-step-number{font-size:12px;color:var(--teal);font-weight:750}.vet-step-title{font-size:18px;line-height:1.3;margin:5px 0 10px}.vet-flow{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:15px 0}.vet-flow span{padding:7px 9px;border:1px solid var(--line);border-radius:5px;font-size:12px;background:rgba(99,208,200,.05)}.vet-flow span[data-current="true"]{border-color:var(--teal);color:var(--teal)}.vet-step-progress{height:4px;background:var(--line);border-radius:3px;overflow:hidden;margin:14px 0}.vet-step-progress>i{display:block;height:100%;background:var(--teal);width:0}.vet-hint{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);font-size:11px;color:var(--muted);text-align:center;pointer-events:none}
@media(max-width:900px){.platform-start{width:calc(100% - 32px);padding-top:70px}.platform-start header{margin-bottom:22px}.platform-start h1{font-size:32px}.platform-choice-grid{gap:14px}.platform-preview{height:220px}.platform-choice{min-height:0}.platform-choice-copy{padding:18px;min-height:117px}.platform-choice-copy strong{font-size:22px}.platform-choice .choice-arrow{right:16px;bottom:24px}.platform-home-link{right:14px;bottom:12px}body:not([data-platform-section="human"]) .platform-home-link{right:14px;top:14px}.vet-header{left:15px;top:20px;right:140px}.vet-header .eyebrow{font-size:9px}.vet-header h1{font-size:26px}.vet-tabs{left:15px;top:94px}.vet-controls{left:10px;right:10px;top:auto;bottom:10px;width:auto;height:204px;padding:12px}.vet-info{right:10px;left:10px;top:auto;bottom:226px;max-height:210px;width:auto;padding:13px}.vet-info h2{font-size:20px}.vet-panel .vet-systems{grid-template-columns:1fr 1fr}.vet-hint{display:none}.vet-results{max-height:125px}.vet-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:540px){.platform-choice-grid{grid-template-columns:1fr}.platform-start{padding-top:44px}.platform-start h1{font-size:31px}.platform-start header>p:last-child{font-size:14px}.platform-preview{height:180px}.platform-choice-copy{min-height:101px}.platform-choice-copy strong{font-size:20px}.platform-choice-copy>span{font-size:12px}.platform-species-grid{grid-template-columns:1fr}.platform-species-grid .platform-dog-card{display:block}.platform-dog-card .platform-preview{height:200px}.platform-dog-card .platform-choice-copy{border-left:0;border-top:1px solid var(--line)}.platform-coming{min-height:0;padding:16px;display:flex;justify-content:space-between;align-items:center}.platform-coming strong{margin:0;font-size:18px}.platform-coming .platform-badge{margin:0}.vet-header h1{font-size:23px}.vet-header{right:135px}.vet-header .eyebrow{font-size:8px}.vet-tabs{top:98px}.vet-tabs .control-button{min-height:31px}.vet-info .vet-warning{font-size:11px}}
@media(max-width:900px) and (orientation:landscape) and (max-height:600px){.vet-controls{left:10px;right:auto;top:140px;bottom:10px;width:235px;height:auto}.vet-info{left:auto;right:10px;top:140px;bottom:auto;width:235px;max-height:calc(100vh - 150px)}.platform-preview{height:150px}.platform-start{padding-top:30px}.platform-start h1{font-size:27px}}

body[data-platform-section]:not([data-platform-section="human"]) #app>.readout{display:none!important}
body[data-platform-section="human"] .platform-home-link{top:70px;bottom:auto}
.vet-results button[aria-pressed="true"],.vet-lesson-select button[aria-pressed="true"]{color:var(--text)}
@media(max-width:900px){body[data-platform-section="human"] .platform-home-link{top:10px;bottom:auto}}

@media(max-width:900px){.vet-lesson-select{grid-template-columns:repeat(3,1fr);gap:5px}.vet-lesson-select .control-button{font-size:11px;padding:6px 3px}}
.vet-inspector pre{font:11px/1.5 ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere;max-height:300px;overflow:auto;color:var(--muted)}
.vet-align-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.vet-align-grid label{font-size:11px;color:var(--muted)}.vet-align-grid input[type=number]{width:100%;min-width:0;border:1px solid var(--line);background:#111a1e;color:var(--text);padding:6px;border-radius:4px}.vet-landmark-label{color:var(--teal);border-color:var(--teal);font-size:10px;pointer-events:none}
.vet-muscle-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px}.vet-muscle-table th,.vet-muscle-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:9px 5px;overflow-wrap:anywhere}.vet-muscle-table th{color:var(--muted);font-size:10px}.vet-muscle-table .control-button{background:none;border:0;padding:0;text-align:left;color:var(--teal);text-decoration:underline;min-height:0}.vet-grid button[aria-pressed=true]{border-color:var(--teal);background:rgba(99,208,200,.12)}

/* Published reference mode keeps the same navigation without loading draft GLBs. */
body[data-platform-section="human"] .platform-home-link{top:auto;bottom:24px}
.platform-reference-preview{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:32px;background:linear-gradient(135deg,rgba(99,208,200,.09),transparent);color:var(--muted)}
.platform-reference-preview .eyebrow{color:var(--teal);font-size:12px;letter-spacing:.12em}.platform-reference-preview strong{font-size:clamp(22px,2.8vw,32px);color:var(--text)}.platform-reference-preview small{font-size:12px;line-height:1.4}
.vet-reference{height:100%;overflow:auto;pointer-events:auto;scrollbar-width:thin;padding:28px max(24px,calc((100vw - 1200px)/2)) 48px;background:var(--bg,#0b1013)}
.vet-reference header{margin:24px 0 20px}.vet-reference h1{font-size:clamp(27px,3.4vw,40px);margin:5px 0;line-height:1.12}.vet-reference h2{font-size:22px;line-height:1.25;margin:0 0 16px}.vet-reference h3{font-size:14px;color:var(--teal);margin:22px 0 10px}.vet-reference p{line-height:1.65;font-size:14px;overflow-wrap:anywhere}
.vet-reference-breadcrumb{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:12px;padding-right:150px}.vet-reference-availability{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);padding:14px 18px}.vet-reference-availability strong{color:var(--teal);font-size:13px}.vet-reference-availability p{margin:6px 0 0;color:var(--muted);font-size:13px}
.vet-reference-tabs{display:flex;gap:8px;margin:20px 0}.vet-reference-tabs button[aria-pressed="true"]{background:var(--teal);color:#082021;border-color:var(--teal)}
.vet-reference-grid{display:grid;grid-template-columns:minmax(235px,320px) minmax(0,1fr);gap:22px;align-items:start}.vet-reference-list,.vet-reference-detail{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:22px;min-width:0}.vet-reference-list input,.vet-reference-list select{display:block;box-sizing:border-box;width:100%;background:#111a1e;border:1px solid var(--line);border-radius:6px;color:var(--text);font-size:13px;padding:10px;margin:8px 0}
.vet-reference-results{display:grid;gap:6px;max-height:480px;overflow:auto;scrollbar-width:thin}.vet-reference-results button{text-align:left}.vet-reference-results small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.vet-reference-results button[aria-pressed="true"],.vet-reference-steps button[aria-current="step"]{border-color:var(--teal);background:rgba(99,208,200,.1)}
.vet-reference-detail .vet-fields>div{grid-template-columns:120px 1fr}.vet-reference-detail .vet-fields dd{font-size:13px;line-height:1.6}.vet-reference-steps{padding-left:24px;color:var(--muted);font-size:12px}.vet-reference-steps li{margin:7px 0}.vet-reference-steps button{width:100%;text-align:left}.vet-reference-actions{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.vet-reference-detail .vet-status{font-size:12px;color:var(--muted)}
@media(max-width:700px){.vet-reference{padding:22px 14px 35px}.vet-reference header{margin-top:20px}.vet-reference-grid{grid-template-columns:1fr;gap:14px}.vet-reference-list,.vet-reference-detail{padding:17px}.vet-reference-results{max-height:180px}.vet-reference-list .vet-lesson-select{grid-template-columns:1fr}.vet-reference-steps{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.vet-reference-detail .vet-fields>div{grid-template-columns:90px 1fr}.platform-reference-preview{padding:25px}.vet-reference-breadcrumb{padding-right:140px}}
@media(max-width:900px){body[data-platform-section="human"] .platform-home-link{top:auto;bottom:12px}}
