/* Presentation layer on the original published colours and card utilities. */
:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"}
*{box-sizing:border-box}[hidden]{display:none!important}
.knowledge-panel{min-width:0}.research-evidence{display:inline-flex;flex-wrap:wrap;gap:.3rem;margin:.2rem 0 .35rem;font-size:.8rem;line-height:1.5}.research-evidence a{display:inline-flex;align-items:center;min-height:24px;padding:0 .25rem;border-radius:.3rem;color:#6ee7b7;text-decoration:underline;text-underline-offset:.2em}.research-evidence a:hover,.research-evidence a:focus-visible{background:#064e3b;color:#ecfdf5}
.knowledge-main a,.preview-bar a{color:#6ee7b7;text-underline-offset:3px}button,summary{-webkit-tap-highlight-color:transparent}
button:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid #fbbf24;outline-offset:4px}
.preview-bar{display:flex;justify-content:space-between;gap:1rem;max-width:58rem;padding:.75rem 1rem;margin:0 auto;color:#a8a29e;font-size:.75rem}
.preview-bar a{color:#a7f3d0}.knowledge-main{max-width:58rem;margin-top:.2rem}.knowledge-card{padding:1.5rem}
.knowledge-hero{display:flex;align-items:flex-start;gap:1.3rem}.hero-photo{display:block;flex:0 0 150px;line-height:0;border:1px solid #57534e;border-radius:1rem;overflow:hidden}
.hero-photo img{width:150px;height:135px;object-fit:cover}.hero-copy{min-width:0;flex:1}.family-name{color:#a8a29e;font-size:.78rem;margin:0 0 .3rem}
.knowledge-hero h1{font-size:1.5rem;line-height:2rem;font-weight:800;margin:0;letter-spacing:normal;color:#fff}.latin-name{color:#a8a29e;font-family:ui-serif,Georgia,Cambria,"Times New Roman",Times,serif;font-size:.875rem;line-height:1.25rem;margin:0 0 .4rem}
.knowledge-family{display:flex;align-items:center;gap:.4rem;font-size:.75rem;line-height:1rem;margin:.4rem 0 .6rem;color:#d6d3d1}.knowledge-family a,.family-name-wrap{font-weight:700;color:#34d399}.knowledge-family .family-name{font-size:inherit;color:inherit;margin:0}.knowledge-family a{text-decoration:none}.knowledge-family a:hover{text-decoration:underline}
.knowledge-family>span:first-child{flex-shrink:0;white-space:nowrap}
.knowledge-actions{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin:1rem 0}.knowledge-actions [data-full-card-link]{font-size:.75rem;font-weight:600;color:#6ee7b7;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}.knowledge-actions [data-full-card-link]:hover{text-decoration:underline}
[data-card-display=page] [data-full-card-link]{display:none}
[data-card-display=modal] body{background:#1c1917}
[data-card-display=modal] .release-navigation,[data-card-display=modal] .species-page-footer{display:none}
[data-card-display=modal] [data-portal-shell]{display:none}
body[data-portal-page] .knowledge-main>.species-page-footer{display:none}
body[data-portal-page] .knowledge-main{margin-top:1.5rem}
[data-card-display=modal] body[data-portal-page] .knowledge-main{margin:0}
body[data-portal-page] #knowledge-app{flex:1}
body[data-portal-page]{overflow-x:clip;overflow-y:visible}
[data-card-display=modal] .knowledge-main{max-width:none;margin:0;padding:0}
[data-card-display=modal] .knowledge-card{border:0;border-radius:0;box-shadow:none;padding:1.5rem}
[data-card-display=modal] .knowledge-hero{padding-right:2.25rem}
@media(min-width:768px){[data-card-display=modal] .knowledge-card{padding:2rem}}
.card-badges{display:flex;align-items:center;flex-wrap:wrap;flex:0 0 auto;max-width:100px;gap:.5rem}.badge-detail{position:relative}.badge-detail>summary{list-style:none;display:grid;place-items:center;width:42px;height:42px;cursor:pointer;border:1px solid #34724e;background:#143e29;border-radius:.8rem}
.badge-detail>summary::-webkit-details-marker{display:none}.badge-detail .species-tag-icon{width:31px;height:31px}.badge-popover{position:absolute;top:48px;left:auto;right:0;min-width:230px;max-width:300px;padding:.3rem;background:#1c1917;border:1px solid #57534e;border-radius:.9rem;box-shadow:0 10px 35px #0008;z-index:5}
.badge-popover .species-tag{border:0;background:transparent;border-radius:0;margin:0}.badge-popover .species-tag-icon{display:none}.badge-popover .species-tag-copy{display:flex}
.photo-credit{font-size:.68rem;color:#a8a29e;line-height:1.5;margin:.65rem 0 1.2rem}.photo-credit summary{cursor:pointer;min-height:32px;padding:.2rem 0}.photo-credit p{margin:.4rem 0;max-width:43rem}
.locale-controls{display:flex;align-items:center;justify-content:space-between;gap:.7rem;font-size:.77rem;color:#a8a29e;margin-top:.7rem}.locale-controls>div{display:flex;gap:.3rem}.locale-controls button{min-height:40px;padding:.4rem .8rem;color:#d6d3d1;background:#292524;border:1px solid #57534e;border-radius:.65rem;font:inherit;font-weight:700;cursor:pointer}.locale-controls button[aria-pressed=true]{color:#d1fae5;border-color:#059669;background:#064e3b}.locale-note{color:#a8a29e;font-size:.7rem;line-height:1.5;margin:.6rem 0 .3rem;max-width:48rem}.fact-value{white-space:normal}
.knowledge-switcher{position:sticky;top:0;background:#1c1917f5;padding:.7rem 0 .6rem;z-index:3;border-bottom:1px solid #44403c;margin-bottom:1rem;backdrop-filter:blur(8px)}
.level-buttons{display:flex;gap:.4rem;padding:.25rem;border:1px solid #44403c;background:#0c0a0966;border-radius:.9rem}.level-buttons button{flex:1;min-height:44px;border:1px solid transparent;border-radius:.65rem;background:transparent;color:#a8a29e;font:inherit;font-size:.85rem;font-weight:750;cursor:pointer;padding:.6rem .5rem}
.level-buttons button[aria-pressed=true]{background:#064e3b;border-color:#059669;color:#d1fae5;box-shadow:0 2px 5px #0003}.level-buttons button:hover{color:#f5f5f4}.knowledge-switcher p{font-size:.73rem;color:#a8a29e;margin:.55rem .35rem .15rem;line-height:1.5}
.knowledge-topics{display:grid;grid-template-columns:minmax(0,1fr);gap:.9rem}.knowledge-section{--accent:#6ee7b7;--border:#065f46;--surface:#022c224d;background:var(--surface);border:1px solid var(--border);border-radius:1rem;min-width:0;align-self:start;overflow:clip}
.tone-amber{--accent:#fcd34d;--border:#92400e;--surface:#451a033b}.tone-orange{--accent:#fdba74;--border:#9a3412;--surface:#4314073b}.tone-rose{--accent:#fda4af;--border:#9f4552;--surface:#4c05192a}.tone-teal{--accent:#5eead4;--border:#115e59;--surface:#042f2e70}.tone-blue{--accent:#7dd3fc;--border:#075985;--surface:#082f493b}.tone-violet{--accent:#d8b4fe;--border:#6b21a8;--surface:#3b076438}
.knowledge-section>summary{list-style:none;display:flex;align-items:center;gap:.65rem;padding:.85rem 1rem;cursor:pointer;min-height:62px;color:var(--accent)}
.knowledge-section>summary::-webkit-details-marker,.knowledge-sources>summary::-webkit-details-marker{display:none}.knowledge-section h2{font-size:1rem;font-weight:800;line-height:1.4;margin:0;flex:1}.section-art{width:44px;flex:0 0 44px;display:grid;place-items:center}.section-art .species-tag-icon{width:32px;height:32px}.section-chevron{font-size:1.25rem;transition:transform .15s}.knowledge-section[open] .section-chevron{transform:rotate(180deg)}
.section-content{padding:0 1rem .5rem}.fact-list{margin:0}.fact-row{display:grid;grid-template-columns:110px minmax(0,1fr);gap:.65rem;padding:.65rem 0;border-top:1px solid #ffffff0d;font-size:.81rem;line-height:1.65}
.fact-value[data-location-prompt="true"]{color:#d09590}
.fact-row dt{margin:0;color:var(--accent);font-weight:700}.fact-row dd{margin:0;color:#e7e5e4;min-width:0}.fact-row dd p{margin:0}.fact-row dd p+p{margin-top:.4rem}.scope-note,.source-label{display:block;font-size:.71rem;color:#a8a29e;line-height:1.55;margin-top:.4rem!important}.source-label{overflow-wrap:anywhere}
.knowledge-text{font-size:.85rem;line-height:1.75;color:#e7e5e4;margin:0 0 1rem}.knowledge-text p{margin:.5rem 0}.knowledge-text h3{font-size:.88rem;line-height:1.5;font-weight:750;color:var(--accent);margin:0 0 .3rem}.knowledge-text ul,.knowledge-text ol{padding-left:1.3rem}.knowledge-text em{font-style:italic}
.knowledge-text.species-lookalike-warning{border:1px solid #f8717166;border-radius:.8rem;background:#7f1d1d16;padding:.8rem .9rem}.knowledge-text.species-lookalike-warning h3{color:#fca5a5}
.comparison-links{display:flex;align-items:center;gap:.5rem;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--border) transparent;padding:.35rem .3rem .6rem;-webkit-overflow-scrolling:touch}
.comparison-link-group{display:contents}
.comparison-link{display:inline-flex;align-items:center;flex:0 0 auto;min-height:44px;padding:.5rem .75rem;border:1px solid var(--border);border-radius:.65rem;background:#ffffff04;color:var(--accent);font-size:.8rem;font-weight:650;line-height:1.3;text-decoration:none;white-space:nowrap;scroll-snap-align:start;transition:background .15s}
.comparison-link:hover{background:#ffffff0d}.comparison-link:focus-visible{outline-offset:2px}
.comparison-mini-card{display:grid;grid-template-columns:220px minmax(0,1fr);gap:1.1rem;padding:1rem 0;border-bottom:1px solid var(--border);align-items:start;}
.comparison-mini-card:last-child{border-bottom:0;}
.comparison-mini-card[hidden]{display:none;}
.comparison-mini-card.comparison-mini-card--text{grid-template-columns:minmax(0,1fr);}
.comparison-mini-copy{min-width:0;overflow-wrap:anywhere;}
.comparison-controls{display:flex;justify-content:center;align-items:center;gap:1rem;padding:.5rem 0;}
.comparison-controls button{min-width:44px;min-height:44px;font-size:1.7rem;color:var(--accent);border:1px solid var(--border);border-radius:.6rem;background:#ffffff04;cursor:pointer;}
.compare-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.5rem 1rem;margin-top:.75rem;border:1px solid var(--border,#397d66);border-radius:.6rem;color:var(--accent,#6ee7b7);background:#6ee7b70b;font-size:.86rem;font-weight:700;text-decoration:none;}
.compare-button:disabled{opacity:.4;cursor:default;}
.faq-entry{padding:.9rem 0;border-bottom:1px solid var(--border);}
.faq-entry:last-child{border-bottom:0;}
.faq-entry h3{margin:0 0 .4rem;font-size:.9rem;line-height:1.5;font-weight:750;color:var(--accent);}
.faq-entry p{margin:0;font-size:.86rem;line-height:1.7;}
.faq-article-link{display:inline-block;margin-top:.45rem;font-size:.8rem;color:var(--accent);}
.comparison-mini-card figure{margin:0;min-width:0;}
.comparison-mini-card figure>a{display:block;}
.comparison-mini-card img{display:block;width:100%;height:180px;object-fit:contain;background:#111916;border-radius:.6rem;}
.comparison-mini-card figcaption{font-size:.69rem;line-height:1.45;color:#aeb9b1;margin-top:.45rem;overflow-wrap:anywhere;}
.comparison-mini-card figcaption summary{cursor:pointer;}
.comparison-mini-copy h3{margin:0 0 .35rem;font-size:1.04rem;font-weight:750;line-height:1.4;}
.comparison-mini-copy h3 a{color:var(--accent);text-decoration:none;}
.comparison-mini-copy h4{font-size:.8rem;font-weight:700;margin:.75rem 0 .35rem;color:var(--accent);}
.comparison-scientific-name{font-size:.8rem;color:#aeb9b1;margin:0;}
.comparison-differences{font-size:.86rem;line-height:1.65;}
.comparison-differences p{margin:0 0 .5rem;}
@media(max-width:600px){.comparison-mini-card{grid-template-columns:110px minmax(0,1fr);gap:.7rem;}.comparison-mini-card img{height:120px;}.comparison-mini-copy h3{font-size:.9rem;}.comparison-differences{font-size:.8rem;}}
@media(max-width:380px){.comparison-mini-card{grid-template-columns:90px minmax(0,1fr);gap:.5rem;}}
@media(prefers-reduced-motion:reduce){.comparison-link{transition:none}}
.knowledge-sources{margin:1.5rem 0 0;padding:1rem 0 0;border-top:1px solid #44403c;color:#a8a29e}.knowledge-sources>summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;min-height:44px;list-style:none}.knowledge-sources h2{font-weight:750;font-size:1rem;margin:0;color:#e7e5e4}.knowledge-sources ol{list-style:decimal;padding-left:1.5rem;font-size:.78rem;line-height:1.65}.knowledge-sources li+li{margin-top:.6rem}.knowledge-sources a{overflow-wrap:anywhere}.knowledge-main>.species-page-footer{max-width:none;padding:0;margin:1rem .4rem}
.load-error{padding:2rem;color:#fecaca}.load-error a{display:block;margin-top:1rem}
.knowledge-sources li{scroll-margin-top:125px}
.section-art .di-icon{width:44px;height:34px;display:block}.section-art .knowledge-filled-symbol{width:30px;height:30px}
@media(min-width:850px){.knowledge-section .fact-row{grid-template-columns:160px minmax(0,1fr)}}
@media(max-width:520px){.knowledge-main{padding:0 .6rem}.knowledge-card{padding:1rem .8rem;border-radius:1.2rem}.knowledge-hero{gap:.85rem}.hero-photo{flex-basis:100px}.hero-photo img{width:100px;height:112px}.knowledge-hero h1{font-size:1.4rem}.latin-name{font-size:.87rem}.photo-credit{margin-bottom:.65rem}.preview-bar{padding:.65rem .8rem;font-size:.68rem}.badge-popover{left:auto;right:0;min-width:215px}.badge-detail:first-child .badge-popover{right:-50px}.section-content{padding:0 .75rem .4rem}.knowledge-section>summary{padding:.7rem .75rem;gap:.5rem}.fact-row{grid-template-columns:85px minmax(0,1fr);gap:.55rem;font-size:.8rem}.knowledge-switcher p{min-height:2.25em}.knowledge-text{font-size:.82rem}.knowledge-section h2{font-size:.95rem}.level-buttons button{font-size:.8rem}.knowledge-text.species-lookalike-warning{padding:.65rem}}
@media(prefers-reduced-motion:reduce){.section-chevron{transition:none}}
@media(max-width:520px){.knowledge-hero{flex-wrap:wrap;gap:.7rem}.hero-copy{flex:1 1 100%}.knowledge-hero h1{font-size:1.5rem}.latin-name{font-size:.875rem}.card-badges{position:relative;flex:1 1 100%;max-width:none}.badge-detail{position:static}.badge-popover,.badge-detail:first-child .badge-popover{left:0;right:0;top:calc(100% + 6px);min-width:0;max-width:none}}
.knowledge-panel{min-width:0}.research-evidence{display:inline-flex;flex-wrap:wrap;gap:.2rem;margin-left:.4rem;vertical-align:baseline;color:#6ee7b7;font-size:.75rem}.research-evidence a{display:inline-flex;align-items:center;min-height:24px;padding:0 .15rem;text-decoration:underline;text-underline-offset:3px}.research-evidence a:hover{color:#d1fae5}
.badge-detail[hidden], .knowledge-sources [hidden], .fact-row [hidden], .legal-jurisdiction[hidden] { display: none !important; }
.legal-jurisdiction { color: #b6ccc1; font-size: .85rem; margin: 0 0 .7rem; }
.legal-article p { margin: 1rem 0; line-height: 1.7; }
.naming-group { margin: 0 0 1.25rem; }
.naming-group + .naming-group { padding-top: .75rem; border-top: 1px solid rgba(168,162,158,.2); }
.naming-group h3 { margin: 0 0 .6rem; font-size: 1.05rem; }
.naming-group h4 { margin: .5rem 0 .25rem; color: #b8b0a6; font-size: .85rem; font-weight: 600; }
.name-origin { color: #b8b0a6; }
.naming-latin { margin: .25rem 0 .75rem; }
.home-experiment + .home-experiment { margin-top: 1.25rem; padding-top: 1.25rem; border-top: 1px solid rgb(255 255 255 / .1); }
.home-experiment h3 { margin: 0 0 .75rem; color: #5eead4; font-size: 1.05rem; }
.home-experiment h4 { margin: 1rem 0 .25rem; color: #a7f3d0; font-size: .9rem; }
.home-instructions, .home-results { margin: 0; }
.home-instructions > div, .home-result { display: grid; grid-template-columns: minmax(7rem, 23%) minmax(0, 1fr); gap: .75rem; padding: .55rem 0; }
.home-instructions dt, .home-result dt { font-weight: 600; color: #99f6e4; }
.home-instructions dd, .home-result dd { margin: 0; overflow-wrap: anywhere; }
.home-instructions ol { margin: 0; padding-left: 1.15rem; }
.home-instructions li + li { margin-top: .3rem; }
.home-result + .home-result { border-top: 1px solid rgb(255 255 255 / .06); }
.home-measurement-note { margin: .5rem 0 0; color: #c6c2ba; font-size: .85rem; }
.fact-value .fact-condition { font-weight: 700; }
.source-package pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.65;color:#d6d3d1}
.source-package section+section{border-top:1px solid #78716c;margin-top:1rem;padding-top:1rem}
.section-content > h3,
.section-content [data-lab-content] > h3,
.section-content [data-display-group] > h3 {
  margin: 1rem 0 .7rem;
  color: var(--accent, #99f6e4);
  font-size: 1.05rem;
  line-height: 1.4;
  font-weight: 800;
}
.section-content [data-lab-group] > h4 {
  margin: 0 0 .6rem;
  color: #f5f5f4;
  font-size: .95rem;
  line-height: 1.45;
  font-weight: 750;
}
.section-content [data-lab-group] + [data-lab-group],
.section-content [data-lab-content] + [data-lab-content],
.section-content [data-display-group] + [data-display-group] {
  margin-top: 1.1rem;
  padding-top: 1.1rem;
  border-top: 1px solid #78716c;
}
.card-location-notice { margin: 0 0 1rem; padding: .7rem 1rem; color: #d09590; font-size: .9rem; line-height: 1.5; }
.knowledge-main [hidden] { display: none !important; }
@media (max-width: 480px) { .home-instructions > div, .home-result { grid-template-columns: 1fr; gap: .25rem; } }
.species-gallery{margin:1.2rem 0 1.5rem;max-width:100%;}
.gallery-stage{background:#111916;border:1px solid #3a4540;border-radius:12px;overflow:hidden;}
.gallery-stage figure{margin:0;}
.gallery-stage figure[hidden]{display:none;}
.gallery-stage img{display:block;width:100%;height:clamp(260px,40vw,480px);object-fit:contain;}
.gallery-stage figcaption{padding:.7rem 1rem;display:flex;flex-direction:column;gap:.25rem;font-size:.95rem;}
.gallery-credit{font-size:.8rem;color:#b5bbb6;}
.gallery-controls{display:flex;align-items:center;justify-content:center;gap:1rem;margin:.5rem 0;}
.gallery-controls button{font-size:1.7rem;min-width:44px;min-height:44px;}
.gallery-thumbnails{display:flex;gap:.45rem;overflow-x:auto;padding:.25rem 0 .5rem;}
.gallery-thumbnails button{flex:0 0 88px;border:2px solid transparent;border-radius:6px;padding:0;overflow:hidden;background:#141a16;}
.gallery-thumbnails button[aria-pressed="true"]{border-color:#55e9cf;}
.gallery-thumbnails img{display:block;width:88px;height:66px;object-fit:cover;}
.species-intro{font-size:1.06rem;line-height:1.75;margin:1rem 0 1.5rem;max-width:80ch;}
