@layer reset{*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body,h1,h2,h3,p,ul,ol,figure{margin:0}ul,ol{padding:0}img,svg{max-width:100%;display:block}button,input,textarea,select{font:inherit}}@layer base{:root{color:var(--ink);background:var(--paper);font-family:var(--ui);font-synthesis:none}body{min-width:20rem;color:var(--ink);background:var(--paper);font-size:calc(1rem + 4px);line-height:1.6}a{color:var(--leaf-deep);-webkit-text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-underline-offset:.18em}a:hover{color:var(--leaf)}h1,h2,h3{color:var(--ink);font-family:var(--display);text-wrap:balance;font-weight:650;line-height:1.08}h1{letter-spacing:-.045em;font-size:calc(clamp(2.25rem,5.2vw,4.25rem) + 4px)}h2{letter-spacing:-.03em;font-size:calc(clamp(1.75rem,3vw,2.65rem) + 4px)}h3{letter-spacing:-.02em;font-size:calc(clamp(1.25rem,2vw,1.6rem) + 4px)}:focus-visible{outline:3px solid var(--bloom);outline-offset:3px}}@layer components{.skip-link{z-index:10;border-radius:var(--radius-sm);color:#fff;background:var(--leaf-deep);padding:.65rem .9rem;font-weight:700;position:fixed;top:.75rem;left:.75rem;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:5;border-bottom:1px solid color-mix(in srgb, var(--edge) 80%, transparent);background:color-mix(in srgb, var(--paper) 92%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:sticky;top:0}.site-header__inner,.site-footer__inner,.page-shell{width:min(var(--content-wide), calc(100% - 2rem));margin-inline:auto}.site-header__inner{justify-content:space-between;align-items:center;gap:1rem;min-height:4rem;display:flex}.brand{white-space:nowrap;align-items:center;text-decoration:none;display:inline-flex}.brand__wordmark{object-fit:contain;width:clamp(10.75rem,18vw,13.5rem);height:auto}.site-nav{align-items:center;gap:clamp(.65rem,1.5vw,1.25rem);display:flex}.site-nav a{color:var(--ink-soft);font-size:calc(.9rem + 4px);font-weight:700;text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--leaf-deep)}.mobile-nav{display:none}.page-shell{padding-block:clamp(2rem,5vw,4.75rem) 4rem}.site-footer{border-top:1px solid var(--edge);background:var(--paper-sunken)}.site-footer__inner{color:var(--ink-soft);justify-content:space-between;align-items:center;gap:1rem;padding-block:1.5rem;font-size:calc(.875rem + 4px);display:flex}.site-footer nav{flex-wrap:wrap;gap:.9rem;display:flex}.site-footer a{color:inherit}.hero{align-items:center;gap:clamp(2rem,5vw,5rem);display:grid}.hero__copy{max-width:38rem}.hero__copy h1{margin-top:0}.hero__lead{max-width:34rem;color:var(--ink-soft);margin-top:1.25rem;font-size:calc(clamp(1.05rem,1.8vw,1.25rem) + 4px)}.trust-points{gap:.55rem;margin-top:1.5rem;list-style:none;display:grid}.trust-points li{color:var(--ink-soft);align-items:flex-start;gap:.55rem;display:flex}.trust-points li:before{border:1px solid color-mix(in srgb, var(--leaf) 55%, var(--edge));background:var(--leaf-wash);content:"";border-radius:50%;flex:none;width:1.15rem;height:1.15rem;margin-top:.2rem}.hero__links{flex-wrap:wrap;gap:.75rem 1rem;margin-top:1.5rem;display:flex}.hero__links a{font-weight:750}.identifier-card{border:1px solid var(--edge);border-radius:var(--radius-xl);background:var(--paper-raised);min-width:0;box-shadow:var(--shadow-raised);padding:clamp(1rem,2vw,1.45rem)}.identifier-card--compact{border-radius:var(--radius-lg);padding:1rem}.identifier-card__topline{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.identifier-card__topline h2{font-size:calc(1.3rem + 4px)}.identifier-card__status{color:var(--ink-soft);font-size:calc(.8rem + 4px);font-weight:750}.dropzone{border:1.5px dashed color-mix(in srgb, var(--leaf) 45%, var(--edge));border-radius:var(--radius-lg);min-height:12rem;color:var(--ink-soft);background:linear-gradient(135deg, var(--leaf-wash), color-mix(in srgb, var(--paper-sunken) 72%, var(--leaf-wash)));cursor:pointer;text-align:center;place-items:center;padding:1.25rem;display:grid}.dropzone:hover,.dropzone:focus-within{border-color:var(--leaf)}.dropzone--selected{border-style:solid;border-color:color-mix(in srgb, var(--leaf) 45%, var(--edge));background:var(--paper-sunken);text-align:left;place-items:stretch stretch;min-height:4.75rem;padding:.7rem .8rem}.dropzone__glyph{width:2.75rem;height:2.75rem;color:var(--leaf);background:var(--paper-raised);box-shadow:var(--shadow-card);border-radius:.85rem;margin-inline:auto;padding:.65rem}.dropzone strong,.dropzone span{display:block}.dropzone strong{color:var(--ink);margin-top:.7rem;font-size:calc(1.02rem + 4px)}.dropzone span{margin-top:.2rem;font-size:calc(.875rem + 4px)}.dropzone__selected-content{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7rem;width:100%;margin:0!important;display:grid!important}.dropzone__selected-icon{color:#fff;background:var(--leaf);border-radius:50%;place-items:center;width:2.15rem;height:2.15rem;font-weight:850;margin:0!important;font-size:1rem!important;display:grid!important}.dropzone__selected-copy{min-width:0;margin:0!important;display:block!important}.dropzone__selected-copy strong{margin-top:0;font-size:calc(.91rem + 4px)}.dropzone__selected-copy span{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;margin-top:.1rem;font-size:calc(.76rem + 4px);overflow:hidden}.dropzone__change{border:1px solid var(--edge);border-radius:var(--radius-sm);width:fit-content;min-height:2rem;color:var(--leaf-deep);background:var(--paper-raised);align-items:center;padding:.35rem .55rem;font-weight:800;margin:0!important;font-size:calc(.74rem + 4px)!important;display:inline-flex!important}.identifier-actions{grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.85rem;display:grid}.button{border-radius:var(--radius-md);color:#fff;background:var(--leaf);cursor:pointer;text-align:center;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;min-height:3rem;padding:.7rem 1rem;font-weight:800;text-decoration:none;display:inline-flex}.button:hover{color:#fff;background:var(--leaf-deep)}.button--quiet{border-color:var(--edge);color:var(--leaf-deep);background:var(--paper-raised)}.button--quiet:hover{color:var(--leaf-deep);border-color:color-mix(in srgb, var(--leaf) 50%, var(--edge));background:var(--leaf-wash)}.button:disabled,.button[aria-disabled=true],.dropzone[aria-disabled=true]{cursor:not-allowed;opacity:.52}.loading-spinner{border:.16em solid color-mix(in srgb, currentColor 32%, transparent);border-top-color:currentColor;border-radius:50%;flex:none;width:1em;height:1em;animation:.8s linear infinite identifier-spin}.loading-spinner--leaf{color:var(--leaf)}.angle-rail{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;margin:0;list-style:none;display:grid}.staged-files{grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;margin-top:1rem;list-style:none;display:grid}.angle-rail li,.staged-files li{border:1px solid var(--edge);border-radius:var(--radius-sm);min-width:0;color:var(--ink-soft);background:var(--paper-sunken);padding:.55rem .45rem;font-size:calc(.72rem + 4px);line-height:1.25}.angle-rail strong,.staged-files strong{color:var(--ink);overflow-wrap:anywhere;font-size:calc(.76rem + 4px);display:block}.angle-rail small{margin-top:.25rem;display:block}.angle-rail li[data-selected]{border-color:color-mix(in srgb, var(--leaf) 45%, var(--edge));background:var(--leaf-wash)}.angle-rail__filename{color:var(--leaf-deep);text-overflow:ellipsis;white-space:nowrap;margin-top:.28rem;font-size:calc(.67rem + 4px);font-weight:700;display:block;overflow:hidden}.angle-rail button{width:100%;color:var(--alert);cursor:pointer;text-align:left;background:0 0;border:0;margin-top:.3rem;padding:0;font-size:calc(.67rem + 4px);display:block}.supporting-views{border:1px solid var(--edge);border-radius:var(--radius-md);background:var(--paper-sunken);margin-top:.8rem}.supporting-views summary{min-height:3rem;color:var(--leaf-deep);cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .8rem;font-size:calc(.81rem + 4px);font-weight:800;list-style:none;display:flex}.supporting-views summary::-webkit-details-marker{display:none}.supporting-views summary:after{color:var(--leaf);content:"+";flex:none;font-size:1.35em;line-height:1}.supporting-views[open] summary{border-bottom:1px solid var(--edge)}.supporting-views[open] summary:after{content:"−"}.supporting-views__body{gap:.75rem;padding:.85rem;display:grid}.supporting-views__body>p{color:var(--ink-soft);margin:0;font-size:calc(.78rem + 4px);line-height:1.45}.supporting-views__add{border:1px solid color-mix(in srgb, var(--leaf) 45%, var(--edge));border-radius:var(--radius-sm);width:fit-content;min-height:2.65rem;color:var(--leaf-deep);background:var(--paper-raised);cursor:pointer;align-items:center;gap:.45rem;padding:.55rem .7rem;font-size:calc(.78rem + 4px);font-weight:800;display:inline-flex}.supporting-views__add>span{font-size:1.3em;line-height:1}.supporting-views__add:hover{background:var(--leaf-wash)}.supporting-views__add[aria-disabled=true]{cursor:not-allowed;opacity:.52}.identifier-note,.identifier-message{color:var(--ink-soft);margin-top:.75rem;font-size:calc(.8rem + 4px)}.identifier-card--compact .dropzone:not(.dropzone--selected){min-height:8.25rem;padding:.85rem}.identifier-card--compact .dropzone__glyph{width:2.25rem;height:2.25rem;padding:.5rem}.identifier-card--compact .dropzone:not(.dropzone--selected) strong{margin-top:.45rem;font-size:calc(.88rem + 4px)}.identifier-card--compact .dropzone:not(.dropzone--selected) span{font-size:calc(.74rem + 4px)}.identifier-card--compact .dropzone__selected-content{font-size:inherit}.identifier-card--compact .identifier-actions{margin-top:.65rem}.identifier-message[data-state=error]{border-radius:var(--radius-sm);color:var(--alert);background:var(--alert-wash);padding:.7rem .8rem}.analysis-progress{border:1px solid color-mix(in srgb, var(--leaf) 45%, var(--edge));border-radius:var(--radius-md);color:var(--ink-soft);background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--leaf-wash) 85%, transparent), transparent 13rem), var(--paper-sunken);gap:.8rem;margin-top:1rem;padding:1rem;display:grid}.analysis-progress--compact{padding:.75rem .8rem}.analysis-progress__compact-row{align-items:center;gap:.65rem;display:flex}.analysis-progress__compact-row>p{gap:.1rem;min-width:0;margin:0;display:grid}.analysis-progress__compact-row strong{color:var(--ink);font-size:calc(.82rem + 4px)}.analysis-progress__compact-row p>span{color:var(--ink-soft);font-size:calc(.71rem + 4px)}.analysis-progress__topline,.analysis-progress__footer,.analysis-progress__live,.analysis-progress__steps li,.contact-form__progress{align-items:center;display:flex}.analysis-progress__topline,.analysis-progress__footer{justify-content:space-between;gap:.75rem}.analysis-progress__eyebrow{color:var(--leaf-deep);letter-spacing:.06em;text-transform:uppercase;font-size:calc(.74rem + 4px);font-weight:850}.analysis-progress__active{color:var(--ink);margin-top:.1rem;font-size:calc(1rem + 4px);font-weight:850}.analysis-progress__live{color:var(--amber);white-space:nowrap;flex:none;gap:.35rem;font-size:calc(.75rem + 4px);font-weight:800}.analysis-progress__live>span{width:.58rem;height:.58rem;box-shadow:0 0 0 0 color-mix(in srgb, currentColor 45%, transparent);background:currentColor;border-radius:50%;animation:1.7s ease-out infinite identifier-pulse}.analysis-progress__live[data-live]{color:var(--leaf)}.analysis-progress__detail{max-width:66ch;color:var(--ink-soft);margin:0;font-size:calc(.84rem + 4px);line-height:1.45}.analysis-progress__steps{grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.analysis-progress__steps li{border:1px solid var(--edge);border-radius:var(--radius-sm);min-width:0;color:var(--ink-faint);background:var(--paper-raised);gap:.45rem;padding:.42rem .5rem;font-size:calc(.75rem + 4px);font-weight:750;line-height:1.25}.analysis-progress__steps li>span{border:1px solid;border-radius:50%;flex:none;place-items:center;width:1.35rem;height:1.35rem;font-size:.75em;display:inline-grid}.analysis-progress__steps li[data-state=active]{border-color:var(--leaf);color:var(--leaf-deep);background:var(--leaf-wash)}.analysis-progress__steps li[data-state=active]>span{color:#fff;background:var(--leaf);animation:1.7s ease-out infinite identifier-pulse}.analysis-progress__steps li[data-state=complete]{border-color:color-mix(in srgb, var(--leaf) 45%, var(--edge));color:var(--leaf-deep)}.analysis-progress__steps li[data-state=complete]>span{color:#fff;background:var(--leaf)}.analysis-progress__footer{border-top:1px solid color-mix(in srgb, var(--edge) 78%, transparent);color:var(--ink-soft);flex-wrap:wrap;padding-top:.15rem;font-size:calc(.73rem + 4px)}.analysis-progress__footer span:last-child{max-width:52ch}.identifier-result{border:1px solid color-mix(in srgb, var(--leaf) 42%, var(--edge));border-radius:var(--radius-lg);color:var(--ink-soft);background:var(--paper-sunken);gap:.75rem;margin-top:1.25rem;padding:clamp(.9rem,2vw,1.25rem);display:grid}.identifier-result--compact{gap:.65rem;margin-top:.9rem;padding:.85rem}.identifier-result__summary{gap:.5rem;display:grid}.identifier-result h3{font-size:calc(1.35rem + 4px)}.identifier-result__label{color:var(--leaf-deep);font-size:calc(.82rem + 4px);font-weight:800}.identifier-result__guide-link{border:1px solid color-mix(in srgb, var(--leaf) 44%, var(--edge));width:fit-content;color:var(--leaf-deep);background:var(--paper-raised);border-radius:999px;margin-top:.2rem;padding:.45rem .65rem;font-size:calc(.78rem + 4px);font-weight:800;text-decoration:none}.identifier-result__guide-link:hover{color:var(--leaf-deep);background:var(--leaf-wash)}.button--report{flex-direction:column;gap:.1rem;width:100%;min-height:3.6rem}.button--report span{color:#ffffffc7;font-size:calc(.7rem + 4px);font-weight:700}.identifier-result h4{color:var(--ink);font-size:calc(1rem + 4px)}.identifier-candidates,.identifier-result__warnings{gap:.65rem;margin:.8rem 0 0;padding-left:1.2rem;display:grid}.identifier-candidates li,.identifier-result__warnings li{padding-left:.2rem}.identifier-candidates p+p{margin-top:.35rem;font-size:calc(.87rem + 4px)}.identifier-candidates__name{color:var(--ink);font-weight:800}.identifier-candidates__name em{color:var(--ink-soft);margin-top:.1rem;font-weight:500;display:block}.identifier-result__next{border-left:4px solid var(--bloom);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--bloom-wash);gap:.25rem;padding:.85rem .9rem;display:grid}.identifier-result__next p+p{color:var(--ink-soft);margin-top:.3rem;font-size:calc(.87rem + 4px)}.identifier-result__warnings{color:var(--alert);font-size:calc(.87rem + 4px)}.analysis-report{border:1px solid color-mix(in srgb, var(--leaf) 36%, var(--edge));border-radius:var(--radius-xl);width:min(100% - 2rem,62rem);max-width:none;max-height:min(54rem,100dvh - 3rem);color:var(--ink-soft);background:var(--paper-raised);margin:auto;padding:0;overflow:hidden;box-shadow:0 2rem 6rem #1c211852}.analysis-report::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1c211885}.analysis-report__panel{grid-template-rows:auto minmax(0,1fr);max-height:min(54rem,100dvh - 3rem);display:grid}.analysis-report__header{border-bottom:1px solid var(--edge);background:var(--paper-raised);justify-content:space-between;align-items:flex-start;gap:1rem;padding:clamp(1rem,3vw,1.5rem);display:flex}.analysis-report__header p{color:var(--leaf-deep);letter-spacing:.05em;text-transform:uppercase;font-size:calc(.78rem + 4px);font-weight:850}.analysis-report__header h2{margin-top:.25rem;font-size:calc(clamp(1.5rem,3vw,2.45rem) + 4px)}.analysis-report__close{border:1px solid var(--edge);width:2.8rem;height:2.8rem;color:var(--leaf-deep);background:var(--paper-sunken);cursor:pointer;border-radius:50%;flex:none;place-items:center;padding:0;font-size:1.75rem;line-height:1;display:grid}.analysis-report__close:hover{background:var(--leaf-wash)}.analysis-report__body{overscroll-behavior:contain;gap:1.25rem;padding:clamp(1rem,3vw,1.5rem);display:grid;overflow-y:auto}.analysis-report__section{gap:.75rem;display:grid}.analysis-report__section>h3,.identifier-result__next h3{color:var(--ink);font-size:calc(1.15rem + 4px)}.analysis-report__section--warning{border:1px solid color-mix(in srgb, var(--alert) 42%, var(--edge));border-radius:var(--radius-md);background:var(--alert-wash);padding:1rem}.camera-capture{border:1px solid var(--edge);border-radius:var(--radius-xl);background:var(--paper-raised);width:min(100% - 2rem,36rem);max-width:none;max-height:min(48rem,100dvh - 3rem);margin:auto;padding:0;overflow:hidden;box-shadow:0 2rem 6rem #1c211852}.camera-capture::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1c211894}.camera-capture__panel{grid-template-rows:auto auto auto auto;max-height:min(48rem,100dvh - 3rem);display:grid}.camera-capture__header{border-bottom:1px solid var(--edge);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.1rem;display:flex}.camera-capture__header p{color:var(--leaf-deep);letter-spacing:.05em;text-transform:uppercase;font-size:calc(.76rem + 4px);font-weight:850}.camera-capture__header h2{margin-top:.25rem;font-size:calc(1.35rem + 4px)}.camera-capture__stage{background:#182019;place-items:center;min-height:17rem;display:grid;position:relative;overflow:hidden}.camera-capture__stage video{object-fit:cover;width:100%;height:100%;min-height:17rem;display:block}.camera-capture__message{border-radius:var(--radius-sm);color:#fff;text-align:center;background:#0a100bc7;margin:0;padding:.7rem .8rem;font-size:calc(.82rem + 4px);line-height:1.4;position:absolute;inset:auto 1rem 1rem}.camera-capture__message--error{color:#fff7f4;background:color-mix(in srgb, var(--alert) 82%, #171b16)}.camera-capture__controls{grid-template-columns:1fr 1fr;gap:.7rem;padding:1rem 1.1rem .7rem;display:grid}.camera-capture__controls .button{min-width:0;font-size:calc(.82rem + 4px)}.camera-capture__hint{color:var(--ink-soft);margin:0;padding:0 1.1rem 1rem;font-size:calc(.76rem + 4px);line-height:1.4}.identifier-evidence-list{gap:0;margin:0;padding:0;display:grid}.identifier-evidence-list>div{border-bottom:1px solid var(--edge);grid-template-columns:minmax(7.5rem,.9fr) minmax(0,2fr) auto;gap:.55rem .8rem;padding:.75rem .8rem;font-size:calc(.82rem + 4px);display:grid}.identifier-evidence-list>div:last-child{border-bottom:0}.identifier-evidence-list dt{color:var(--ink);text-transform:capitalize;font-weight:800}.identifier-evidence-list dd{margin:0}.identifier-evidence-list__certainty{color:var(--leaf-deep);text-align:right;font-size:.88em;font-weight:750}.section{margin-top:clamp(4.5rem,9vw,8rem)}.section__intro{gap:1rem;max-width:48rem;margin-bottom:1.75rem;display:grid}.section__intro p{color:var(--ink-soft);font-size:calc(1.05rem + 4px)}.process-grid,.route-grid{gap:1rem;list-style:none;display:grid}.process-card,.route-card{border:1px solid var(--edge);border-radius:var(--radius-lg);background:var(--paper-raised);box-shadow:var(--shadow-card);padding:1.25rem}.process-card__number{width:2rem;height:2rem;color:var(--leaf-deep);background:var(--leaf-wash);border-radius:50%;place-items:center;font-size:calc(.82rem + 4px);font-weight:850;display:grid}.process-card h3,.route-card h3{margin-top:1rem}.process-card p,.route-card p{color:var(--ink-soft);margin-top:.55rem}.route-card:hover{border-color:color-mix(in srgb, var(--leaf) 45%, var(--edge));transition:transform .16s,border-color .16s;transform:translateY(-2px)}.route-card h3 a,.species-card h3 a{color:var(--leaf-deep);text-decoration-thickness:.1em}.route-card__label{color:var(--leaf-deep);letter-spacing:.08em;text-transform:uppercase;font-size:calc(.75rem + 4px);font-weight:850}.guide-section{border:1px solid var(--edge);border-radius:var(--radius-xl);background:var(--paper-raised);align-items:center;gap:1.25rem;padding:clamp(1.25rem,3vw,2rem);display:grid}.guide-figure{border-radius:var(--radius-lg);background:var(--paper-sunken);overflow:hidden}.guide-figure img{width:100%;height:auto}.species-illustration{max-width:45rem;margin:2rem 0}.species-illustration img{border-radius:.75rem;width:100%;height:auto;display:block}.species-illustration figcaption{color:#526157;margin-top:.5rem;font-size:calc(.875rem + 4px)}.guide-figure figcaption{color:var(--ink-soft);padding:.8rem 1rem;font-size:calc(.82rem + 4px)}.evidence-table{border-collapse:collapse;border:1px solid var(--edge);border-radius:var(--radius-lg);background:var(--paper-raised);width:100%;overflow:hidden}.evidence-table caption{color:var(--ink-soft);text-align:left;padding:1rem}.evidence-table th,.evidence-table td{border-top:1px solid var(--edge);text-align:left;vertical-align:top;padding:.85rem 1rem}.evidence-table th{width:28%;color:var(--ink);background:var(--paper-sunken);font-size:calc(.88rem + 4px)}.safety-callout{border-left:4px solid var(--alert);border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--ink);background:var(--alert-wash);padding:1rem 1.1rem}.safety-links{color:var(--ink-soft);margin-top:1rem}.safety-callout strong{margin-bottom:.25rem;display:block}.faq-list{gap:.7rem;max-width:52rem;display:grid}.faq-list details{border:1px solid var(--edge);border-radius:var(--radius-md);background:var(--paper-raised);padding:.9rem 1rem}.faq-list summary{color:var(--ink);cursor:pointer;font-family:var(--display);font-weight:700}.faq-list p{max-width:70ch;color:var(--ink-soft);margin-top:.75rem}.breadcrumb{color:var(--ink-faint);flex-wrap:wrap;gap:.45rem;margin-bottom:1.5rem;font-size:calc(.84rem + 4px);display:flex}.breadcrumb a{color:var(--leaf-deep);font-weight:750}.content-article{width:min(100%, var(--content));margin-inline:auto}.article-heading h1{margin-bottom:1.2rem}.article-prose{color:var(--ink-soft)}.article-prose>*+*{margin-top:1.05rem}.article-prose h1,.article-prose h2,.article-prose h3{color:var(--ink);scroll-margin-top:5.5rem}.article-prose h1{margin-bottom:1.2rem}.article-prose h2{margin-top:clamp(3rem,7vw,5rem)}.article-prose h3{margin-top:2rem}.article-prose p,.article-prose li{max-width:72ch}.article-prose ul,.article-prose ol{gap:.65rem;padding-left:1.3rem;display:grid}.article-prose .key-takeaways{border:1px solid color-mix(in srgb, var(--leaf) 42%, var(--edge));border-radius:var(--radius-lg);background:color-mix(in srgb, var(--leaf) 5%, var(--paper-raised));margin-top:clamp(2rem,5vw,3rem);padding:clamp(1.25rem,3vw,1.65rem);box-shadow:0 12px 30px #1e442b0f}.article-prose .key-takeaways h2{color:var(--leaf-dark);letter-spacing:.055em;text-transform:uppercase;margin:0;font-size:calc(clamp(1.15rem,2.5vw,1.35rem) + 4px)}.article-prose .key-takeaways ul{gap:.75rem;margin:1rem 0 0;padding-left:1.35rem;list-style:outside;display:grid}.article-prose .key-takeaways li{max-width:76ch;color:var(--ink);padding-left:.2rem;line-height:1.55}.article-prose .key-takeaways li::marker{color:var(--leaf);font-size:calc(1.15em + 4px)}.article-prose li::marker{color:var(--leaf);font-weight:800}.article-prose blockquote{border-left:3px solid var(--bloom);color:var(--ink);font-family:var(--display);padding:.25rem 0 .25rem 1rem;font-size:calc(1.2rem + 4px)}.article-prose table{border:1px solid var(--edge);border-radius:var(--radius-lg);border-spacing:0;background:var(--paper-raised);width:100%;display:block;overflow-x:auto}.article-prose th,.article-prose td{border-right:1px solid var(--edge);border-bottom:1px solid var(--edge);text-align:left;vertical-align:top;min-width:9rem;padding:.8rem .9rem}.article-prose th{color:var(--ink);background:var(--paper-sunken);font-size:calc(.88rem + 4px)}.article-prose tr:last-child td{border-bottom:0}.article-prose th:last-child,.article-prose td:last-child{border-right:0}.article-prose code{color:var(--ink);background:var(--paper-sunken);font-family:var(--mono);border-radius:.25rem;padding:.1em .3em;font-size:calc(.9em + 4px)}.article-prose a{font-weight:700}.page-summary{border:1px solid color-mix(in srgb, var(--leaf) 25%, var(--edge));border-radius:var(--radius-md);max-width:72ch;color:var(--ink);background:color-mix(in srgb, var(--leaf-wash) 62%, var(--paper-raised));padding:1rem 1.15rem;font-size:calc(1.04rem + 4px)}.comparison-key{border:1px solid color-mix(in srgb, var(--leaf) 40%, var(--edge));border-radius:var(--radius-xl);background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--bloom-wash) 84%, transparent), transparent 13rem), var(--paper-raised);box-shadow:var(--shadow-card);gap:.85rem;margin-block:1.75rem 2.25rem;padding:clamp(1.15rem,3vw,1.75rem);display:grid}.comparison-key h2{font-size:calc(clamp(1.45rem,2.4vw,2rem) + 4px)}.comparison-key>h2+p{max-width:66ch;color:var(--ink-soft)}.comparison-key fieldset,.article-prose fieldset{border:0;gap:.55rem;padding:0;display:grid}.comparison-key__option{border:1px solid var(--edge);border-radius:var(--radius-md);color:var(--ink);background:var(--paper-raised);cursor:pointer;align-items:flex-start;gap:.7rem;padding:.75rem .85rem;font-weight:700;line-height:1.4;display:flex}.comparison-key__option:has(input:checked){border-color:var(--leaf);background:var(--leaf-wash)}.comparison-key__option input{width:1.05rem;height:1.05rem;accent-color:var(--leaf);flex:none;margin-top:.2rem}.comparison-key__result{border-left:4px solid var(--bloom);border-radius:0 var(--radius-sm) var(--radius-sm) 0;min-height:3.4rem;color:var(--ink);background:var(--bloom-wash);padding:.8rem .9rem;font-weight:650}.safety-alert{border:1px solid color-mix(in srgb, var(--alert) 60%, var(--edge));border-left:.35rem solid var(--alert);border-radius:0 var(--radius-md) var(--radius-md) 0;max-width:72ch;color:var(--ink);background:var(--alert-wash);padding:1rem 1.1rem}.safety-alert strong{margin-bottom:.2rem;display:block}.article-prose .safety-filter,.article-prose .yellow-bloom-filters,.article-prose .species-filter{border:1px solid var(--edge);border-radius:var(--radius-lg);background:var(--paper-sunken);gap:1rem;max-width:72ch;padding:clamp(1rem,3vw,1.35rem);display:grid}.article-prose .safety-filter fieldset,.article-prose .yellow-bloom-filters fieldset{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr))}.article-prose .yellow-bloom-filters{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));align-items:end}.article-prose .yellow-bloom-filters fieldset{grid-template-columns:1fr}.article-prose .safety-filter legend,.article-prose .yellow-bloom-filters legend{color:var(--ink);font-family:var(--display);grid-column:1/-1;margin-bottom:.25rem;font-size:calc(1.1rem + 4px);font-weight:700}.article-prose .safety-filter label,.article-prose .yellow-bloom-filters label{color:var(--ink);align-items:flex-start;gap:.5rem;font-size:calc(.92rem + 4px);line-height:1.35;display:flex}.article-prose .safety-filter input,.article-prose .yellow-bloom-filters input{width:1rem;height:1rem;accent-color:var(--leaf);flex:none;margin-top:.15rem}.article-prose .yellow-bloom-filters button{border-radius:var(--radius-md);color:#fff;background:var(--leaf);cursor:pointer;border:0;align-self:end;min-height:2.75rem;padding:.6rem .9rem;font-weight:800}.article-prose .species-filter label{color:var(--ink);font-family:var(--display);font-size:calc(1.15rem + 4px);font-weight:700}.article-prose .species-filter input[type=search]{border:1px solid var(--edge);border-radius:var(--radius-md);width:100%;min-height:2.85rem;color:var(--ink);background:var(--paper-raised);padding:.65rem .8rem}.article-prose .safety-filter p,.article-prose .yellow-bloom-filters p,.article-prose .species-filter p,.filter-status{color:var(--ink-soft);font-size:calc(.84rem + 4px)}.filter-status{color:var(--leaf-deep);margin:0;font-weight:750}.contact-form{border:1px solid color-mix(in srgb, var(--leaf) 32%, var(--edge));border-radius:var(--radius-lg);background:var(--paper-sunken);gap:1rem;max-width:46rem;margin-block:1.1rem 2rem;padding:clamp(1rem,3vw,1.5rem);display:grid}.contact-form__field{gap:.35rem;display:grid}.contact-form__field label{color:var(--ink);font-weight:750}.contact-form__field input,.contact-form__field select,.contact-form__field textarea{border:1px solid var(--edge);border-radius:var(--radius-sm);width:100%;color:var(--ink);background:var(--paper-raised);padding:.7rem .8rem}.contact-form__field textarea{resize:vertical;min-height:10rem}.contact-form__field p,.contact-form__note{color:var(--ink-soft);margin:0;font-size:calc(.86rem + 4px);line-height:1.4}.contact-form__trap{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.contact-form__status{border-left:4px solid var(--leaf);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--ink);background:var(--leaf-wash);margin:0;padding:.75rem .85rem;font-weight:700}.contact-form__status[data-state=error]{border-color:var(--alert);background:var(--alert-wash)}.contact-form__progress{color:var(--leaf-deep);gap:.5rem;margin:0;font-size:calc(.86rem + 4px);font-weight:750}.candidate-grid,.species-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1rem;display:grid}.candidate-card,.species-card{border:1px solid var(--edge);border-radius:var(--radius-lg);min-width:0;color:var(--ink-soft);background:var(--paper-raised);box-shadow:var(--shadow-card);overflow:hidden}.candidate-card figure,.species-card figure{margin:0}.candidate-card img,.species-card img{aspect-ratio:9/7;object-fit:cover;background:var(--paper-sunken);width:100%}.visual-reference-note{border-inline-start:3px solid var(--bloom);border-radius:0 var(--radius-sm) var(--radius-sm) 0;max-width:78ch;color:var(--ink-soft);background:var(--paper-sunken);margin-block:1.25rem;padding:.85rem 1rem;font-size:calc(.9rem + 4px);line-height:1.5}.candidate-card figcaption{border-bottom:1px solid var(--edge);color:var(--ink-faint);background:var(--paper-sunken);padding:.65rem .8rem;font-size:calc(.73rem + 4px);line-height:1.35}.candidate-card h3,.candidate-card>p,.species-card h3,.species-card p{margin-inline:.9rem}.candidate-card h3,.species-card h3{margin-top:.95rem;font-size:calc(1.25rem + 4px)}.candidate-card>p,.species-card p{margin-top:.65rem;margin-bottom:.9rem;font-size:calc(.9rem + 4px);line-height:1.48}.candidate-card>p:last-child,.species-card p:last-child{margin-bottom:1rem}.species-card:hover{border-color:color-mix(in srgb, var(--leaf) 50%, var(--edge));transition:transform .16s,border-color .16s;transform:translateY(-2px)}.species-card p:first-of-type{color:var(--leaf-deep);font-size:calc(.84rem + 4px);font-weight:750}.resemblance-check{border:1px solid color-mix(in srgb, var(--bloom) 38%, var(--edge));border-radius:var(--radius-lg);background:var(--bloom-wash);gap:.8rem;max-width:72ch;padding:1.1rem;display:grid}.resemblance-check h3{font-size:calc(1.25rem + 4px)}.resemblance-check ul{margin:0}.alphabet-nav{flex-wrap:wrap;gap:.4rem;max-width:72ch;display:flex}.alphabet-nav a{border:1px solid var(--edge);border-radius:var(--radius-sm);width:2.1rem;height:2.1rem;color:var(--leaf-deep);background:var(--paper-raised);place-items:center;text-decoration:none;display:grid}.alphabet-nav a:hover{background:var(--leaf-wash)}.alphabet-sections{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.8rem;display:grid}.alphabet-sections section{border:1px solid var(--edge);border-radius:var(--radius-md);background:var(--paper-raised);min-width:0;padding:.85rem}.alphabet-sections h3{font-size:calc(1.15rem + 4px)}.alphabet-sections ul{margin-top:.5rem;padding-left:1.1rem;font-size:calc(.85rem + 4px)}.no-species{color:var(--ink-faint);margin-top:.45rem;font-size:calc(.84rem + 4px)}.anatomy-plate{border:1px solid var(--edge);max-width:100%}.anatomy-plate svg{background:var(--paper-raised);width:100%;height:auto;padding:.5rem}.anatomy-label text{fill:var(--ink);font-family:var(--ui);font-size:calc(1.1rem + 4px);font-weight:700}.anatomy-label a:focus text,.anatomy-label a:hover text{fill:var(--leaf-deep);text-decoration:underline}.anatomy-definitions tr:target{outline:3px solid var(--leaf);outline-offset:-3px;background:var(--leaf-wash)}.calendar-key{border-radius:var(--radius-md);color:var(--ink);background:var(--paper-sunken);padding:.8rem .9rem;font-size:calc(.9rem + 4px)}.calendar-key span,.bloom-calendar-grid .in-window{color:var(--leaf);font-weight:850}.bloom-calendar-grid th:not(:first-child):not(:nth-child(2)),.bloom-calendar-grid td:not(:first-child):not(:nth-child(2)){text-align:center;min-width:3.3rem}.article-identifier{margin-top:clamp(3.5rem,8vw,5.5rem)}.article-next-step{border:1px solid color-mix(in srgb, var(--leaf) 35%, var(--edge));border-radius:var(--radius-xl);background:linear-gradient(135deg, var(--leaf-wash), var(--paper-raised));gap:1rem;margin-top:clamp(3.5rem,8vw,5.5rem);padding:clamp(1.25rem,4vw,2.25rem);display:grid}.article-next-step>p{max-width:64ch;color:var(--ink-soft)}.article-next-step .button{width:fit-content}}@layer utilities{.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}}:root{--paper:#fff;--paper-raised:#fff;--paper-sunken:#f7f8f4;--ink:#1c2118;--ink-soft:#55604e;--ink-faint:#7a8574;--leaf:#2f5d3a;--leaf-deep:#1e3f27;--leaf-wash:#e8f0e6;--bloom:#c2456a;--bloom-wash:#fbeaf0;--amber:#9c6513;--amber-wash:#fcf2e0;--alert:#982f2f;--alert-wash:#fbebeb;--edge:#e2ded3;--display:Iowan Old Style, Palatino Linotype, Book Antiqua, Georgia, serif;--ui:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--shadow-card:0 1px 2px #1c21180a, 0 12px 30px -20px #1c211840;--shadow-raised:0 2px 5px #1c21180f, 0 22px 50px -24px #1c211847;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1.125rem;--radius-xl:1.5rem;--content-wide:76rem;--content:67rem;--content-narrow:46rem}@keyframes identifier-spin{to{transform:rotate(360deg)}}@keyframes identifier-pulse{70%{box-shadow:0 0 0 .5rem #0000}to{box-shadow:0 0 #0000}}@media (width>=44rem){.hero{grid-template-columns:minmax(0,.9fr) minmax(27rem,1.1fr)}.process-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.route-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.guide-section{grid-template-columns:minmax(17rem,.9fr) minmax(0,1fr)}}@media (width<=43.99rem){.site-nav{display:none}.mobile-nav{display:block;position:relative}.mobile-nav summary{border:1px solid var(--edge);border-radius:var(--radius-sm);min-height:2.5rem;color:var(--leaf-deep);background:var(--paper-raised);cursor:pointer;align-items:center;padding:.55rem .8rem;font-size:calc(.9rem + 4px);font-weight:800;list-style:none;display:inline-flex}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary:after{content:"+";margin-left:.45rem}.mobile-nav[open] summary:after{content:"−"}.mobile-nav__panel{z-index:2;border:1px solid var(--edge);border-radius:var(--radius-md);background:var(--paper-raised);min-width:min(17rem,100vw - 1.25rem);box-shadow:var(--shadow-raised);gap:.15rem;padding:.5rem;display:grid;position:absolute;top:calc(100% + .45rem);right:0}.mobile-nav__panel a{border-radius:var(--radius-sm);color:var(--ink);padding:.65rem .7rem;font-weight:700;text-decoration:none}.mobile-nav__panel a:hover,.mobile-nav__panel a[aria-current=page]{color:var(--leaf-deep);background:var(--leaf-wash)}.site-header__inner,.site-footer__inner{min-height:3.5rem}.site-footer__inner{flex-direction:column;align-items:flex-start}.page-shell{width:min(100% - 1.25rem, var(--content-wide));padding-top:1.5rem}.hero{gap:1.4rem}.hero__lead{margin-top:.85rem}.trust-points,.hero__links{display:none}.identifier-card{padding:.9rem}.identifier-result{gap:.65rem;margin-top:1rem;padding:.85rem}.identifier-result__guide-link{text-align:center;width:100%}.identifier-evidence-list>div{grid-template-columns:1fr;gap:.25rem}.identifier-evidence-list__certainty{text-align:left}.analysis-report{border:0;border-radius:0;width:100%;height:100dvh;max-height:100dvh;margin:0}.analysis-report__panel{height:100dvh;max-height:100dvh}.analysis-report__header{padding:.9rem 1rem}.analysis-report__header h2{font-size:calc(1.45rem + 4px)}.analysis-report__body{gap:1rem;padding:1rem}.camera-capture{border:0;border-radius:0;width:100%;height:100dvh;max-height:100dvh;margin:0}.camera-capture__panel{grid-template-rows:auto minmax(0,1fr) auto auto;height:100dvh;max-height:100dvh}.camera-capture__header{padding:.9rem 1rem}.camera-capture__stage,.camera-capture__stage video{min-height:0}.camera-capture__controls{grid-template-columns:1fr;padding:.85rem 1rem .55rem}.camera-capture__hint{padding:0 1rem .9rem}.dropzone:not(.dropzone--selected){min-height:11.5rem}.dropzone--selected{min-height:4.75rem}.angle-rail{gap:.3rem}.angle-rail li{padding:.45rem .3rem;font-size:calc(.65rem + 4px)}.angle-rail strong{font-size:calc(.68rem + 4px)}.angle-rail small{margin-top:.15rem;font-size:calc(.58rem + 4px);display:block}.section{margin-top:4.5rem}.evidence-table{font-size:calc(.85rem + 4px)}.evidence-table th,.evidence-table td{padding:.7rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}}
