/* Pantanal Fungi | Biblioteca M1 — direção editorial e navegação acessível */
:root {
  --bg:#f6f3ea; --paper:#fffef8; --ink:#213c31; --muted:#62766c;
  --green:#183c30; --green2:#2c5742; --copper:#b56d43;
  --line:#dce2d8; --shade:#eaf0e8;
}
html {scroll-padding-top:90px}
body {font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:var(--bg)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible {
  outline:3px solid #cf9556;outline-offset:3px
}
.skip-link {position:fixed;top:-100px;left:12px;z-index:100;background:#fff;color:#123e2b;padding:11px 16px;border-radius:10px;font-weight:800}
.skip-link:focus {top:10px}
.intro {
  position:relative;overflow:hidden;
  background:radial-gradient(ellipse at 88% 10%,#537458 0%,transparent 34%),linear-gradient(132deg,#102c24 0%,#234e3a 78%,#19392f 100%);
  padding:70px max(5vw,20px) 62px;border-color:#ad7047
}
.intro:after {
  content:"";pointer-events:none;position:absolute;right:-110px;bottom:-225px;width:670px;height:670px;opacity:.21;border:1px solid #d1c6a7;border-radius:50%;
  box-shadow:0 0 0 66px #ffffff09,0 0 0 67px #d9cfb550,0 0 0 145px #ffffff05,0 0 0 146px #d9cfb550
}
.intro .wrap {position:relative;z-index:1;max-width:1320px}
.intro .eyebrow {color:#e9c9a3;letter-spacing:.17em}
.intro h1 {font-family:Georgia,"Times New Roman",serif;font-weight:500;line-height:1.06;letter-spacing:-.05em;font-size:clamp(2.8rem,6vw,5.4rem);max-width:820px;margin:18px 0}
.intro .lead {max-width:720px;font-size:clamp(1rem,1.6vw,1.16rem);line-height:1.65}
.hero-actions {display:flex;flex-wrap:wrap;gap:11px;margin:28px 0 22px}
.hero-btn {border:1px solid #efe2c4;background:#efe2c4;color:#163b2d;padding:13px 20px;border-radius:100px;font-weight:800;transition:transform .15s,background .15s}
.hero-btn:hover {transform:translateY(-2px);background:#fff8e8}
.hero-btn.outline {background:transparent;border-color:#8fa796;color:#f5f0e6}
.hero-btn.outline:hover {background:#ffffff1e}
.intro .pills {margin-top:24px;gap:8px}
.intro .pill {border-radius:30px;background:#ffffff0d;border-color:#ffffff27}
.navbg {top:0;border-color:#d5dfd3;background:#f9f7f1f2;box-shadow:0 4px 19px #123d2510}
.nav.wrap {max-width:1320px;gap:5px;padding:10px 4vw}
#nav {display:flex;align-items:center;gap:6px;min-width:max-content}
#nav button {flex:none}
.site-brand {display:flex;flex:none;align-items:center;gap:10px;margin-right:18px;white-space:nowrap;color:var(--green);font-size:.79rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.brand-glyph {display:grid;place-items:center;width:37px;height:37px;background:var(--green);border-radius:11px;color:#e7d8ba;font-family:Georgia,serif;font-size:1.25rem;font-weight:400;letter-spacing:-.12em;padding-right:3px}
.nav button {font-size:.85rem;border-radius:30px;padding:10px 14px}
.nav button.active {background:#244c38}
.nav button[aria-selected="true"] {background:var(--green);color:#fff}
main {max-width:1320px;padding-top:40px}
section h2 {font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(1.9rem,3.6vw,3rem);line-height:1.14;color:var(--green);letter-spacing:-.045em}
.standfirst {font-size:1.04rem;line-height:1.7;margin-top:10px;margin-bottom:22px}
.kicker {font-size:.73rem;text-transform:uppercase;letter-spacing:.18em;color:#a06541;font-weight:850;margin-bottom:10px}
.tiles {gap:14px}
.tile {border-radius:18px;box-shadow:0 7px 32px #1739290b}
.tile .num {font-family:Georgia,serif;font-size:2.2rem;font-weight:500}
.panel,.card,.checkgroup,.step {border-color:#e2e5dc;border-radius:18px;box-shadow:0 5px 26px #17392909}
.card {transition:box-shadow .2s,transform .2s}
.card:hover {transform:translateY(-2px);box-shadow:0 14px 28px #17392915}
.card h3 {line-height:1.3}
.tag {font-weight:680}
.topic-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0 32px}
.topic-card {display:flex;flex-direction:column;align-items:flex-start;text-align:left;justify-content:space-between;min-height:145px;gap:14px;
  padding:20px;background:var(--paper);border:1px solid var(--line);border-radius:18px;color:var(--green);font-weight:800;box-shadow:0 5px 22px #1739290a}
.topic-card:hover {border-color:#94b49c;background:#f3f7ee}
.topic-icon {font-size:1.6rem;line-height:1}
.topic-label {font-size:1.05rem;line-height:1.25}
.topic-next {font-size:.8rem;font-weight:650;color:#637968}
.search-tools {display:flex;flex-wrap:wrap;gap:7px;margin-top:6px;margin-bottom:18px}
.search-tools button {background:#e6ede4;color:#28543a;border:1px solid #d1ddd1;padding:8px 12px;border-radius:20px;font-size:.82rem;font-weight:750}
.search-tools button:hover {background:#d4e5d4}
.toolbar {grid-template-columns:minmax(180px,2fr) minmax(130px,1fr) 140px 170px}
.toolbar .field input,.toolbar .field select {min-height:48px}
.results-bar {display:flex;justify-content:space-between;align-items:center;gap:12px;margin:12px 0 18px}
.results-bar .results {margin:0}
.action.subtle {background:transparent;border-color:#c9d6cc}
.action[hidden], #loadMore[hidden] {display:none}
.card-actions {display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.link-small {border:1px solid #d5e0d4;background:transparent;color:#315c45;border-radius:9px;font-size:.78rem;font-weight:750;padding:7px 10px}
.link-small:hover {background:#e7eee5}
.checklist-summary {margin:13px 0 23px;padding:17px 19px;background:#e8eee5;border:1px solid #cadaca;border-radius:14px}
.progress-track {height:9px;background:#cdd9ce;overflow:hidden;border-radius:99px;margin-top:11px}
.progress-value {display:block;width:0;height:100%;border-radius:99px;background:#36694a;transition:width .18s}
.footer {background:#ebeee6;padding:28px 4vw}
.footer .wrap {max-width:1320px}
.footer-note {display:block;margin-top:7px}
.citation-rule {font-size:.81rem;color:#647567}
.to-top {position:fixed;right:18px;bottom:16px;z-index:4;width:44px;height:44px;border-radius:50%;background:var(--green);color:#fff;border:1px solid #e5e4d9;box-shadow:0 5px 20px #0c342655}
#toast {position:fixed;left:50%;bottom:26px;transform:translateX(-50%);padding:12px 18px;border-radius:12px;background:#173a2c;color:#fff;box-shadow:0 12px 24px #0b2a2066;z-index:20;font-size:.88rem}
#toast[hidden] {display:none}
@media(max-width:1100px) {
  .site-brand .brand-caption {display:none}
  .toolbar {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px) {
  .intro {padding:46px 6vw 37px}
  .intro:after {width:400px;height:400px;bottom:-150px;right:-250px}
  .intro h1 {font-size:clamp(2.4rem,10vw,3.7rem)}
  .intro .pills {gap:6px}
  .intro .pill {font-size:.74rem;padding:6px 10px}
  .hero-btn {font-size:.9rem;padding:12px 16px}
  .nav.wrap {padding:8px 4vw}
  .site-brand {margin-right:9px}
  main {padding-top:28px}
  .topic-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .topic-card {min-height:135px;padding:16px}
  .toolbar {grid-template-columns:1fr}
  .results-bar {align-items:flex-start}
  .card:hover {transform:none}
}
@media(max-width:430px) {.topic-grid {grid-template-columns:1fr 1fr;gap:9px}.topic-card {min-height:126px;padding:13px}.topic-label {font-size:.95rem}.topic-icon {font-size:1.35rem}}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after {scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
@media print {
  .hero-actions,.search-tools,.results-bar button,.card-actions,.to-top,#toast,.topic-grid,.site-brand {display:none!important}
  .intro {background:#fff;color:#111;border-bottom:1px solid #555;padding:15px}
  .intro h1,.intro .lead {color:#111}
  .intro:after {display:none}
  main section {display:block!important;break-before:page}
}


/* Ajustes pós-publicação: cabeçalho compacto nas páginas internas e navegação sem barra visível. */
.nav.wrap {
  max-width: 1600px;
  padding-inline: clamp(16px, 2vw, 30px);
  overflow: visible;
}
#nav {
  flex: 1 1 auto;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
  overscroll-behavior-inline: contain;
}
#nav::-webkit-scrollbar { display: none; }
.site-brand { margin-right: 12px; }

body.route-internal .intro { padding: 19px clamp(18px, 4vw, 54px) 21px; }
body.route-internal .intro .wrap { max-width: 1440px; }
body.route-internal .intro .eyebrow { font-size: .69rem; }
body.route-internal .intro h1 {
  font-size: clamp(1.6rem, 2.8vw, 2.2rem);
  line-height: 1.2;
  margin: 6px 0 0;
  max-width: none;
}
body.route-internal .intro .lead,
body.route-internal .intro .hero-actions,
body.route-internal .intro .pills { display: none; }
body.route-internal .intro:after { opacity: .08; }
body.route-internal main { padding-top: 30px; }
@media(max-width:700px) {
  .nav.wrap { padding-inline: 12px; }
  body.route-internal .intro { padding: 17px 19px 20px; }
  body.route-internal .intro h1 { font-size: 1.6rem; }
}


/* M4 — Cartões de fontes bibliográficas e seleção de origem. */
.source-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:14px;margin:20px 0 38px; }
.source-card {display:flex;flex-direction:column;align-items:flex-start;gap:11px;padding:23px;background:#fffdf8;border:1px solid var(--line);border-radius:17px;box-shadow:0 6px 24px #1739290a;}
.source-card h3 {font-family:Georgia,serif;font-size:1.25rem;font-weight:550;line-height:1.32;color:var(--green);}
.source-card p {font-size:.91rem;color:var(--muted);line-height:1.6;margin:0;}
.source-card .meta {color:var(--muted);font-size:.78rem;}
.source-card .link-small {margin-top:auto;}
.source-label {color:#a35e35;font-weight:850;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;}
@media(min-width:1050px) {.toolbar {grid-template-columns:minmax(170px,1.9fr) minmax(170px,1.2fr) minmax(145px,1fr) 125px 155px;}}
