@font-face{font-family:KalaDisplay;src:url('brand/Fraunces-VF.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:KalaBody;src:url('brand/HankenGrotesk-VF.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:KalaMono;src:url('brand/IBMPlexMono-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
:root,:host{--bone:#f7f0ec;--basalt:#0d0d0d;--teal:#40bfaf;--teal-deep:#23786e;--magenta:#ff00cc;--ink:var(--basalt);--paper:var(--bone);--moss:var(--teal-deep);--green:var(--teal-deep);--lime:var(--teal);--volt:var(--teal);--coral:#9b462b;--blue:#8bd7cb;--gold:#d1c5b8;--fog:#e9dfd7;--muted:#5a544f;--line:#d6cbc2;--font-body:KalaBody,system-ui,sans-serif;--font-display:KalaDisplay,Georgia,serif;--font-mono:KalaMono,monospace}
body{background:var(--bone);color:var(--basalt);font-family:var(--font-body);line-height:1.5}
button,input,select,textarea{font-family:var(--font-body)}
h1,h2,h3,.wordmark{font-family:var(--font-display);letter-spacing:-.025em}
h1{font-weight:600;line-height:1.08}h2,h3{font-weight:600}
.eyebrow,.demo-tag,.nav-num,.edition,.collection-count,.nav-section{font-family:var(--font-mono)}
a{color:var(--teal-deep);text-underline-offset:4px}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid var(--teal-deep);outline-offset:4px}
.sidebar{background:var(--bone);color:var(--basalt);border-right:1px solid var(--line);padding:28px 18px}
.wordmark{display:inline-flex;align-items:center;gap:10px;font-size:32px;font-weight:600;letter-spacing:.015em;color:var(--basalt);text-decoration:none}
.wordmark img{width:54px;height:32px;object-fit:contain}.wordmark span{color:inherit}
.sidebar>.eyebrow,.sidebar-bottom p,.edition,.nav-section{color:var(--muted)}
.sidebar nav{gap:8px;margin-top:32px}.sidebar nav button,.sidebar nav a{color:var(--basalt);border-radius:12px}
.sidebar nav button{min-height:56px;font-size:15px}.sidebar nav small,.sidebar nav a small{color:var(--muted);font-size:13px}
.sidebar nav button[aria-current]{background:var(--teal);color:var(--basalt);box-shadow:0 2px 0 var(--teal-deep)}
.sidebar nav button[aria-current] small{color:var(--basalt)}
.sidebar nav button:hover:not(:disabled):not([aria-current]),.sidebar nav a:hover{background:#e9dfd7}
.sidebar-bottom{border-top:1px solid var(--line);padding-top:20px}.sidebar-bottom a{color:var(--teal-deep)}
.expansion-link{border:1px solid var(--line);color:var(--teal-deep);font-size:14px}
.workspace{max-width:1720px}.topbar{min-height:68px}.demo-tag{background:#e9dfd7;color:var(--basalt);border:1px solid var(--line);border-radius:999px}
.page-heading{padding-block:32px}.page-heading .eyebrow{font-size:13px;color:var(--muted)}
.primary,.draft-button,.catch-shell>button,.print-link,.actions button,nav button,#landmarks button{background:var(--teal);color:var(--basalt);border:1px solid #329c8f;border-radius:12px;box-shadow:0 2px 0 var(--teal-deep),0 4px 12px #40bfaf1a;font-weight:650;min-height:44px}
.primary:hover:not(:disabled),.draft-button:hover:not(:disabled),.catch-shell>button:hover:not(:disabled){background:#58ccbd}
.primary:active:not(:disabled),.draft-button:active:not(:disabled),.catch-shell>button:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 0 var(--teal-deep)}
.secondary,.help-button,.inspect-button{background:#fffaf6;border:1px solid var(--line);border-radius:12px;box-shadow:0 2px 0 #d6cbc255;color:var(--basalt)}
.seed-row input,.collection-toolbar select,textarea,input[type=number]{background:#fffaf6;border-color:var(--line);border-radius:10px;font-family:var(--font-body);font-size:16px}
.pack-bar{border:1px solid var(--line);border-left:3px solid var(--teal);background:#fffaf6;border-radius:14px}
.table-banner{background:var(--basalt);color:var(--bone);border-radius:16px;padding:22px 24px}.table-banner p{color:#ded4cc}.habitat-flag{background:#e9dfd7;color:var(--basalt);border-radius:999px;font-family:var(--font-mono)}
.scoreboard,.fish-card,.lineup-row{background:#fffaf6;border-color:var(--line);border-radius:16px;box-shadow:0 8px 24px #0d0d0d08}
.card-top{background:var(--basalt);color:var(--bone)}.card-top>span{color:var(--bone);font-family:var(--font-mono)}
.measurement,.score-big,.field-score,.score-vs strong,.run-empty b{font-family:var(--font-display);letter-spacing:-.025em}
.field-score small{font-family:var(--font-body)}.card-meta,.size-value,.measurement small{font-family:var(--font-mono)}
.result,.session-banner{background:#e0efea;border-color:#23786e;border-radius:16px}.run-play{border-color:#aea198;border-radius:16px}.turn-notice,.hint-copy,.journal-list li,.hand-mini{background:#e9dfd7}
.mosaic-cell{background:#ece2da;border-color:#aaa097;border-radius:12px}.mosaic-cell.filled{background:#fffaf6;border-color:var(--teal-deep)}.mosaic-cell small{font-family:var(--font-mono)}
.catch-shell>button{width:100%;border-radius:0 0 12px 12px}.catch-shell.selected>button{background:var(--teal);color:var(--basalt)}
.catch-shell.selected .catch-portrait{outline-color:var(--teal-deep)}.catch-portrait{box-shadow:0 8px 22px #0d0d0d18}
.match-tile{background:var(--basalt);border-radius:16px}.card-back b{font-family:var(--font-display);color:var(--teal);letter-spacing:0}.match-tile.matched{border-color:var(--teal-deep)}
.page-footer{font-family:var(--font-body);font-size:14px}.private-notice{background:#efe2d9;border-left-color:#9b462b}
dialog{background:var(--bone);border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 64px #0d0d0d33}dialog::backdrop{background:#0d0d0da6;backdrop-filter:blur(5px)}.close{background:#e9dfd7;font-family:var(--font-body)}
body>header:has(+main){background:var(--bone);color:var(--basalt);border-bottom:1px solid var(--line)}
body>header a{color:var(--teal-deep)}.hint{color:var(--muted)}#landmarks button[aria-pressed=true]{background:var(--basalt);color:var(--bone)}
.print-link{padding:12px 18px}.write-lines,body>section{border-color:var(--line)}
.masthead{padding-inline:20px}.intro h1>span{color:var(--teal-deep)}.toolbar button{color:var(--basalt);background:#fffaf6;border-color:var(--line);border-radius:12px}.toolbar button.active{background:var(--teal);color:var(--basalt)}.intro .eyebrow{color:var(--muted)}.specimen-label h2{font-family:var(--font-display)}.masthead+.intro,.masthead+main{padding-inline:20px}.specimen-archive .card .wordmark{font-family:Space,system-ui,sans-serif;display:inline;font-size:inherit;letter-spacing:inherit;color:inherit}.specimen-archive .card .wordmark span{color:var(--volt)}
@media screen{
 .fishcard{--ink:#0d0d0d;--paper:#f7f0ec;--green:#23786e;--volt:#40bfaf;--fog:#e9dfd7;background:var(--basalt);color:var(--bone);font-family:var(--font-body)}
 .fishcard .brand{font-family:var(--font-display);font-size:34px;font-weight:600;letter-spacing:.01em;text-transform:uppercase}
 .fishcard .species h2,.fishcard .length>strong,.fishcard .proof-title,.fishcard .game-mark,.fishcard .game-ripples span{font-family:var(--font-display)}
 .fishcard .species h2{font-size:37px;letter-spacing:-.025em}.fishcard .length>strong{font-size:72px;letter-spacing:-.035em}
 .fishcard .state,.fishcard .species p,.fishcard .front-footer span,.fishcard .art-label,.fishcard .proof-intro,.fishcard .claim span,.fishcard .grade-note,.fishcard .receipt,.fishcard .back-footer{font-family:var(--font-body)}
 .fishcard .front-footer b,.fishcard .claim strong,.fishcard .receipt b,.fishcard .game-bottom{font-family:var(--font-mono)}
 .fishcard .state{color:var(--bone);font-size:23px}.fishcard[data-proof=verified].front .state{color:var(--magenta)}
 .fishcard.back{background:var(--bone);color:var(--basalt)}.fishcard.back .state{color:var(--basalt)}
 .fishcard .art{background:var(--basalt)}.fishcard .front-footer{border-color:#665e57}
 .fishcard.game-back{background:var(--basalt)}.fishcard .game-ripples span{background:var(--basalt)}
 .fishcard .finish-glyph{color:var(--bone)}.fishcard .proof-intro,.fishcard .claim span,.fishcard .back-footer{color:var(--muted)}
}
@media(max-width:900px){.sidebar{display:block;border-right:0;border-bottom:1px solid var(--line);padding:16px 20px}.sidebar nav{display:flex;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;gap:8px;margin:16px 0 0;padding-bottom:6px;scroll-snap-type:x proximity}.sidebar nav button,.sidebar nav a{flex:0 0 auto;white-space:nowrap;scroll-snap-align:start;padding:12px 16px;font-size:14px}.sidebar .expansion-link{flex-basis:auto}.sidebar>.eyebrow{display:none}.workspace{padding-inline:20px}.sidebar nav small{display:none}.wordmark{font-size:28px}.wordmark img{width:48px;height:28px}}
@media(max-width:660px){.page-heading h1{font-size:36px}.topbar{gap:8px}.demo-tag{font-size:12px}.page-heading{padding-block:24px}.page-heading .eyebrow{font-size:12px}.seed-row{flex-wrap:wrap}.pack-bar{padding:14px}.table-banner{padding:18px;flex-wrap:wrap}.field-score{font-size:48px}.sidebar nav{margin-right:0}.page-footer{font-size:13px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
