/* Hallmark · macrostructure: Catalogue · theme: Studio · genre: editorial · nav: N3 adapted side-rail · footer: Ft2 inline
 * Audience: editorial team · use: private illustration catalogue · enrichment: actual Drive previews only · motion: restrained
 * Pre-emit critique: P4 H4 E4 S5 R5 V4 */
@import url('/tokens.css');
/* Hallmark · Consultas / Guardadas · pre-emit critique: P4 H4 E4 S5 R4 V4 */
@font-face{font-family:'Fraunces';src:url('/fonts/fraunces.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('/fonts/plex.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('/fonts/plex-medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('/fonts/plex-semibold.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('/fonts/plex-bold.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
*{box-sizing:border-box}html,body{margin:0;overflow-x:clip}body{font-family:var(--font-body);font-size:var(--text-base);line-height:1.5;color:var(--color-ink);background:var(--color-paper)}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:var(--color-transparent)}button,.button{min-height:44px;border:1px solid var(--color-rule);border-radius:var(--radius-sm);padding:var(--space-8) var(--space-12);background:var(--color-surface);color:var(--color-ink);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-8);white-space:nowrap;font-size:var(--text-sm)}button:active,.button:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:not-allowed}button[aria-busy=true]{opacity:.65;cursor:progress}.primary{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}.quiet{border-color:var(--color-transparent);background:var(--color-transparent);color:var(--color-muted)}a{color:var(--color-accent);text-underline-offset:3px}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}input,select,textarea{width:100%;min-width:0;min-height:44px;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-surface);padding:var(--space-8) var(--space-12);color:var(--color-ink)}textarea{min-height:92px;resize:vertical}input[type=checkbox]{width:18px;min-height:18px;accent-color:var(--color-accent)}label{display:block;font-size:var(--text-sm);margin-bottom:var(--space-4)}input[aria-invalid=true]{border-color:var(--color-error)}h1,h2,h3{font-style:normal;line-height:1.2;overflow-wrap:anywhere;min-width:0;margin-top:0}h1{font-family:var(--font-display);font-size:var(--text-display);font-weight:500;letter-spacing:-.035em;margin-bottom:var(--space-8)}h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500}h3{font-size:var(--text-base);font-weight:600}p{margin:0 0 var(--space-16);max-width:75ch}small,.small{font-size:var(--text-sm)}.muted{color:var(--color-muted)}.scientific{font-style:italic;color:var(--color-muted)}.skip{position:fixed;left:16px;top:-100px;z-index:99;padding:var(--space-12);background:var(--color-surface)}.skip:focus{top:10px}
.sidebar{padding:var(--space-20) var(--space-16);border-bottom:1px solid var(--color-rule);background:var(--color-paper-2)}.brand{display:flex;align-items:center;gap:var(--space-8);text-decoration:none;font-family:var(--font-display);font-size:32px;line-height:1.05;color:var(--color-ink);margin-bottom:var(--space-20)}.brand svg{width:40px;height:40px;fill:none;stroke:var(--color-accent);stroke-width:1.4}.brand-note{display:block;font-family:var(--font-body);font-size:12px;font-weight:400;line-height:1.5;letter-spacing:.015em;margin-top:var(--space-4);color:var(--color-muted)}nav{display:flex;flex-wrap:wrap;gap:var(--space-4)}nav a{display:flex;align-items:center;gap:var(--space-8);padding:var(--space-8) var(--space-12);min-height:44px;color:var(--color-muted);text-decoration:none;font-size:var(--text-sm);white-space:nowrap;border-radius:var(--radius-sm)}nav a[aria-current=page]{color:var(--color-accent);background:var(--color-accent-soft);font-weight:600}nav a>span:first-child{font-size:20px;width:20px;text-align:center}.nav-count{margin-left:auto;font-variant-numeric:tabular-nums;font-size:12px}.sidebar-bottom{display:none}.local-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--color-accent);margin-right:var(--space-8)}.topbar{height:56px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-12);padding:0 var(--space-20);border-bottom:1px solid var(--color-rule);font-size:var(--text-sm);color:var(--color-muted)}.local-tag{font-size:12px;white-space:nowrap}.page{padding:var(--space-28) var(--space-20);min-height:calc(100dvh - 140px)}.page-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-16);margin-bottom:var(--space-28)}.page-head p{color:var(--color-muted);font-size:var(--text-sm);margin:0}.actions{display:flex;gap:var(--space-8);align-items:center;flex-wrap:wrap}.stats{display:flex;gap:var(--space-24);flex-wrap:wrap;border-block:1px solid var(--color-rule);padding:var(--space-16) 0;margin-bottom:var(--space-24);color:var(--color-muted);font-size:var(--text-sm)}.stats strong{display:block;font-size:23px;font-weight:500;font-variant-numeric:tabular-nums;color:var(--color-ink);line-height:1.3}.stats .warn strong{color:var(--color-warn)}.notice{padding:var(--space-12) var(--space-16);background:var(--color-accent-soft);color:var(--color-accent);border-radius:var(--radius-sm);font-size:var(--text-sm);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-8);margin-bottom:var(--space-24)}.notice p{margin:0}.notice.warning{background:var(--color-warn-soft);color:var(--color-warn)}.filters{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-12);margin-bottom:var(--space-16)}.filter-search{position:relative}.filter-search input{padding-left:var(--space-36)}.filter-search:before{content:'⌕';position:absolute;left:13px;bottom:9px;font-size:22px;color:var(--color-muted)}.filter-summary{display:flex;justify-content:space-between;align-items:center;gap:var(--space-12);margin-bottom:var(--space-16);font-size:var(--text-sm);color:var(--color-muted)}.view-toggle{display:flex}.view-toggle button{border-radius:0}.view-toggle button:first-child{border-radius:5px 0 0 5px}.view-toggle button:last-child{border-radius:0 5px 5px 0}.view-toggle button[aria-pressed=true]{background:var(--color-accent-soft);color:var(--color-accent)}
.gallery{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-24) var(--space-16)}.file-card{min-width:0;border-bottom:1px solid var(--color-rule);padding-bottom:var(--space-16)}.thumb-button{display:block;width:100%;padding:0;border:none;border-radius:var(--radius-sm);overflow:clip;text-align:left;background:var(--color-paper-2);position:relative;aspect-ratio:1.35;min-height:150px;white-space:normal}.thumb-button img{width:100%;height:100%;object-fit:contain;position:absolute;inset:0;background:var(--color-surface)}.thumb-placeholder{display:flex;width:100%;height:100%;align-items:center;justify-content:center;flex-direction:column;gap:var(--space-8);color:var(--color-muted);padding:var(--space-16)}.file-monogram{font-family:var(--font-display);font-size:40px;font-weight:400;opacity:.5}.thumb-caption{font-size:12px}.file-ext{position:absolute;left:10px;top:10px;padding:var(--space-4) var(--space-4);background:var(--color-surface);color:var(--color-muted);font-size:11px;letter-spacing:.04em}.file-card h3{margin:var(--space-12) 0 var(--space-4);font-weight:500;font-size:var(--text-base);line-height:1.35}.file-card h3 button{border:0;padding:0;min-height:0;background:var(--color-transparent);color:var(--color-ink);font-size:inherit;font-weight:inherit;display:block;max-width:100%;white-space:normal;text-align:left;overflow-wrap:anywhere}.filename{font-size:12px;color:var(--color-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:var(--space-8) 0 var(--space-8)}.badge{display:inline-flex;align-items:center;gap:var(--space-4);max-width:100%;padding:var(--space-4) var(--space-8);border-radius:3px;font-size:11px;line-height:1.4;background:var(--color-accent-soft);color:var(--color-accent)}.badge.review{background:var(--color-warn-soft);color:var(--color-warn)}.badge.neutral{background:var(--color-paper-2);color:var(--color-muted)}.pagination{display:flex;gap:var(--space-12);justify-content:space-between;align-items:center;margin-top:var(--space-28);font-size:var(--text-sm)}.list-row{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-8);padding:var(--space-16) 0;border-bottom:1px solid var(--color-rule)}.list-title{display:block;text-align:left;border:0;padding:0;background:var(--color-transparent);white-space:normal;min-height:0;font-size:var(--text-base);font-weight:500;justify-content:flex-start;overflow-wrap:anywhere}.list-row p{font-size:var(--text-sm);margin:var(--space-4) 0;color:var(--color-muted)}.list-row .cell-end{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8)}.empty{text-align:center;padding:var(--space-64) var(--space-20);background:var(--color-paper-2);border-radius:var(--radius-md)}.empty p{margin-inline:auto;color:var(--color-muted)}.empty h2{margin-bottom:var(--space-12)}.loading{opacity:.55;pointer-events:none}.error-box{padding:var(--space-16);background:var(--color-error-soft);color:var(--color-error);border-radius:var(--radius-sm)}
dialog{position:fixed;inset:0;margin:auto;padding:0;width:calc(100% - 24px);max-width:1180px;max-height:92dvh;border:1px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper);color:var(--color-ink);overflow:auto}dialog::backdrop{background:var(--color-backdrop)}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-16);padding:var(--space-20) var(--space-24);border-bottom:1px solid var(--color-rule)}.dialog-head h2{margin:0 0 var(--space-4)}.dialog-head p{margin:0;font-size:var(--text-sm);overflow-wrap:anywhere;color:var(--color-muted)}.dialog-head button{flex-shrink:0}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr)}.preview-pane{padding:var(--space-24);background:var(--color-paper-2);min-width:0}.preview-pane iframe{width:100%;height:420px;border:1px solid var(--color-rule);background:var(--color-surface);border-radius:var(--radius-sm)}.preview-pane .preview-note{font-size:var(--text-sm);color:var(--color-muted);margin-top:var(--space-12)}.details{padding:var(--space-24);min-width:0}.details h3{margin-top:var(--space-24);margin-bottom:var(--space-12)}.details h3:first-child{margin-top:0}.field{margin-bottom:var(--space-16)}.field small{display:block;margin-top:var(--space-4);color:var(--color-muted)}.reason{font-size:var(--text-sm);padding:var(--space-12);background:var(--color-warn-soft);color:var(--color-warn);border-radius:var(--radius-sm);margin:var(--space-12) 0 var(--space-20)}.metadata{display:grid;grid-template-columns:110px minmax(0,1fr);gap:var(--space-8) var(--space-16);font-size:var(--text-sm);margin-bottom:var(--space-20)}.metadata dt{color:var(--color-muted)}.metadata dd{margin:0;overflow-wrap:anywhere}.suggestions{max-height:220px;overflow:auto;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-surface);margin-top:var(--space-4)}.suggestions button{display:block;width:100%;border:0;border-bottom:1px solid var(--color-rule);border-radius:0;text-align:left;white-space:normal}.suggestions button small{display:block;color:var(--color-muted)}.selection{font-size:var(--text-sm);color:var(--color-accent);padding:var(--space-8) 0}.detail-actions{display:flex;flex-wrap:wrap;gap:var(--space-8);margin-top:var(--space-20)}.notification{position:fixed;bottom:24px;right:24px;left:24px;max-width:540px;margin-left:auto;padding:var(--space-16) var(--space-20);background:var(--color-accent);color:var(--color-accent-ink);border-radius:var(--radius-sm);z-index:100;font-size:var(--text-sm)}.notification.error{background:var(--color-error);color:var(--color-accent-ink)}[hidden]{display:none!important}footer{margin:0 var(--space-20);padding:var(--space-20) 0;border-top:1px solid var(--color-rule);font-size:12px;color:var(--color-muted);display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-8)}
.api-layout{display:grid;gap:var(--space-24)}.api-section{padding:var(--space-24);border:1px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface);min-width:0}.api-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-12);margin-bottom:var(--space-16)}.api-head h2{margin-bottom:var(--space-4)}.api-head p{font-size:var(--text-sm);color:var(--color-muted);margin:0}.api-section p,.api-section li{font-size:var(--text-sm);color:var(--color-muted)}.api-section ol{padding-left:var(--space-20)}.api-section li{padding-bottom:var(--space-8)}.api-section details{border-top:1px solid var(--color-rule);margin-top:var(--space-16);padding-top:var(--space-16)}.api-section summary{cursor:pointer;min-height:44px;font-size:var(--text-sm);font-weight:500}.api-section code{overflow-wrap:anywhere;font-family:var(--font-body);font-size:var(--text-sm);background:var(--color-paper-2);padding:var(--space-4) var(--space-4)}.checkline{display:flex;align-items:flex-start;gap:var(--space-8);margin:var(--space-16) 0}.checkline input{flex-shrink:0;margin-top:var(--space-4)}.checkline label{margin:0;max-width:65ch}.api-section input[type=file]{font-size:var(--text-sm);padding:var(--space-8);width:100%;min-width:0}.connection-result{margin-top:var(--space-12);font-size:var(--text-sm);white-space:pre-wrap;color:var(--color-muted);overflow-wrap:anywhere}.country-layout{display:grid;gap:var(--space-24)}.country-query{padding:var(--space-24);background:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-md);min-width:0}.country-query h2{margin-bottom:var(--space-20)}.country-output{margin-top:var(--space-24)}.country-output .result-number{font-family:var(--font-display);font-size:40px;line-height:1.2;margin:var(--space-12) 0}.country-list{display:grid;grid-template-columns:minmax(0,1fr);gap:0 var(--space-24);max-height:330px;overflow:auto;margin-top:var(--space-16)}.country-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-16);padding:var(--space-8) 0;border-bottom:1px solid var(--color-rule);font-size:var(--text-sm)}.country-row strong{font-variant-numeric:tabular-nums}.reviews-table{margin-top:var(--space-36)}.species-detail-body{padding:var(--space-24)}.species-heading{display:flex;gap:var(--space-24);flex-wrap:wrap;justify-content:space-between;margin-bottom:var(--space-24)}.species-heading h3{font-family:var(--font-display);font-size:var(--text-xl);margin:0}.skeleton{height:180px;background:var(--color-paper-2);border-radius:var(--radius-sm)}.callback{max-width:800px;margin:15dvh auto;padding:var(--space-32)}.callback h1{font-size:30px;line-height:1.4}.taxon-warning{font-size:var(--text-sm);color:var(--color-warn)}
@media(hover:hover){button:hover,.button:hover{background:var(--color-paper-2);color:var(--color-ink)}.primary:hover{background:var(--color-ink);color:var(--color-accent-ink)}nav a:hover{background:var(--color-accent-soft);color:var(--color-accent)}input:hover,select:hover,textarea:hover{background:var(--color-paper)}.thumb-button:hover{outline:1px solid var(--color-accent);outline-offset:3px}.file-card h3 button:hover,.list-title:hover{color:var(--color-accent);text-decoration:underline;text-underline-offset:3px}}
@media(min-width:375px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.thumb-button{min-height:120px}.file-monogram{font-size:32px}}
@media(min-width:640px){.filters{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr))}.gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.filters .filter-search{grid-column:1/-1}.stats{gap:var(--space-40)}.list-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);align-items:center}.country-list{grid-template-columns:repeat(2,minmax(0,1fr))}.page{padding:var(--space-32)}.topbar{padding-inline:var(--space-32)}footer{margin-inline:var(--space-32)}}
@media(min-width:960px){.sidebar{position:fixed;inset:0 auto 0 0;width:226px;border-right:1px solid var(--color-rule);border-bottom:0;padding:var(--space-32) var(--space-16);display:flex;flex-direction:column}.brand{margin-bottom:var(--space-48);padding-left:var(--space-8)}.sidebar nav{display:flex;flex-direction:column;gap:var(--space-8)}.sidebar-bottom{display:block;margin-top:auto;padding:var(--space-24) var(--space-12) 0;color:var(--color-muted);font-size:var(--text-sm)}.sidebar-bottom p{font-size:12px;margin:var(--space-8) 0 var(--space-16)}.sidebar-bottom small{font-size:11px}.sidebar+main{margin-left:226px}.topbar{height:68px}.page{padding:var(--space-36)}.filters{grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr))}.filters .filter-search{grid-column:auto}.detail-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.preview-pane iframe{height:560px}.country-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.api-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.api-section.wide{grid-column:1/-1}.api-section.wide .setup-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-32)}.page-head{flex-wrap:nowrap}}
@media(min-width:1280px){.gallery{grid-template-columns:repeat(4,minmax(0,1fr))}.page{padding:var(--space-40) var(--space-44)}.topbar{padding-inline:var(--space-44)}.thumb-button{min-height:170px}.stats{gap:var(--space-56)}footer{margin-inline:var(--space-44)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.detail-preview{display:block;width:100%;height:440px;max-height:60vh;object-fit:contain;background:var(--color-surface)}
.query-tabs{display:flex;flex-wrap:wrap;gap:var(--space-8);border-bottom:1px solid var(--color-rule);padding-bottom:var(--space-16);margin-bottom:var(--space-28)}.query-tabs button{background:var(--color-transparent);border-color:var(--color-transparent)}.query-tabs button[aria-pressed=true]{background:var(--color-accent-soft);border-color:var(--color-accent-soft);color:var(--color-accent);font-weight:600}.query-panel{margin-top:0!important}.query-panel.country-single{border:0;padding:0}.query-panel.country-single>summary{display:none}.query-panel.checklist-panel{border:0;padding:0;background:var(--color-transparent)}.query-panel .api-head{margin-bottom:var(--space-20)}.query-panel .badge{display:none}.query-panel #checklist-import{border:0;margin-top:var(--space-24);padding-top:0}.query-panel #checklist-import>summary{font-size:var(--text-base)}.manual-query{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-32)}.manual-query>div{max-width:42ch}.manual-query form{padding:var(--space-24);background:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-md)}.query-kicker{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);display:block;margin-bottom:var(--space-8)}.query-library-tools{display:flex;flex-wrap:wrap;gap:var(--space-16);align-items:end;margin-bottom:var(--space-28)}.query-library-tools .field{flex:1 1 180px;margin:0}.query-library-tools .checkline{margin:0;min-height:44px;align-items:center}.saved-query-list{border-top:1px solid var(--color-rule)}.saved-query-row{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-20);padding:var(--space-24) 0;border-bottom:1px solid var(--color-rule);align-items:center}.saved-query-row h2{font-size:var(--text-xl);margin-bottom:var(--space-8)}.saved-query-row h2 a{text-decoration:none;color:var(--color-ink)}.saved-query-row h2 a:hover{text-decoration:underline;color:var(--color-accent)}.saved-query-row p{font-size:var(--text-sm);color:var(--color-muted);margin:0}.saved-query-row>.button{justify-self:start}.query-coverage{display:flex;gap:var(--space-20);flex-wrap:wrap;font-size:12px;color:var(--color-muted)}.query-coverage strong{display:block;color:var(--color-ink);font-size:var(--text-lg);font-weight:500}.query-backups{margin-top:var(--space-36);border-top:1px solid var(--color-rule);padding-top:var(--space-20)}.query-backups summary,.query-edit-section summary,.query-provenance summary{cursor:pointer;min-height:44px;padding-block:var(--space-12);font-size:var(--text-sm);font-weight:500}.query-detail-nav{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-12);margin-bottom:var(--space-28)}.query-detail-heading{display:flex;flex-wrap:wrap;align-items:start;justify-content:space-between;gap:var(--space-16);margin-bottom:var(--space-16)}.query-detail-heading h1{flex:1 1 260px;min-width:0}.query-provenance{margin-bottom:var(--space-20)}.query-edit-section{margin-top:var(--space-28);border-top:1px solid var(--color-rule)}.query-edit-section>details{padding-block:var(--space-12);border-bottom:1px solid var(--color-rule)}.query-edit-section #query-add-panel>.field{max-width:680px}.query-backups input[type=file]{max-width:100%;font-size:var(--text-sm)}.query-backups .field{min-width:0;flex:1 1 240px}.query-backups .actions{align-items:end}.query-backups p{margin-top:var(--space-12)}#checklist-result .species-avatar{width:44px;height:44px;min-height:44px;flex-basis:44px}#checklist-result .species-name-cell{gap:var(--space-12);min-width:220px}
@media(min-width:768px){.manual-query{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}.saved-query-row{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto}.query-library-tools .field:first-child{flex:2 1 260px}}

.field small,.selection{min-height:1.5em}input:disabled,select:disabled,textarea:disabled{opacity:.55;cursor:not-allowed}a:active{color:var(--color-ink)}@media(prefers-reduced-motion:reduce){button:active,.button:active{transform:none}}
.species-name-cell{display:flex;align-items:center;gap:var(--space-16);min-width:0}.species-name-cell>div{min-width:0}.species-avatar{width:64px;height:64px;min-height:64px;flex:0 0 64px;padding:0;position:relative;overflow:hidden;background:var(--color-paper-2);color:var(--color-muted);font-family:var(--font-display)}.species-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:var(--color-surface)}.primary-caption{font-size:var(--text-sm);color:var(--color-accent)}.species-gallery{grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:var(--space-24)}.species-gallery .thumb-button{aspect-ratio:1.25;min-height:180px}.species-artwork-section{margin-top:var(--space-24)}.artwork-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-12);margin-bottom:var(--space-24)}.artwork-heading h3{margin-bottom:var(--space-8)}.artwork-heading p{margin-bottom:0}.artwork-filename{font-size:var(--text-sm);font-weight:500;margin:var(--space-12) 0 var(--space-4);overflow-wrap:anywhere}.artwork-annotation{margin-bottom:var(--space-12);min-height:1.5em}.pin-artwork{width:100%}.pin-artwork.primary:disabled{opacity:1;cursor:default}.is-primary .thumb-button{outline:2px solid var(--color-accent);outline-offset:2px}.species-reference{border-top:1px solid var(--color-rule);margin-top:var(--space-32);padding-top:var(--space-16)}.species-reference summary{min-height:44px;cursor:pointer;font-weight:500}.species-reference .metadata{margin-top:var(--space-16)}
.country-list-builder{margin-block:var(--space-28)}.country-list-controls{display:flex;flex-wrap:wrap;align-items:end;gap:var(--space-16);margin-block:var(--space-16)}.country-list-controls .field{margin:0;flex:1 1 230px}.country-list-controls .checkline{align-items:center;margin:0;min-height:44px;flex:1 1 230px}.country-list-controls .checkline input{margin:0}.country-single{border-top:1px solid var(--color-rule);padding-top:var(--space-24);margin-top:var(--space-32)}.country-single>summary{font-family:var(--font-display);font-size:var(--text-xl);cursor:pointer;margin-bottom:var(--space-24)}.country-table-wrap{overflow:auto;max-height:65vh;border:1px solid var(--color-rule);border-radius:var(--radius-sm)}.country-species-table{width:100%;border-collapse:collapse;font-size:var(--text-sm);text-align:left}.country-species-table th,.country-species-table td{padding:var(--space-12) var(--space-16);border-bottom:1px solid var(--color-rule);vertical-align:top}.country-species-table th{position:sticky;top:0;background:var(--color-paper-2);z-index:1;white-space:nowrap}.country-species-table td:first-child{min-width:220px}.country-species-table td p{margin:var(--space-4) 0}.country-species-table td:nth-child(2),.country-species-table td:nth-child(3){font-variant-numeric:tabular-nums}.country-species-table .list-title{font-size:var(--text-sm)}
.checklist-panel{margin-block:var(--space-24)}.checklist-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--space-16);margin-top:var(--space-24)}.checklist-panel textarea{width:100%}.checklist-panel input[type=file]{max-width:100%;font-size:var(--text-sm)}.checklist-panel .stats{flex-wrap:wrap;margin-top:var(--space-24)}.checklist-panel td{overflow-wrap:anywhere}.checklist-panel #checklist-result{scroll-margin-top:var(--space-24)}

