/* ARBOO — Manual do Arborista (manual aberto, narrado). Complementa ../arboo-publico.css */
.mn-body{padding-bottom:calc(96px + env(safe-area-inset-bottom))}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.mn-brand-sub{font:600 13px/1 "Public Sans",system-ui,sans-serif;color:var(--muted);margin-left:6px;letter-spacing:.02em}
.mn-wrap{max-width:1180px;margin:auto;padding:22px 20px 40px}
.mn-hero{padding:30px 30px 26px}
.mn-hero h1{margin-bottom:10px}
.mn-hero-acoes{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px;position:relative;z-index:1}
.mn-btn-hero{min-height:52px;padding:12px 20px;font-size:15px;border-radius:14px;background:#fff;color:var(--green2);border-color:#fff}
.mn-btn-hero svg{width:20px;height:20px;fill:currentColor;flex:none}
.mn-btn-hero.ghost{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.38)}
.mn-btn-hero.ghost svg{fill:none;stroke:currentColor;stroke-width:1.6}
.mn-numeros{list-style:none;display:flex;flex-wrap:wrap;gap:6px 20px;margin:20px 0 0;padding:16px 0 0;border-top:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.78);font-size:13.5px;position:relative;z-index:1}
.mn-numeros b{color:#fff;font:600 19px/1 "Fraunces",Georgia,serif;margin-right:4px}

.mn-grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:20px;align-items:start}
.mn-leitor{padding:24px 26px 22px}
.mn-trilha{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--green)}
.mn-leitor h2{font-size:clamp(26px,3.4vw,36px);margin:6px 0 4px}
.mn-cient{font-style:italic;color:var(--muted);font-size:15px}
.mn-l-meta{color:var(--muted);font-size:13px;margin-top:4px}
.mn-foto{margin:16px 0 0;border-radius:16px;overflow:hidden;background:#e9ece4;position:relative}
.mn-foto img{display:block;width:100%;height:clamp(200px,38vw,360px);object-fit:cover;transition:opacity .35s}
.mn-foto img.troca{opacity:.25}
.mn-foto figcaption{position:absolute;left:0;right:0;bottom:0;padding:18px 12px 7px;font-size:11px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.55))}
.mn-foto figcaption a{color:#fff}
.mn-foto .mn-foto-cat{position:absolute;top:10px;left:10px;background:rgba(23,63,49,.85);color:#fff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:4px 9px;border-radius:99px}
.mn-l-acoes{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 4px}
.mn-l-acoes .ap-btn{min-height:46px}
.mn-l-acoes svg{width:18px;height:18px;fill:currentColor}
.mn-texto{margin-top:14px}
.mn-p{font-size:17px;line-height:1.72;margin:0 0 4px;padding:10px 14px;border-radius:12px;border-left:3px solid transparent;cursor:pointer;transition:background .25s,border-color .25s;color:#26352a}
.mn-p:hover{background:#f3f5ef}
.mn-p.lendo{background:var(--soft);border-left-color:var(--green);color:var(--ink)}
.mn-p.mn-cab{font-size:13px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding-top:4px;padding-bottom:4px}
.mn-p.mn-intro{font-style:italic;color:#3d4d41}
.mn-l-nav{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}
.mn-viz{display:block;border:1px solid var(--line);border-radius:14px;padding:12px 14px;text-decoration:none;color:var(--ink);font-weight:700;font-size:14.5px;line-height:1.35;background:#fff}
.mn-viz small{display:block;font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:3px}
.mn-viz.prox{text-align:right;grid-column:2}
.mn-viz:hover{border-color:var(--green)}
.mn-gancho{margin-top:22px;border-radius:16px;padding:18px 18px 16px;background:linear-gradient(135deg,#eef5ef,#f8f3e4);border:1px solid #dce7da}
.mn-gancho b{font:600 19px/1.25 "Fraunces",Georgia,serif;display:block}
.mn-gancho p{margin:6px 0 12px;color:#425145;font-size:14.5px}
.mn-gancho-acoes{display:flex;flex-wrap:wrap;gap:8px}

.mn-sumario{position:sticky;top:76px;max-height:calc(100vh - 190px);overflow:auto;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);overscroll-behavior:contain}
.mn-sum-topo{position:sticky;top:0;background:#fff;z-index:2;padding:16px 16px 10px;border-bottom:1px solid var(--line)}
.mn-sum-topo h2{font-size:22px;margin:0 0 10px}
.mn-busca input{width:100%;min-height:46px;border:1px solid var(--line);border-radius:12px;padding:10px 14px;font-size:15px;background:#fbfaf6}
.mn-busca input:focus{outline:2px solid var(--green);outline-offset:1px}
.mn-progresso{margin-top:9px;font-size:12.5px;color:var(--muted)}
.mn-progresso i{display:block;height:5px;border-radius:9px;background:#e6eae1;margin-top:5px;overflow:hidden}
.mn-progresso i span{display:block;height:100%;background:var(--green);border-radius:9px}
.mn-sum-vazio{padding:18px 16px;color:var(--muted);font-size:14px}
.mn-parte{border-bottom:1px solid var(--line)}
.mn-parte>summary{list-style:none;display:flex;gap:12px;align-items:center;padding:14px 16px;cursor:pointer;min-height:56px}
.mn-parte>summary::-webkit-details-marker{display:none}
.mn-parte>summary:after{content:"";margin-left:auto;width:9px;height:9px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);transition:transform .2s;flex:none}
.mn-parte[open]>summary:after{transform:rotate(225deg)}
.mn-pnum{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--soft);color:var(--green2);font:700 15px/1 "Fraunces",Georgia,serif}
.mn-ptit{font-weight:800;font-size:15px;line-height:1.25}
.mn-ptit small{display:block;font-weight:500;color:var(--muted);font-size:12.5px;margin-top:2px}
.mn-faixas{list-style:none;margin:0;padding:0 8px 10px}
.mn-grupo{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--gold);padding:12px 10px 4px}
.mn-fx{display:flex;gap:10px;align-items:flex-start;border-radius:12px;padding:2px}
.mn-fx a{flex:1;min-width:0;text-decoration:none;color:var(--ink);padding:9px 10px;border-radius:10px;display:block}
.mn-fx a:hover{background:#f3f5ef}
.mn-fx-t{display:block;font-weight:700;font-size:14.5px;line-height:1.3}
.mn-fx-t i{font-weight:400;color:var(--muted);font-size:12.5px}
.mn-fx-r{display:block;color:var(--muted);font-size:12.5px;line-height:1.4;margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mn-fx-d{flex:none;font-size:12px;color:var(--muted);padding:11px 8px 0 0;white-space:nowrap}
.mn-fx.atual{background:var(--soft)}
.mn-fx.atual .mn-fx-t{color:var(--green2)}
.mn-fx.ouvida .mn-fx-d:before{content:"✓ ";color:var(--green);font-weight:900}
.mn-fx[hidden],.mn-grupo[hidden]{display:none}

.mn-footer{max-width:1180px;margin:0 auto;padding:10px 20px 30px;font-size:12.5px;color:var(--muted)}

/* player fixo */
.mn-player{position:fixed;left:0;right:0;bottom:0;z-index:40;background:rgba(23,40,30,.97);color:#fff;backdrop-filter:blur(14px);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -8px 30px rgba(0,0,0,.18)}
.mn-pl-barra input{display:block;width:100%;margin:0;height:14px;-webkit-appearance:none;appearance:none;background:transparent;cursor:pointer}
.mn-pl-barra input::-webkit-slider-runnable-track{height:4px;background:linear-gradient(90deg,#8fd1a8 var(--p,0%),rgba(255,255,255,.18) var(--p,0%))}
.mn-pl-barra input::-moz-range-track{height:4px;background:rgba(255,255,255,.18)}
.mn-pl-barra input::-moz-range-progress{height:4px;background:#8fd1a8}
.mn-pl-barra input::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#fff;margin-top:-5px}
.mn-pl-barra input::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#fff;border:0}
.mn-pl-in{max-width:1180px;margin:auto;display:flex;align-items:center;gap:14px;padding:6px 16px 10px}
.mn-pl-info{flex:1;min-width:0}
.mn-pl-info b{display:block;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mn-pl-info small{display:block;font-size:12px;color:rgba(255,255,255,.66);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mn-pl-ctl{display:flex;align-items:center;gap:4px}
.mn-ic,.mn-vel{width:46px;height:46px;border:0;border-radius:50%;background:transparent;color:#fff;display:grid;place-items:center}
.mn-ic:hover,.mn-vel:hover{background:rgba(255,255,255,.1)}
.mn-ic svg{width:24px;height:24px;fill:currentColor}
.mn-ic text{fill:currentColor}
.mn-vel{width:auto;min-width:46px;border-radius:12px;font-weight:800;font-size:14px;padding:0 8px}
.mn-play{width:58px;height:58px;border:0;border-radius:50%;background:#fff;color:var(--green2);display:grid;place-items:center;margin:0 4px}
.mn-play svg,.mn-carro-play svg{width:28px;height:28px;fill:currentColor}
.i-pause{display:none}
.tocando .i-play{display:none}.tocando .i-pause{display:block}
.mn-play:focus-visible,.mn-ic:focus-visible,.mn-vel:focus-visible{outline:2px solid #8fd1a8;outline-offset:2px}

/* modo carro */
.mn-carro{position:fixed;inset:0;z-index:60;background:#0f1d16;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:24px 20px calc(24px + env(safe-area-inset-bottom));text-align:center}
.mn-carro[hidden]{display:none}
.mn-carro-x{position:absolute;top:calc(14px + env(safe-area-inset-top));right:14px;min-height:48px;padding:0 18px;border-radius:99px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;font-weight:800;font-size:15px}
.mn-carro-parte{font-size:14px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:#8fd1a8}
.mn-carro-tit{font:600 clamp(28px,7vw,52px)/1.12 "Fraunces",Georgia,serif;max-width:900px}
.mn-carro-tempo{font-size:18px;color:rgba(255,255,255,.7);font-variant-numeric:tabular-nums}
.mn-carro-ctl{display:flex;align-items:center;justify-content:center;gap:22px;width:100%}
.mn-carro-ctl button{min-width:92px;min-height:92px;border-radius:50%;border:2px solid rgba(255,255,255,.35);background:transparent;color:#fff;font-size:24px;font-weight:800}
.mn-carro-ctl .mn-carro-play{width:min(36vw,170px);height:min(36vw,170px);background:#fff;color:#0f1d16;border:0;display:grid;place-items:center}
.mn-carro-play svg{width:46%;height:46%}
.mn-carro-ctl.dois button{border-radius:20px;min-height:72px;flex:1;max-width:300px;font-size:18px}
.mn-carro-vel{min-height:56px;padding:0 26px;border-radius:99px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;font-weight:800;font-size:17px}
.mn-carro-aviso{max-width:520px;margin:0;color:rgba(255,255,255,.55);font-size:14px}

@media (max-width:980px){
  .mn-grid{grid-template-columns:1fr}
  .mn-sumario{position:static;max-height:none;overflow:visible;order:2}
  .mn-sum-topo{position:sticky;top:61px;border-radius:18px 18px 0 0}
  .mn-sum-primeiro .mn-sumario{order:-1}
}
@media (max-width:640px){
  .mn-wrap{padding:14px 12px 30px}
  .mn-hero{padding:24px 20px 20px;border-radius:20px}
  .mn-hero p{font-size:15px}
  .mn-btn-hero{flex:1 1 100%}
  .mn-btn-hero.ghost{flex:1 1 calc(50% - 5px)}
  .mn-numeros{gap:4px 14px;font-size:12.5px}
  .mn-numeros b{font-size:16px}
  .mn-hide-sm{display:none}
  .mn-leitor{padding:18px 14px 16px;border-radius:16px}
  .mn-p{font-size:16.5px;padding:9px 10px}
  .mn-l-acoes .ap-btn{flex:1 1 auto}
  .mn-l-nav{grid-template-columns:1fr}
  .mn-viz.prox{grid-column:1}
  .mn-pl-in{padding:2px 8px 8px;gap:2px;flex-wrap:wrap}
  .mn-pl-info{flex:1 1 100%;text-align:center;padding:0 6px}
  .mn-pl-info b{font-size:13.5px}
  .mn-pl-info small{display:none}
  .mn-pl-ctl{width:100%;justify-content:space-between}
  .mn-body{padding-bottom:calc(118px + env(safe-area-inset-bottom))}
  .mn-carro-ctl{gap:12px}
  .mn-carro-ctl button{min-width:76px;min-height:76px;font-size:20px}
}
@media (max-width:380px){.mn-hide-xs{display:none}}
@media (prefers-reduced-motion:reduce){.mn-p,.mn-foto img,.mn-parte>summary:after{transition:none}html{scroll-behavior:auto}}

/* destaques com números (ganchos) */
.mn-hero-num{color:#fff;font-weight:800}
.mn-destaques{margin:0 0 20px}
.mn-dest-t{font-size:22px;margin:0 0 10px}
.mn-dest-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.mn-dest{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow);transition:border-color .2s,transform .2s}
.mn-dest:hover{border-color:var(--green);transform:translateY(-2px)}
.mn-dest b{font:600 34px/1 "Fraunces",Georgia,serif;color:var(--green2)}
.mn-dest span{font-size:14px;line-height:1.45;color:#3d4d41;flex:1}
.mn-dest small{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:800;color:var(--green)}
.mn-dest small svg{width:14px;height:14px;fill:currentColor}
@media (max-width:980px){.mn-dest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.mn-dest-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -12px;padding:2px 12px 8px}.mn-dest{flex:0 0 78%;scroll-snap-align:start}.mn-dest b{font-size:30px}}
@media (prefers-reduced-motion:reduce){.mn-dest{transition:none}}

.mn-fontes{margin:14px 0 0;border:1px solid var(--line);border-radius:12px;padding:10px 14px;background:#fbfaf6;font-size:13.5px}
.mn-fontes summary{cursor:pointer;font-weight:800;color:var(--muted)}
.mn-fontes ul{margin:8px 0 0;padding-left:18px}
.mn-fontes li{margin:3px 0;overflow-wrap:anywhere}

/* faixas em duas vozes */
.mn-p.mn-vn::before,.mn-p.mn-vi::before{display:block;font:800 10.5px/1.2 "Public Sans",system-ui,sans-serif;letter-spacing:.09em;text-transform:uppercase;margin-bottom:3px}
.mn-p.mn-vn::before{content:"Narrador";color:var(--muted)}
.mn-p.mn-vi::before{content:"Instrutora";color:var(--gold)}
.mn-p.mn-vi{background:#fbf6ea}
.mn-p.mn-vi.lendo{background:#f5ead0;border-left-color:var(--gold)}

/* faixas narradas na voz do Daniel (ElevenLabs): uma voz só, sem rótulo Narrador/Instrutora */
.mn-voz-daniel .mn-p.mn-vn::before,.mn-voz-daniel .mn-p.mn-vi::before{content:none;display:none}
#l-voz{font-weight:700;color:var(--leaf,#2E7D4F)}

/* v95 — fase de gravação: faixa trancada ("em produção") */
.mn-trava{margin-top:16px;border-radius:16px;padding:18px 18px 16px;background:linear-gradient(135deg,#f8f3e4,#eef5ef);border:1px solid #e3dcc4}
.mn-trava[hidden]{display:none}
.mn-trava-tit{display:flex;align-items:center;gap:8px;font:600 19px/1.25 "Fraunces",Georgia,serif;color:#5a4a1c}
.mn-trava-tit svg{width:20px;height:20px;fill:currentColor;flex:none}
.mn-trava p{margin:8px 0 0;color:#425145;font-size:14.5px;line-height:1.5}
.mn-trava .mn-trava-res{color:var(--ink);font-weight:600}
.mn-trava-acoes{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.mn-trava-acoes .ap-btn{white-space:normal;text-align:center}
.mn-texto[hidden],.mn-l-acoes [hidden]{display:none}
.mn-fx.trancada .mn-fx-t{color:#5d6a60}
.mn-fx.trancada.atual .mn-fx-t{color:var(--green2)}
.mn-fx-tr{display:inline-flex;align-items:center;gap:4px;color:#8a7a45}
.mn-fx-tr svg{width:12px;height:12px;fill:currentColor}
@media (max-width:420px){.mn-fx-tr span{display:none}}

/* v95b — sinalização do que está no ar */
.mn-filtro{display:flex;gap:6px;margin-top:10px;background:#f1f4ee;border-radius:12px;padding:4px}
.mn-filtro button{flex:1;min-height:38px;border:0;border-radius:9px;background:transparent;font:700 13.5px/1.2 "Public Sans",system-ui,sans-serif;color:#4c5a50;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.mn-filtro button b{font-weight:800;font-size:12px;background:#e2e8de;border-radius:20px;padding:2px 7px}
.mn-filtro button[aria-pressed="true"]{background:#fff;color:var(--green2);box-shadow:0 1px 3px rgba(23,63,49,.18)}
.mn-filtro button[aria-pressed="true"] b{background:var(--green);color:#fff}
.mn-filtro button i{width:8px;height:8px;border-radius:50%;background:#2fa36b;box-shadow:0 0 0 3px rgba(47,163,107,.2)}
.mn-filtro-dica{margin:7px 2px 0;font-size:12.5px;color:var(--muted);line-height:1.4}
.mn-so-ar:not(.buscando) .mn-fx.trancada:not(.atual),.mn-so-ar:not(.buscando) .mn-grupo{display:none}
.mn-so-ar:not(.buscando) .mn-parte[data-ar="0"]:not(:has(.atual)){display:none}
.mn-ar-pill{display:inline-block;font-weight:800;font-size:11px;letter-spacing:.02em;text-transform:uppercase;color:#fff;background:#2fa36b;border-radius:20px;padding:1px 7px;vertical-align:1px}
.mn-fx-ok{color:var(--green2);font-weight:700;display:inline-flex;align-items:center;gap:3px}
.mn-fx-ok svg{width:11px;height:11px;fill:currentColor}
.mn-fx.ouvida .mn-fx-ok svg{display:none}
.mn-num-ar a{color:inherit;text-decoration:none;border-bottom:1px dashed rgba(255,255,255,.55)}
.mn-num-ar b{color:#9fe0b9}
