:root{--paper:#f1e8d3;--ink:#304638;--muted:#45513f;--line:#bcbba5;--accent:#a4543d;--serif:Georgia,'Times New Roman',serif;--sans:'Helvetica Neue',Helvetica,Arial,sans-serif;--display:'Avenir Next Condensed','Arial Narrow','Helvetica Neue',Arial,sans-serif;--mono:'Courier New',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,.upload-button:has(+input:focus-visible){outline:2px solid var(--accent);outline-offset:5px}::selection{background:#d1d6b8}.skip{position:absolute;left:20px;top:-100px;background:var(--paper);padding:15px;z-index:9}.skip:focus{top:20px}.running{display:flex;justify-content:space-between;padding:20px 5%;background:var(--ink);color:var(--paper);font:11px/1.5 var(--mono);border-bottom:1px solid #73806a}.running>span{opacity:.8}.cover{background:var(--ink);color:var(--paper);text-align:center;min-height:790px;padding:58px 25px 45px;position:relative;display:flex;align-items:center;flex-direction:column;border-bottom:10px solid #c8b68b}.cover:before{content:'';position:absolute;inset:20px;border:1px solid #71816c;pointer-events:none;border-radius:2px 2px 24px 2px}.edition{font:700 14px var(--sans);letter-spacing:.12em}.rule{display:none}h1{font:800 clamp(48px,6.6vw,86px)/1.04 var(--display);letter-spacing:-.025em;margin:48px 0 28px;max-width:1000px}.subtitle{font:17px var(--mono);margin:0}.seal{margin:45px 0 30px;padding:12px 38px 13px;border-top:2px solid var(--paper);border-bottom:2px solid var(--paper);display:flex;flex-direction:column;gap:5px}.seal span{font:800 31px var(--display);letter-spacing:.04em}.seal small{font:11px var(--mono)}.publisher{font:10px/1.9 var(--mono);margin:0}.publisher span{font:11px var(--sans)}.begin{display:flex;gap:24px;font:11px var(--mono);align-items:center;margin-top:32px}.begin span{font-size:22px}.section{max-width:1200px;margin:auto;padding:0 50px}.section-label{display:flex;justify-content:space-between;gap:20px;border-top:2px solid var(--ink);padding:14px 0;border-bottom:1px solid var(--line);font:11px/1.5 var(--mono);color:var(--ink)}.section-label>span:first-child{font-weight:700}.section-label>span:last-child{color:var(--muted)}.foreword{padding-top:65px;padding-bottom:85px}.foreword-body{max-width:760px;margin:45px auto 0;border-left:1px solid #ba8e78;padding:0 0 0 30px}.foreword-body .large{font:30px/1.5 var(--serif);margin:0 0 24px;letter-spacing:-.015em}.foreword-body>p:last-child{max-width:650px;font:16px/1.9 var(--serif);color:var(--muted);margin-bottom:0}.species{padding-bottom:90px}.species-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start;margin-top:40px}figure{margin:0}.specimen{padding:10px 10px 0;border:1px solid var(--line);background:#e7ddc5}.specimen img{width:100%;height:auto;display:block}.specimen figcaption{display:flex;gap:16px;font:10px/1.5 var(--mono);padding:12px 0}.species-copy h2{margin-top:-7px}h2{font:750 42px/1.12 var(--display);letter-spacing:-.02em;margin:0}.latin{font:italic 19px var(--serif);margin:8px 0 25px}.assessment{display:flex;gap:17px;align-items:center;border:1px solid var(--line);border-left:5px solid var(--accent);padding:12px 16px;background:#e7e2cc}.age{font:700 42px var(--display)}.record-label{display:block;font:10px var(--mono);margin-bottom:4px}.assessment strong{font-size:14px;font-weight:500}dl{margin:25px 0 0}dt{font:700 11px var(--mono);margin:22px 0 7px}dd{margin:0;font-size:14px;line-height:1.7;color:var(--muted)}.range-map{margin-top:15px;max-width:365px}.map-grid{border:1px solid var(--line);height:205px;position:relative;background-color:#e7e3cd;background-image:linear-gradient(#b8bea340 1px,transparent 1px),linear-gradient(90deg,#b8bea340 1px,transparent 1px);background-size:25px 25px;display:flex;justify-content:center;align-items:center}.map-grid img{height:175px;width:auto;mix-blend-mode:multiply;opacity:.75}.map-grid span{position:absolute;font:9px var(--mono)}.map-north{right:12px;top:12px}.map-ocean{left:12px;bottom:48px;transform:rotate(-30deg);font-style:italic!important}.map-label{right:18px;bottom:22px}.range-map figcaption{font:9px var(--mono);margin-top:7px}.field-note{border-top:1px dashed var(--line);padding-top:15px;margin:22px 0 0;font:italic 15px/1.6 var(--serif)}.field-note span{font:10px var(--mono);display:block;margin-bottom:6px}.section-intro{display:flex;align-items:end;justify-content:space-between;margin:40px 0 35px;gap:25px}.section-intro p{font:11px/1.7 var(--mono);margin:0;color:var(--muted)}.plate-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px 24px}.plate{border-bottom:1px solid var(--line);padding-bottom:17px}.plate img{width:100%;height:auto;display:block;padding:5px;border:1px solid var(--line);background:#e7ddc5}.plate-number{display:block;font:10px var(--mono);color:var(--accent);margin:13px 0 9px}.plate figcaption{font:21px/1.3 var(--serif);letter-spacing:-.02em}.identification{display:grid;grid-template-columns:1fr 3fr;gap:24px;padding:24px 0;border-top:2px solid var(--ink);margin:40px 0 80px}.identification>span{font:700 10px/1.7 var(--mono)}.identification p{font:12px/1.8 var(--sans);max-width:630px;margin:0;color:var(--muted)}.diagnostic{padding-bottom:85px}.diagnostic-heading{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin:40px 0 30px}.diagnostic-heading p{font:14px/1.8 var(--sans);margin:0;max-width:390px}.diagnostic-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.diagnostic-portrait{max-width:330px}.diagnostic-portrait img{display:block;width:100%;height:330px;object-fit:contain;background:#e0ddcb;padding:7px;border:1px solid var(--line)}.diagnostic-portrait figcaption{font:10px var(--mono);margin:12px 0 18px}.upload-controls{display:flex;align-items:center;gap:15px;flex-wrap:wrap;position:relative}#photo-upload{position:absolute;width:1px;height:1px;opacity:0;left:0;bottom:0}.upload-button{font:11px var(--mono);border:1px solid var(--ink);padding:11px 14px;cursor:pointer;display:flex;gap:25px}.upload-button:hover{background:#e4dec6}.upload-button.disabled{opacity:.5;cursor:wait}.upload-note{font:10px/1.7 var(--mono);margin:11px 0 0;color:var(--muted)}button{font:12px var(--mono);color:var(--paper);background:var(--ink);border:1px solid var(--ink);padding:16px 21px;cursor:pointer;display:flex;justify-content:space-between;gap:30px;transition:background .2s}button:hover{background:#4c5c44}button:disabled{cursor:wait;opacity:.65}.reset-photo{font:10px var(--mono);background:transparent;color:var(--ink);padding:4px 0;border:0;text-decoration:underline}.reset-photo:hover{background:transparent}.instrument{border:1px solid var(--line);border-top:4px solid var(--accent);padding:25px;background:repeating-linear-gradient(transparent 0,transparent 31px,#bec2aa55 31px,#bec2aa55 32px);min-height:330px}.instrument-label{font:11px var(--mono);color:var(--accent)}#result{min-height:170px;padding-top:10px}.result-text{font:27px/1.3 var(--serif);margin:18px 0 15px}.idle{font-style:italic;color:var(--muted)}.confidence{font:11px/1.6 var(--mono);color:var(--muted)}#conclusion{font:11px/1.8 var(--mono);margin:25px 0 0}.closing{background:#dedfc3;border-top:1px solid #b8bba2;text-align:center;padding:60px 25px 75px}.closing-inner{max-width:640px;margin:auto}.closing-kicker{font:14px var(--mono);margin:0 0 32px}.expressive-frame{width:min(100%,470px);margin:auto;padding:9px;background:var(--paper);border:1px solid #b7b69d;transform:rotate(-1deg)}.expressive-frame img{width:100%;height:auto;display:block}.there{font:italic 26px var(--serif);margin:27px 0 35px}.closing h2{font-size:48px}.message{font:21px/1.7 var(--serif);max-width:580px;margin:25px auto 0}.signature{font:12px/1.9 var(--mono);margin:30px 0 0}.signature em{font:italic 25px var(--serif)}footer{padding:25px 5%;display:flex;justify-content:space-between;gap:20px;font:10px/1.7 var(--mono);color:var(--muted)}[hidden]{display:none!important}@media(max-width:850px){.section{padding-left:30px;padding-right:30px}.species-grid,.diagnostic-grid,.diagnostic-heading{gap:35px}.plate-grid{grid-template-columns:repeat(2,1fr);gap:30px 24px}.species-copy h2{font-size:35px}.section-intro h2{font-size:36px}.cover{min-height:760px}.map-label{right:10px;bottom:12px}.map-ocean{left:5px!important;font-size:8px!important}}@media(max-width:560px){.running{font-size:9px;gap:20px}.running>span{max-width:130px;text-align:right}.cover{padding:55px 24px 40px;min-height:720px}.cover:before{inset:12px}.edition{font-size:12px}h1{font-size:clamp(37px,9.8vw,55px);margin:48px 0 27px}.subtitle{font-size:12px}.seal{margin-top:40px}.publisher span{font-size:10px}.section{padding-left:22px;padding-right:22px}.section-label{font-size:9px;gap:12px}.section-label>span:last-child{max-width:110px;text-align:right}.foreword{padding-top:40px;padding-bottom:55px}.foreword-body{margin-top:30px;padding-left:18px}.foreword-body .large{font-size:25px}.foreword-body>p:last-child{font-size:16px}.species-grid{grid-template-columns:1fr;gap:35px;margin-top:30px}.species-copy h2{font-size:39px}.species{padding-bottom:55px}.range-map{max-width:100%}.map-grid{height:225px}.map-grid img{height:195px}.map-ocean{left:25px!important}.section-intro{display:block;margin:30px 0}.section-intro p{margin-top:15px}.plate-grid{gap:27px 15px}.plate figcaption{font-size:19px}.plate-number{font-size:9px}.identification{grid-template-columns:1fr;gap:10px;margin-bottom:55px}.diagnostic-heading{grid-template-columns:1fr;gap:17px;margin:30px 0 25px}.diagnostic-grid{grid-template-columns:1fr;gap:28px}.diagnostic-portrait{max-width:100%}.diagnostic-portrait img{height:365px}.instrument{min-height:310px}.diagnostic{padding-bottom:55px}.closing{padding-top:40px}.closing h2{font-size:40px}.message{font-size:19px}footer{display:block;font-size:9px}footer a{display:block;margin-top:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Stronger print contrast and the original anniversary stamp. */
.subtitle{font-size:26px;font-weight:600;line-height:1.45}
.seal{position:relative;border:1px solid var(--paper);border-radius:50%;width:112px;height:112px;padding:0;margin:38px 0 22px;justify-content:center;gap:5px}
.seal:before{content:'';position:absolute;inset:5px;border:1px solid var(--paper);border-radius:50%}
.seal span{font:45px/1 var(--serif);letter-spacing:0}
.seal small{font:600 8px var(--sans);letter-spacing:.01em}
.running>span{opacity:1}
.running,.begin,.section-label,.record-label,.specimen figcaption,.range-map figcaption,.plate-number,.diagnostic-portrait figcaption,.upload-note,.instrument-label,.confidence,.closing-kicker,footer{font-weight:600}
.record-label,.specimen figcaption,.range-map figcaption,.plate-number,.diagnostic-portrait figcaption,.upload-note,.instrument-label,.confidence,.field-note span,footer{font-size:11px}
.map-grid span{font-size:10px;font-weight:700;color:var(--ink)}
.upload-button{font:700 13px var(--sans);background:var(--ink);color:var(--paper);padding:14px 18px;border:2px solid var(--ink)}
.upload-button:hover{background:#4c5c44}
.upload-button.disabled{opacity:.7}
.reset-photo{font-size:12px;font-weight:600}
button{font-weight:600}
.closing-inner{max-width:1100px}
.closing-gallery{display:grid;grid-template-columns:1fr .83fr 1.65fr;gap:20px;align-items:center;margin:42px auto 30px}
.closing-gallery .expressive-frame,.snapshot{width:100%;margin:0;padding:8px;background:var(--paper);border:1px solid #a4a68d;box-shadow:0 3px 5px #30463812}
.snapshot img{display:block;width:100%;height:auto}
.banana{transform:rotate(2deg)}
.dancing{transform:rotate(-1.5deg)}
.signature{font-weight:600;font-size:13px}
@media(max-width:560px){.subtitle{font-size:21px;max-width:300px}.cover{min-height:700px}.running{font-size:10px}.section-label{font-size:10px}.closing-gallery{grid-template-columns:1fr 1fr;gap:19px 15px;margin-top:30px}.closing-gallery .expressive-frame{align-self:center}.dancing{grid-column:1 / -1;width:94%;justify-self:center}.closing-gallery .expressive-frame,.snapshot{padding:6px}.closing-kicker{font-size:13px}footer{font-size:11px}.map-ocean{font-size:10px!important}}