.taxon-link{font:inherit;text-align:left;white-space:normal;padding:0;border:0;background:transparent;color:var(--color-accent)}.taxon-link:hover{text-decoration:underline}.subspecies-section{margin-top:var(--space-24)}.subspecies-section h3{display:flex;align-items:baseline;gap:var(--space-12);flex-wrap:wrap}.subspecies-list{max-height:320px;overflow:auto;border-block:1px solid var(--color-rule)}.subspecies-row{border-bottom:1px solid var(--color-rule)}.subspecies-row summary{padding:var(--space-12);cursor:pointer;overflow-wrap:anywhere;min-height:44px}.subspecies-row summary .small{margin-left:var(--space-12);color:var(--color-muted)}.subspecies-info{padding:0 var(--space-12) var(--space-16);font-size:var(--text-sm)}.artwork-filter{max-width:480px}.species-gallery [hidden]{display:none}.file-card h3 button{white-space:normal;text-align:left}.query-tabs button{white-space:normal}

[data-query-panel="review"] .country-layout{grid-template-columns:minmax(0,1fr)}
.query-backups button{white-space:normal;max-width:100%;text-align:center}

.auth-page{max-width:600px;margin:var(--space-40) auto;padding:var(--space-24)}.auth-page form{margin-top:var(--space-24)}#auth-error{color:var(--color-ink);min-height:1.5em}.session-controls{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-12);font-size:var(--text-sm)}.session-controls button{padding:var(--space-4) var(--space-12)}.user-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:var(--space-32)}.user-layout>section,.role-permissions-form{padding:var(--space-24);border:1px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface);min-width:0}.user-row{padding-block:var(--space-20);border-bottom:1px solid var(--color-rule);overflow-wrap:anywhere}.user-row p{font-size:var(--text-sm);color:var(--color-muted)}.user-role-form{display:flex;align-items:end;gap:var(--space-12);margin-top:var(--space-12);flex-wrap:wrap}.user-role-form label{flex:1;min-width:180px}.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-24)}.permission-grid .checkline{align-items:start;min-height:44px;font-size:var(--text-sm)}.permission-grid small{display:block;color:var(--color-muted);font-size:11px}.topbar{gap:var(--space-12);flex-wrap:wrap}#session-controls a{overflow-wrap:anywhere}.auth-page h1{overflow-wrap:anywhere}@media(max-width:1000px){.permission-grid{grid-template-columns:1fr}.user-layout{grid-template-columns:1fr}}@media(max-width:480px){.auth-page{margin:var(--space-16) auto;padding:var(--space-16)}.session-controls{font-size:12px}.session-controls a{max-width:180px}.user-layout>section,.role-permissions-form{padding:var(--space-16)}}

.checklist-subspecies td:first-child{padding-left:2.5rem;border-left:3px solid var(--color-border,#d8d9ce)}
.checklist-subspecies td:first-child>strong{font-style:italic;font-weight:500;display:block}
.taxon-rank{display:block;font-size:.72rem;letter-spacing:.025em;color:var(--color-muted,#627267);margin-bottom:.35rem}
.checklist-parent-context td{background:var(--color-surface,#f3f1e9);padding:.65rem 1rem}
.source-row-notes{margin-top:.5rem;font-size:.78rem;max-width:32rem}
.source-row-notes p{white-space:pre-line;overflow-wrap:anywhere}
.pagination{flex-wrap:wrap;gap:16px 24px;border-top:1px solid var(--color-rule);padding-top:16px;justify-content:space-between}
.pagination-settings,.pagination-navigation,.pagination-jump{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0}
.pagination label{display:flex;align-items:center;gap:8px;margin:0;font-size:12px;color:var(--color-muted)}
.pagination select{width:auto;min-width:68px;margin:0}
.pagination input{width:72px;margin:0}
.pagination button{min-width:36px;min-height:36px;padding:6px 10px}
.pagination button[aria-current="page"]{background:var(--color-accent);color:var(--color-surface);border-color:var(--color-accent)}
.pagination-range{font-size:12px;color:var(--color-muted)}
.pagination-gap{padding:0 3px;color:var(--color-muted)}
.species-gallery [hidden],.saved-query-list [hidden],.subspecies-list [hidden],.user-row[hidden],.saved-query-row[hidden]{display:none!important}
@media(max-width:640px){.pagination{align-items:flex-start;flex-direction:column}.pagination-navigation{gap:4px}.pagination button{min-width:32px;padding-inline:8px}}
/* File editing: annotations and production work stay beside the taxonomy picker. */
.file-annotation-field{margin-top:24px}.file-annotation-field textarea{min-height:110px}
.file-editorial{border-top:1px solid var(--color-rule);margin-top:24px;padding-top:20px}.file-editorial h3{margin:0 0 16px}.file-editorial fieldset{padding:0;border:0;min-width:0}.file-editorial textarea{min-height:85px}
#file-suggestions{max-height:440px;max-height:min(440px,50dvh);overscroll-behavior:contain}
.catalog-controls{container:catalog-controls / inline-size}
.filters.catalog-filters{grid-template-columns:minmax(0,1fr);align-items:end}
.catalog-filters>div{min-width:0}.catalog-filters label{white-space:nowrap}
.filters.catalog-filters .filter-search{grid-column:auto}
@container catalog-controls (min-width:560px){.filters.catalog-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container catalog-controls (min-width:760px){.filters.catalog-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@container catalog-controls (min-width:1080px){.filters.catalog-filters{grid-template-columns:minmax(220px,1.6fr) minmax(200px,1.2fr) repeat(4,minmax(150px,1fr))}}
.badge.excluded{background:var(--color-error);color:var(--color-accent-ink)}.file-card .badge{margin-top:5px}
#file-history p{padding-bottom:8px;border-bottom:1px solid var(--color-rule)}
/* Catalogue views respond to the available content width, including the sidebar. */
.compact-view-icon{width:18px;height:18px;fill:currentColor;vertical-align:middle}
.catalog-results{container-type:inline-size}
.gallery-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}
.gallery-compact .thumb-button{min-height:0;aspect-ratio:1.25}
.gallery-compact .file-card h3{font-size:var(--text-sm)}
.gallery-compact .thumb-caption{font-size:11px}
.catalog-list{display:grid;grid-template-columns:minmax(0,1fr);column-gap:32px}
.catalog-list-item{display:flex;align-items:flex-start;gap:16px;min-width:0;padding:16px 0;border-bottom:1px solid var(--color-rule)}
.catalog-list-thumb{flex:0 0 76px;min-width:0}
.catalog-list-thumb .thumb-button{width:76px;height:76px;min-height:76px;aspect-ratio:1;border:1px solid var(--color-rule)}
.catalog-list-thumb .file-ext,.catalog-list-thumb .thumb-caption{display:none}
.catalog-list-thumb .thumb-placeholder{padding:4px}.catalog-list-thumb .file-monogram{font-size:24px}
.catalog-list-copy{min-width:0;flex:1}.catalog-list-copy .list-title{font-size:var(--text-sm)}
.catalog-list-copy p{margin:4px 0;color:var(--color-muted);overflow-wrap:anywhere}
.catalog-list-folder{font-size:12px}
.catalog-list-species{display:block;border:0;padding:0;min-height:0;background:transparent;color:var(--color-accent);font-size:var(--text-sm);text-align:left;white-space:normal;overflow-wrap:anywhere}
.catalog-list-status{margin-top:8px;display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center}
.catalog-list-status .small{flex-basis:100%}
@container (min-width:540px){.gallery-compact{grid-template-columns:repeat(3,minmax(0,1fr))}}
@container (min-width:760px){.gallery-compact{grid-template-columns:repeat(4,minmax(0,1fr))}}
@container (min-width:1000px){.catalog-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container (min-width:1080px){.gallery-compact{grid-template-columns:repeat(6,minmax(0,1fr))}}
@container (max-width:319px){.gallery-compact{grid-template-columns:minmax(0,1fr)}.catalog-list-thumb{flex-basis:60px}.catalog-list-thumb .thumb-button{width:60px;height:60px;min-height:60px}.catalog-list-item{gap:12px}}
