:root{--bib-bg:#f7f5f0;--bib-paper:#fff;--bib-ink:#1b1d1b;--bib-muted:#737875;--bib-line:#dedfdc;--bib-soft:#eeede9;--bib-accent:#9d4f19;--bib-shadow:0 18px 55px -38px rgba(36,28,20,.34);color-scheme:light}
[data-tema="escuro"]{--bib-bg:#15171a;--bib-paper:#1e2126;--bib-ink:#e8e4dc;--bib-muted:#9298a0;--bib-line:#343941;--bib-soft:#262a30;--bib-accent:#ff9f1c;--bib-shadow:0 18px 55px -32px rgba(0,0,0,.8);color-scheme:dark}
html,body{min-height:100%;background:var(--bib-bg);color:var(--bib-ink)}body{padding-bottom:calc(82px + env(safe-area-inset-bottom));overscroll-behavior-y:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.bib-topo{position:sticky;z-index:40;top:0;display:flex;align-items:center;justify-content:space-between;min-height:86px;padding:calc(12px + env(safe-area-inset-top)) max(24px,calc((100vw - 1160px)/2)) 12px;background:var(--bib-bg);background:color-mix(in srgb,var(--bib-bg) 88%,transparent);border-bottom:1px solid var(--bib-line);border-bottom-color:color-mix(in srgb,var(--bib-line) 74%,transparent);backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2)}
.bib-marca{display:flex;align-items:center;gap:12px;font:750 27px/1 var(--sans);letter-spacing:-.04em;color:#12802f}.bib-marca img{width:49px;height:49px;border-radius:13px}.bib-topo-acoes{display:flex;align-items:center;gap:12px}.bib-rede{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--bib-line);border-radius:999px;color:var(--bib-muted);font:650 10px/1 var(--sans);letter-spacing:.07em;text-transform:uppercase}.bib-rede i{width:7px;height:7px;border-radius:50%;background:var(--confirm)}.bib-rede.off i{background:var(--bib-muted)}
/* Estado de preparo para uso sem internet: verde = pronto (mesmo verde do
   "disponível offline"), vermelho = casca incompleta. Sem cor de enfeite. */
.bib-preparo{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--bib-line);border-radius:999px;font:650 10px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase}
.bib-preparo[hidden]{display:none}
.bib-preparo i{width:7px;height:7px;border-radius:50%;flex:none;background:var(--bib-muted)}
.bib-preparo.pronto{color:#237547}.bib-preparo.pronto i{background:var(--confirm)}
/* Aviso de plataforma, nao de estado: osso apagado e um fio, sem verde,
   ambar nem vermelho - o app nao esta em falha, o iPhone e que abre
   diferente. Cor aqui diluiria o vocabulario que o campo usa sob sol
   (invariante 5). */
.bib-nota{margin:0 0 14px;padding:9px 0 9px 12px;border-left:2px solid var(--bib-line);color:var(--bib-muted);font:400 12.5px/1.5 var(--sans);max-width:62ch}
.bib-nota[hidden]{display:none}
/* Variante com ação: o fio ganha o âmbar de AÇÃO que a Biblioteca já usa
   (invariante 5 — não é falha nem confirmação, é um passo a dar). */
.bib-nota-acao{border-left-color:var(--bib-accent);color:var(--bib-ink)}
.bib-nota-acao p{margin:0}
.bib-nota-acao .bib-vazio-acao{margin-top:10px}
/* Caminho para o painel dentro das Configurações. Neutro: é navegação, não
   alerta nem confirmação (invariante 5). */
.config-painel{display:flex;align-items:center;gap:12px;min-height:56px;margin:0 0 16px;padding:12px 14px;border:1px solid var(--bib-line);border-radius:14px;background:var(--bib-bg);color:var(--bib-ink)}
.config-painel[hidden]{display:none}
.config-painel svg{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.config-painel b{display:block;font:650 14px/1.2 var(--sans)}
.config-painel small{display:block;margin-top:3px;color:var(--bib-muted);font:500 11px/1.35 var(--sans)}
/* Diagnóstico: fechado por padrão, neutro, sem cor de estado. */
.config-diag{margin-top:18px;border-top:1px solid var(--bib-line);padding-top:14px}
.config-diag summary{min-height:44px;display:flex;align-items:center;color:var(--bib-muted);font:600 12px/1 var(--sans);cursor:pointer}
.config-diag pre{overflow-x:auto;margin:6px 0 10px;padding:12px;border:1px solid var(--bib-line);border-radius:11px;background:var(--bib-bg);color:var(--bib-ink);font:500 11px/1.6 var(--mono);white-space:pre-wrap}
.bib-preparo.incompleto{color:var(--danger)}.bib-preparo.incompleto i{background:var(--danger)}.bib-painel{min-height:42px;display:flex;align-items:center;padding:0 14px;border:1px solid var(--bib-line);border-radius:11px;font:650 12px/1 var(--sans)}
.biblioteca{width:min(1160px,calc(100% - 48px));margin:0 auto;padding:42px 0 40px}.bib-titulo{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:25px}.bib-titulo .eyebrow{color:var(--bib-accent)}.bib-titulo h1{margin:7px 0 0;font:740 clamp(32px,5vw,48px)/1 var(--sans);letter-spacing:-.045em}.bib-titulo>p{max-width:430px;margin:0;color:var(--bib-muted);font:400 14px/1.55 var(--sans)}
.bib-abas{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:15px;background:var(--bib-soft);margin-bottom:24px}.bib-abas button{min-height:52px;border:0;border-radius:12px;background:transparent;color:var(--bib-muted);font:680 15px/1 var(--sans);cursor:pointer}.bib-abas button[aria-selected="true"]{background:var(--bib-accent);color:#fff;box-shadow:0 8px 22px -14px rgba(106,46,10,.75)}.bib-abas button[hidden]{display:none}.bib-abas.simples{grid-template-columns:1fr}
.bib-ferramentas{display:grid;grid-template-columns:210px 240px 48px 1fr;gap:12px;align-items:center;margin-bottom:25px}.bib-select{min-width:0;height:50px;display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid var(--bib-line);border-radius:13px;background:var(--bib-paper)}.bib-select svg,.bib-buscar-botao svg{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.bib-select select{width:100%;min-width:0;border:0;background:transparent;color:var(--bib-ink);font:600 14px/1 var(--sans);outline:0}.bib-buscar-botao{width:50px;height:50px;display:grid;place-items:center;border:1px solid var(--bib-line);border-radius:13px;background:var(--bib-paper);color:var(--bib-accent);cursor:pointer}.bib-busca{grid-column:4;display:flex;height:50px;border:1px solid var(--bib-line);border-radius:13px;background:var(--bib-paper);overflow:hidden}.bib-busca[hidden]{display:none}.bib-busca input{flex:1;min-width:0;border:0;background:transparent;color:var(--bib-ink);padding:0 15px;font:500 16px/1 var(--sans);outline:0}.bib-busca input::-webkit-search-cancel-button{-webkit-appearance:none}.bib-busca button{width:48px;border:0;background:transparent;color:var(--bib-muted);font-size:24px;cursor:pointer}
.publicar-banner{position:relative;min-height:180px;display:grid;place-items:center;overflow:hidden;margin:4px 0 32px;border:1px solid #d2c3a8;border-radius:22px;background:linear-gradient(105deg,#ede0c7,#f5ecd8 55%,#c8c39e);box-shadow:var(--bib-shadow)}.publicar-banner[hidden]{display:none}.publicar-banner::before,.publicar-banner::after{content:'';position:absolute;inset:auto -5% 35% -5%;height:1px;background:#b9a679;transform:rotate(-7deg);box-shadow:0 35px #c8b58c,0 -32px #cab78f}.publicar-banner::after{transform:rotate(9deg);opacity:.65}.publicar-desenho{position:absolute;inset:0;opacity:.34}.publicar-desenho svg{width:100%;height:100%;fill:none;stroke:#886f3e;stroke-width:.6}.publicar-acao{position:relative;z-index:2;display:flex;align-items:center;gap:16px;min-width:310px;padding:20px 30px;border-radius:999px;background:linear-gradient(135deg,#a9531b,#8a3f14);color:white;box-shadow:0 14px 30px -15px rgba(73,35,10,.9)}.publicar-acao svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.publicar-acao b{display:block;font:700 17px/1.2 var(--sans)}.publicar-acao small{display:block;margin-top:4px;opacity:.78;font:500 11px/1.3 var(--sans)}
.bib-contagem{display:flex;align-items:center;justify-content:space-between;margin:0 4px 10px}.bib-contagem strong{font:700 13px/1 var(--sans)}.bib-contagem span{color:var(--bib-muted);font:550 11px/1 var(--sans)}.bib-lista{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mapa-item{position:relative;min-width:0;display:grid;grid-template-columns:108px minmax(0,1fr) 54px;align-items:center;gap:16px;padding:14px;border:1px solid var(--bib-line);border-radius:17px;background:var(--bib-paper);box-shadow:0 8px 28px -28px rgba(0,0,0,.6);transition:border-color .16s ease,background .16s ease,transform .16s ease}.mapa-item:hover{border-color:color-mix(in srgb,var(--bib-accent) 34%,var(--bib-line));background:color-mix(in srgb,var(--bib-paper) 96%,var(--bib-accent))}.mapa-item[hidden]{display:none}.mapa-abrir{position:absolute;z-index:1;inset:0;border-radius:inherit;cursor:pointer}.mapa-abrir:focus-visible{outline:3px solid color-mix(in srgb,var(--bib-accent) 65%,transparent);outline-offset:3px}.mapa-mini{width:108px;height:92px;border-radius:13px;overflow:hidden;background:var(--bib-soft)}.mapa-mini .miniatura{width:100%;height:100%;aspect-ratio:auto}.mapa-mini .miniatura::after{background:linear-gradient(135deg,rgba(255,255,255,.03),rgba(0,0,0,.12))}.mapa-info{min-width:0}.mapa-info h2{margin:0;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font:690 15px/1.3 var(--sans);letter-spacing:-.012em;text-transform:uppercase}.mapa-meta{display:flex;flex-wrap:wrap;gap:5px 9px;margin-top:8px;color:var(--bib-muted);font:520 11px/1.2 var(--sans)}.mapa-meta span+span::before{content:'•';margin-right:9px;color:var(--bib-line)}.mapa-status{display:flex;align-items:center;gap:6px;margin:8px 0 0;color:var(--bib-muted);font:550 11px/1.25 var(--sans)}.mapa-status i{width:7px;height:7px;border-radius:50%;background:var(--bib-muted);flex:none}.mapa-status.offline{color:#237547}.mapa-status.offline i{background:var(--confirm)}.mapa-status.alerta{color:var(--bib-accent)}.mapa-status.alerta i{background:var(--amber)}.mapa-status.erro{color:var(--danger)}.mapa-status.erro i{background:var(--danger)}.mapa-acoes-card{position:relative;z-index:2;display:grid;justify-items:center;align-content:center;gap:2px}.mapa-enviar,.mapa-menu{border:0;background:transparent;color:var(--bib-ink);cursor:pointer}.mapa-enviar{width:54px;height:47px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:10px;color:var(--bib-accent);font:650 9px/1 var(--sans)}.mapa-enviar svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.mapa-menu{width:40px;height:30px;border-radius:9px;display:grid;place-items:center}.mapa-enviar:hover,.mapa-enviar:focus-visible,.mapa-menu:hover,.mapa-menu:focus-visible{background:var(--bib-soft)}.mapa-menu::before{content:'•••';font:750 13px/1 var(--sans);letter-spacing:2px}.mapa-progresso{position:absolute;z-index:3;left:14px;right:14px;bottom:5px;height:3px;border-radius:99px;background:var(--bib-soft);overflow:hidden}.mapa-progresso[hidden]{display:none}.mapa-progresso i{display:block;width:0;height:100%;background:var(--amber)}.bib-vazio{grid-column:1/-1;padding:70px 24px;text-align:center;border:1px dashed var(--bib-line);border-radius:18px;color:var(--bib-muted);font:500 14px/1.6 var(--sans)}.bib-vazio b{display:block;margin-bottom:7px;color:var(--bib-ink);font-size:17px}
/* Botao dentro do estado vazio. Alvo de 48 px como todo botao aqui (luva e
   mao suja), e no ambar de ACAO que a Biblioteca ja usa - nada de verde ou
   vermelho: nao ha estado bom nem falha a comunicar, ha um caminho a
   oferecer (invariante 5). */
.bib-vazio-acao{display:inline-flex;align-items:center;min-height:48px;margin-top:14px;padding:0 20px;border:1px solid color-mix(in srgb,var(--bib-accent) 40%,var(--bib-line));border-radius:12px;background:transparent;color:var(--bib-accent);font:650 13px/1 var(--sans);cursor:pointer}
.bib-vazio-acao:hover,.bib-vazio-acao:focus-visible{background:var(--bib-soft)}
.bib-nav{position:fixed;z-index:50;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(3,1fr);min-height:72px;padding:7px max(12px,calc((100vw - 660px)/2)) calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--bib-line);background:var(--bib-paper);background:color-mix(in srgb,var(--bib-paper) 92%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.bib-nav a,.bib-nav button{min-width:0;min-height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:0;background:transparent;color:var(--bib-muted);font:600 10px/1 var(--sans);cursor:pointer}.bib-nav svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.bib-nav .ativo{color:var(--bib-accent)}
/* Colunas pelo número de itens VISÍVEIS: o Inventário some numa casca
   antiga (lista.js), e uma grade fixa deixaria um buraco na barra. */
.bib-nav{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}.bib-nav [hidden]{display:none}
/* Volta ao painel no celular: seta no canto do topo, so para quem tem sessao
   (lista.js a mostra junto do "Painel de gestao" do computador). O seletor
   :not([hidden]) evita que o display:flex vença o hidden por origem de
   cascata. Fora do celular ela nunca aparece - la o botao por extenso serve. */
.bib-volta{display:none}
@media(max-width:720px){
  /* Marca centralizada na primeira linha; o botão de voltar flutua à esquerda
     (círculo suave, o mesmo par do /painel) e os indicadores de rede/preparo
     descem para uma segunda linha — antes o rótulo "OFFLINE PRONTO" passava
     por baixo da marca. */
  /* Pílula com a palavra, não círculo com seta: num app instalado não há barra
     de navegador ao lado para dar contexto, e "‹" sozinho não diz para onde
     leva. Alvo continua com 44 px de altura (luva e mão suja). */
  .bib-volta:not([hidden]){position:absolute;left:14px;top:calc(env(safe-area-inset-top) + 11px);
    display:flex;align-items:center;gap:5px;height:44px;padding:0 13px 0 10px;
    border:1px solid var(--bib-line);border-radius:22px;background:var(--bib-soft);
    color:var(--bib-ink);font:650 13px/1 var(--sans)}
  .bib-volta svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  /* Na segunda linha há largura de sobra: o rótulo volta a aparecer (o corte
     de ≤390px era para caber ao lado da marca, e agora não é mais ao lado). */
  .bib-topo-acoes .bib-rede span,.bib-topo-acoes .bib-preparo span{display:inline}
}
@media (hover:hover){.bib-volta:hover{background:color-mix(in srgb,var(--bib-ink) 8%,var(--bib-soft))}}
.bib-scrim{position:fixed;z-index:70;inset:0;background:rgba(10,12,11,.46);backdrop-filter:blur(2px)}.bib-scrim[hidden]{display:none}.bib-folha{position:fixed;z-index:80;left:50%;bottom:0;transform:translateX(-50%);width:min(680px,100%);max-height:min(82dvh,760px);overflow:auto;padding:24px 24px calc(24px + env(safe-area-inset-bottom));border:1px solid var(--bib-line);border-bottom:0;border-radius:24px 24px 0 0;background:var(--bib-paper);box-shadow:0 -22px 70px -35px rgba(0,0,0,.65)}.bib-folha[hidden]{display:none}.folha-topo{display:flex;align-items:start;justify-content:space-between;gap:18px}.folha-topo .eyebrow{margin:0;color:var(--bib-accent)}.folha-topo h2{margin:7px 0 0;font:720 23px/1.1 var(--sans);letter-spacing:-.03em}.folha-fechar{width:46px;height:46px;border:1px solid var(--bib-line);border-radius:50%;background:var(--bib-soft);color:var(--bib-ink);font:300 27px/1 var(--sans);cursor:pointer}.folha-exp{margin:14px 0 20px;color:var(--bib-muted);font:400 13px/1.55 var(--sans)}.folha-exp.erro{color:var(--danger)}.camera-mapas,.acoes-lista{display:grid;gap:8px}.camera-opcao,.acao-opcao{width:100%;min-height:60px;display:flex;align-items:center;gap:13px;padding:10px 12px;border:1px solid var(--bib-line);border-radius:13px;background:var(--bib-bg);color:var(--bib-ink);text-align:left;cursor:pointer}.camera-opcao .mapa-mini{width:48px;height:48px;border-radius:10px}.camera-opcao b,.acao-opcao b{display:block;font:650 13px/1.25 var(--sans)}.camera-opcao span span,.acao-opcao span{color:var(--bib-muted);font:500 11px/1.3 var(--sans)}.camera-opcao>svg,.acao-opcao>svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.acao-opcao.perigo{color:var(--danger)}
.camera-livre-status{min-height:20px;margin:0 0 12px;color:#237547;font:600 11px/1.45 var(--sans)}.camera-livre-status:empty{display:none}.camera-livre-status.erro{color:var(--danger)}.camera-vinculo{margin:0 0 14px;padding:14px;border:1px solid color-mix(in srgb,var(--bib-accent) 35%,var(--bib-line));border-radius:14px;background:var(--bib-bg)}.camera-vinculo[hidden]{display:none}.camera-vinculo>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.camera-vinculo>div:first-child b{font:700 14px/1.2 var(--sans)}.camera-vinculo>div:first-child button{width:32px;height:32px;border:0;border-radius:50%;background:var(--bib-soft);color:var(--bib-ink);font-size:20px;cursor:pointer}.camera-vinculo>p{margin:3px 0 11px;color:var(--bib-muted);font:500 11px/1.45 var(--sans)}.camera-vinculo .bib-vazio{padding:24px 14px}.camera-galeria{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.camera-galeria>.bib-vazio{padding:42px 18px}.camera-foto{min-width:0;overflow:hidden;border:1px solid var(--bib-line);border-radius:15px;background:var(--bib-bg)}.camera-foto>img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--bib-soft)}.camera-foto-info{display:grid;gap:4px;padding:11px 11px 8px}.camera-foto-info b{font:650 12px/1.25 var(--sans)}.camera-foto-info span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--bib-muted);font:550 9px/1.3 var(--mono)}.camera-foto-info small{color:var(--bib-muted);font:500 9px/1.2 var(--sans)}.camera-foto-acoes{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--bib-line)}.camera-foto-acoes button{min-height:42px;padding:7px;border:0;background:transparent;color:var(--bib-accent);font:650 10px/1.2 var(--sans);cursor:pointer}.camera-foto-acoes button:first-child{border-right:1px solid var(--bib-line)}.camera-foto-acoes button.perigo{grid-column:1/-1;min-height:34px;border-top:1px solid var(--bib-line);color:var(--danger)}.camera-foto-acoes button:hover,.camera-foto-acoes button:focus-visible{background:var(--bib-soft)}.camera-galeria-nota{margin:14px 2px 0;color:var(--bib-muted);font:500 10px/1.5 var(--sans)}
/* Prévia das últimas capturas na folha da câmera; a galeria inteira é a folha-galeria. */
#folha-galeria .folha-topo{margin-bottom:16px}
.galeria-voltar{display:inline-flex;align-items:center;gap:3px;margin-bottom:5px;padding:0;border:0;background:none;color:var(--bib-accent);font:650 12px/1 var(--sans);cursor:pointer}
.galeria-voltar svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.bussola-folha{width:min(480px,100%)}.bussola-instrumento{position:relative;width:min(290px,78vw);aspect-ratio:1;margin:12px auto 18px;padding:13px;border:1px solid var(--bib-line);border-radius:50%;background:var(--bib-bg);box-shadow:inset 0 0 0 7px var(--bib-paper),0 20px 50px -38px rgba(0,0,0,.8)}.bussola-instrumento::before{content:'';position:absolute;inset:20px;border-radius:50%;background:repeating-conic-gradient(from -1deg,var(--bib-line) 0 1deg,transparent 1deg 10deg);mask:radial-gradient(circle,transparent 0 78%,#000 79%);-webkit-mask:radial-gradient(circle,transparent 0 78%,#000 79%)}.bussola-marca{position:absolute;z-index:3;left:50%;top:-3px;width:0;height:0;transform:translateX(-50%);border-left:9px solid transparent;border-right:9px solid transparent;border-top:16px solid var(--bib-accent)}.bussola-rosa{position:relative;width:100%;height:100%;border:1px solid var(--bib-line);border-radius:50%;transition:transform .18s ease-out;will-change:transform}.bussola-ponto{position:absolute;z-index:2;font:750 16px/1 var(--sans);color:var(--bib-muted)}.bussola-ponto.norte{left:50%;top:16px;transform:translateX(-50%);color:#c13f32}.bussola-ponto.sul{left:50%;bottom:16px;transform:translateX(-50%)}.bussola-ponto.leste{right:18px;top:50%;transform:translateY(-50%)}.bussola-ponto.oeste{left:18px;top:50%;transform:translateY(-50%)}.bussola-agulha{position:absolute;z-index:1;left:50%;top:24%;width:8px;height:52%;transform:translateX(-50%);background:linear-gradient(to bottom,#c13f32 0 50%,var(--bib-muted) 50%);clip-path:polygon(50% 0,100% 48%,63% 50%,63% 100%,37% 100%,37% 50%,0 48%)}.bussola-centro{position:absolute;z-index:3;left:50%;top:50%;width:18px;height:18px;transform:translate(-50%,-50%);border:4px solid var(--bib-paper);border-radius:50%;background:var(--bib-ink);box-shadow:0 0 0 1px var(--bib-line)}.bussola-leitura{text-align:center}.bussola-leitura b{display:block;font:760 38px/1 var(--mono);letter-spacing:-.04em}.bussola-leitura span{display:block;margin-top:7px;color:var(--bib-accent);font:680 15px/1 var(--sans)}.bussola-ajuda{max-width:390px;margin:20px auto 0;padding:13px;border-radius:12px;background:var(--bib-bg);color:var(--bib-muted);font:500 11px/1.55 var(--sans)}
.config-grade{display:grid;grid-template-columns:1fr 250px;gap:22px;margin-top:20px}.config-campos{display:grid;grid-template-columns:1fr 1fr;gap:13px}.config-campos>label{display:grid;gap:7px;color:var(--bib-muted);font:600 11px/1.2 var(--sans)}.config-campos select{min-width:0;height:46px;padding:0 10px;border:1px solid var(--bib-line);border-radius:10px;background:var(--bib-bg);color:var(--bib-ink);font:550 13px/1 var(--sans)}
.config-campos>label.config-rotulo{grid-column:1/-1}
.config-campos input[type=text]{min-width:0;height:46px;padding:0 12px;border:1px solid var(--bib-line);border-radius:10px;background:var(--bib-bg);color:var(--bib-ink);font:400 16px/1 var(--sans)}
.config-campos input[type=text]:focus-visible{outline:2px solid var(--bib-accent);outline-offset:1px}
.config-checks label small{color:var(--bib-muted);font-weight:400}.config-checks{grid-column:1/-1;display:grid;gap:9px;padding:13px;border-radius:11px;background:var(--bib-bg)}.config-checks label{display:flex;align-items:center;gap:9px;font:550 12px/1.3 var(--sans)}.config-checks input{width:18px;height:18px;accent-color:var(--bib-accent)}.config-previa small{display:block;margin-top:9px;color:var(--bib-muted);font:500 10px/1.45 var(--sans)}.previa-mapa{position:relative;min-height:190px;overflow:hidden;border-radius:14px;background:linear-gradient(145deg,#849368,#334b38)}.previa-mapa::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(18deg,transparent 0 27px,rgba(238,231,204,.16) 28px 29px)}#cfg-previa-texto{position:absolute;left:12px;right:12px;bottom:12px;padding:10px;border-radius:9px;background:rgba(16,20,16,.78);color:#f2efe9;font:500 10px/1.45 var(--mono)}#cfg-previa-texto b,#cfg-previa-texto span{display:block}#cfg-previa-texto.fonte-limpa{font-family:var(--sans)}#cfg-previa-texto.fonte-forte{font-family:var(--sans);font-weight:750}.acoes-folha{width:min(520px,100%)}
.config-checks p{margin:3px 0 0;color:var(--bib-muted);font:500 10px/1.45 var(--sans)}
#cfg-logo-aviso{margin-top:6px}#cfg-logo-aviso.alerta{color:var(--amber)}
.camera-foto-info em{width:max-content;margin-top:2px;padding:4px 6px;border-radius:99px;background:var(--bib-soft);color:var(--bib-muted);font:650 9px/1 var(--sans);font-style:normal}.camera-foto-info em.vinculada{background:color-mix(in srgb,#237547 13%,var(--bib-paper));color:#237547}
.camera-foto-info .camera-galeria-estado{margin-top:2px;color:var(--bib-accent);font:650 9px/1.25 var(--sans)}.camera-foto-info .camera-galeria-estado.salva{color:#237547}
.camera-foto-acoes{grid-template-columns:repeat(3,1fr)}.camera-foto-acoes button:nth-child(2){border-right:1px solid var(--bib-line)}
.camera-galeria-barra{margin:0 0 12px}.camera-galeria-barra[hidden]{display:none}
.camera-galeria-tudo{width:100%;min-height:46px;padding:11px 16px;border:1px solid var(--bib-line);border-radius:12px;background:var(--bib-soft);color:var(--bib-ink);font:700 12px/1.2 var(--sans);cursor:pointer}
.camera-galeria-tudo:hover,.camera-galeria-tudo:focus-visible{border-color:var(--bib-accent)}
.camera-galeria-tudo:disabled{opacity:.6;cursor:default}
.camera-foto-media{position:relative}.camera-foto-media>img{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:var(--bib-soft)}.camera-foto-media.video::after{content:'▶';position:absolute;inset:0;display:grid;place-items:center;color:#fff;font:700 22px/1 var(--sans);text-shadow:0 2px 9px #000}.camera-captura{position:fixed;z-index:120;inset:0;display:flex;flex-direction:column;background:#08090a;color:#fff}.camera-captura[hidden]{display:none}.camera-captura-palco{position:relative;flex:1;min-height:0;display:grid;place-items:center;overflow:hidden}.camera-captura canvas{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:contain;background:#000}.camera-captura video{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:contain;pointer-events:none}.camera-captura-palco>span{position:absolute;z-index:2;top:calc(env(safe-area-inset-top) + 16px);left:50%;transform:translateX(-50%);padding:9px 14px;border-radius:999px;background:rgba(20,22,25,.82);font:650 13px/1 var(--mono)}
.camera-fechar{position:absolute;z-index:2;left:calc(env(safe-area-inset-left) + 14px);top:calc(env(safe-area-inset-top) + 12px);width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:50%;background:rgba(20,22,25,.82);color:#fff}.camera-fechar svg{width:20px;height:20px}.camera-fechar:active{transform:scale(.94)}.camera-captura-acoes{display:flex;justify-content:center;gap:12px;padding:18px 16px calc(env(safe-area-inset-bottom) + 18px);background:#0e1012}.camera-captura-acoes button{min-width:120px;min-height:46px;padding:0 14px;border:1px solid #3a4048;border-radius:11px;background:#1e2126;color:#e8e4dc;font:650 13px/1 var(--sans)}
/* Alvos redondos no formato dos apps de câmera — mesma câmera da tela de
   dentro do mapa. Foto: miolo branco. Gravar: círculo vermelho. Parar:
   quadrado vermelho. */
.camera-captura-acoes button[hidden]{display:none}
.camera-captura-acoes .obturador,.camera-captura-acoes .rec{flex:none;min-width:0;width:76px;height:76px;padding:0;border-radius:50%;font-size:0;position:relative;box-shadow:none}
.camera-captura-acoes .obturador{background:rgba(77,219,138,.14);border-color:rgba(255,255,255,.72)}
.camera-captura-acoes .obturador::after{content:'';position:absolute;inset:8px;border-radius:50%;background:#fff}
.camera-captura-acoes .rec{background:transparent;border:3px solid rgba(255,255,255,.72)}
.camera-captura-acoes .rec::after{content:'';position:absolute;inset:11px;border-radius:50%;background:var(--danger)}
.camera-captura-acoes .rec.parar-video::after{inset:25px;border-radius:6px}
.camera-captura-acoes .obturador:active,.camera-captura-acoes .rec:active{transform:scale(.94)}
/* Faixa Foto | Vídeo dentro do visor — igual à câmera de dentro do mapa
   (.vg-modos em mapa.html). Some durante a gravação; sem cor de estado,
   quem marca o ativo é o peso (invariante 5). */
.camera-modos{display:flex;justify-content:center;gap:6px;padding:10px 16px 0;background:#0e1012}
.camera-modos[hidden]{display:none}
.camera-modos button{min-height:44px;padding:0 18px;border:0;border-radius:22px;background:none;color:#8b9096;cursor:pointer;font:600 13px/1 var(--sans);letter-spacing:.02em}
.camera-modos button[aria-pressed=true]{background:rgba(255,255,255,.12);color:#fff}
.camera-captura-palco.flash::after{content:'';position:absolute;inset:0;z-index:3;background:#fff;pointer-events:none;animation:camera-flash .28s ease-out forwards}
@keyframes camera-flash{from{opacity:.72}to{opacity:0}}
@media(prefers-reduced-motion:reduce){.camera-captura-palco.flash::after{animation:none;opacity:0}}
@media(min-width:900px){body{padding-bottom:0}
/* Abas no topo, como no /painel: grudadas 1px sob a barra (o fio de vao) e
   centradas. O bottom:auto desfaz o bottom:0 da barra inferior do celular -
   sticky com bottom setado gruda embaixo. z-index abaixo do topo (40). */
.bib-nav{position:sticky;top:85px;left:auto;right:auto;bottom:auto;z-index:39;width:auto;min-height:0;margin:0;padding:9px 24px;display:flex;align-items:center;justify-content:center;gap:6px;border-top:0;border-bottom:1px solid var(--bib-line);background:var(--bib-bg);background:color-mix(in srgb,var(--bib-bg) 88%,transparent)}
.bib-nav a,.bib-nav button{min-height:46px;flex-direction:row;justify-content:flex-start;gap:10px;padding:0 16px;font-size:12px;border-radius:11px}
.bib-nav svg{width:21px;height:21px}
.bib-nav .ativo,.bib-nav a:hover,.bib-nav button:hover{background:var(--bib-soft);color:var(--bib-accent)}
.biblioteca{padding-top:30px}.bib-folha{top:50%;bottom:auto;transform:translate(-50%,-50%);border-bottom:1px solid var(--bib-line);border-radius:22px}.publicar-banner{min-height:200px}#folha-galeria{width:min(780px,calc(100% - 36px))}}
@media(max-width:720px){.bib-topo{min-height:0;flex-wrap:wrap;justify-content:center;row-gap:9px;padding:calc(env(safe-area-inset-top) + 12px) 20px 10px}.bib-topo-acoes{order:2;flex-basis:100%;justify-content:center;gap:9px}.bib-marca{order:1;font-size:24px}.bib-marca img{width:43px;height:43px}.bib-painel,.bib-titulo{display:none}.biblioteca{width:100%;padding:24px 18px}.bib-abas{margin-bottom:20px}.bib-abas button{min-height:49px;font-size:14px}.bib-ferramentas{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 48px;gap:8px}.bib-select{height:48px;padding:0 10px}.bib-select select{font-size:12px}.bib-select svg{width:20px;height:20px}.bib-busca{grid-column:1/-1;grid-row:2}.publicar-banner{min-height:150px;margin-bottom:26px;border-radius:18px}.publicar-acao{min-width:0;width:min(310px,calc(100% - 32px));padding:18px 22px}.publicar-acao small{display:none}.bib-lista{grid-template-columns:1fr;gap:0;border-top:1px solid var(--bib-line)}.mapa-item{grid-template-columns:96px minmax(0,1fr) 50px;gap:14px;padding:16px 4px;border:0;border-bottom:1px solid var(--bib-line);border-radius:0;background:transparent;box-shadow:none}.mapa-mini{width:96px;height:96px}.mapa-enviar{width:50px}.bib-folha{padding:22px 18px calc(20px + env(safe-area-inset-bottom))}.config-grade{grid-template-columns:1fr}.config-campos{grid-template-columns:1fr}.config-checks{grid-column:auto}.config-previa{order:-1}.previa-mapa{min-height:155px}}
@media(max-width:520px){.camera-galeria{grid-template-columns:1fr}.camera-foto{display:grid;grid-template-columns:112px minmax(0,1fr)}.camera-foto>img{height:100%;min-height:150px;aspect-ratio:auto}.camera-foto-info{align-content:center}.camera-foto-acoes{grid-column:1/-1}}
@media(max-width:520px){.camera-foto-media{height:100%;min-height:150px}.camera-foto-media>img{height:100%;min-height:150px;aspect-ratio:auto}}
@media(max-width:390px){.bib-volta span{display:none}.bib-volta:not([hidden]){padding:0;width:44px;justify-content:center;border-radius:50%}.biblioteca{padding-left:13px;padding-right:13px}.bib-topo{padding-left:15px;padding-right:15px}.bib-rede span,.bib-preparo span{display:none}.bib-ferramentas{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px}.bib-select{padding:0 8px;gap:6px}.mapa-item{grid-template-columns:82px minmax(0,1fr) 46px;gap:10px}.mapa-mini{width:82px;height:82px}.mapa-info h2{font-size:14px}.mapa-enviar{width:46px}.camera-foto{grid-template-columns:96px minmax(0,1fr)}}

/* A galeria livre prioriza varredura visual: todas as mídias ficam como
   miniaturas e apenas a selecionada expande metadados e ações. */
.camera-galeria{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.camera-foto{display:block;overflow:hidden}
.camera-foto>summary{display:block;cursor:pointer;list-style:none}.camera-foto>summary::-webkit-details-marker{display:none}
.camera-foto-resumo{display:grid;gap:4px;padding:7px}.camera-foto-resumo b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:650 10px/1.25 var(--sans)}
.camera-foto-resumo em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--bib-muted);font:650 8px/1.2 var(--sans);font-style:normal}
.camera-foto-resumo em.vinculada{color:#237547}.camera-foto:not([open])>.camera-foto-info,.camera-foto:not([open])>.camera-foto-acoes{display:none}
@media(max-width:680px){.camera-galeria{grid-template-columns:repeat(3,minmax(0,1fr))}.camera-foto{display:block;grid-template-columns:none}.camera-foto-media{height:auto;min-height:0}.camera-foto-media>img{height:auto;min-height:0;aspect-ratio:1}.camera-foto-acoes{grid-column:auto}}
@media(max-width:390px){.camera-galeria{grid-template-columns:repeat(3,minmax(0,1fr))}.camera-foto{grid-template-columns:none}.camera-foto-resumo{padding:6px 5px}}

/* Card FECHADO: miniatura + legenda em duas linhas em vez de cortar a data
   no meio ("10/09/2026, 09:5…"). */
.camera-foto:not([open])>summary .camera-foto-resumo b{white-space:normal;overflow:visible;font-size:10px}

/* Card ABERTO: sai da grade de miniaturas e ocupa a linha inteira. Sem isto
   ele fica com 1/3 da largura e tudo dentro quebra — data em duas linhas,
   coordenada com reticências, "Salvar / no / aparelho". Relato de 10/09/2026.
   A data e o vínculo ficam no resumo; a ficha abaixo só acrescenta. */
.camera-foto[open]{grid-column:1/-1;border-color:color-mix(in srgb,var(--bib-accent) 42%,var(--bib-line))}
.camera-foto[open]>summary{display:grid;grid-template-columns:84px minmax(0,1fr);gap:13px;align-items:center;padding:11px}
.camera-foto[open] .camera-foto-media{border-radius:10px;overflow:hidden}
.camera-foto[open] .camera-foto-media>img{aspect-ratio:1}
.camera-foto[open] .camera-foto-resumo{padding:0;gap:5px}
.camera-foto[open] .camera-foto-resumo b{white-space:normal;font:650 13px/1.3 var(--sans)}
.camera-foto[open] .camera-foto-resumo em{max-width:100%;white-space:normal;font-size:10px}
.camera-foto[open] .camera-foto-info{display:grid;gap:5px;margin:0;padding:0 13px 12px}
.camera-foto[open] .camera-foto-info span{overflow:visible;white-space:normal;color:var(--bib-muted);font:550 11px/1.45 var(--mono)}
.camera-foto[open] .camera-foto-info small{color:var(--bib-muted);font:500 10px/1.35 var(--sans)}
.camera-foto[open] .camera-foto-acoes{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--bib-line)}
.camera-foto[open] .camera-foto-acoes button{min-height:46px;padding:9px 8px;border:0;background:transparent;color:var(--bib-accent);font:650 11px/1.25 var(--sans);cursor:pointer}
.camera-foto[open] .camera-foto-acoes button:nth-child(odd){border-right:1px solid var(--bib-line)}
.camera-foto[open] .camera-foto-acoes button:nth-child(n+3){border-top:1px solid var(--bib-line)}
.camera-foto[open] .camera-foto-acoes button.perigo{grid-column:auto;min-height:46px;color:var(--danger)}
.camera-foto[open] .camera-foto-acoes button:hover,.camera-foto[open] .camera-foto-acoes button:focus-visible{background:var(--bib-soft)}

/* Etiqueta do card (lista.js, etiquetasHTML): neutra, sem cor de estado, e
   sem o marcador "•" que separa os outros itens da linha. */
.mapa-meta .mapa-etiqueta{padding:2px 6px;border:1px solid var(--bib-line);border-radius:6px;color:var(--bib-ink);font:650 10px/1.2 var(--sans);letter-spacing:.06em}.mapa-meta .mapa-etiqueta::before{content:none}

/* O diálogo compartilhado (assets/dialogo.js) na Biblioteca, que é CLARA por
   padrão: sem este remapeamento ele herdaria os tokens escuros do app.css e
   sairia grafite no meio de uma tela clara — o defeito do convite de
   instalação em 08/09/2026. Os --bib-* já trocam sozinhos com o tema. */
.sigon-dlg,.sigon-faixa{--dlg-fundo:var(--bib-paper);--dlg-tinta:var(--bib-ink);--dlg-linha:var(--bib-line);--dlg-fraco:var(--bib-muted);--dlg-btn:var(--bib-soft)}
.sigon-faixa{bottom:calc(24px + env(safe-area-inset-bottom))}
/* A porta do painel dentro do app (meus-mapas.html, .so-app). Discreta — quem
   abre a Biblioteca quase sempre é quem recebeu o mapa —, mas com os 48 px de
   alvo de todo botão do app. */
.bib-porta{margin:28px 0 8px;text-align:center}
.bib-porta[hidden]{display:none}
.bib-porta a{display:inline-flex;align-items:center;min-height:48px;padding:0 16px;color:var(--bib-muted);font:600 13px/1 var(--sans);text-decoration:underline;text-underline-offset:3px}
/* A conta de quem recebe o link, nas Configurações (meus-mapas.html). Neutra:
   excluir é ação destrutiva, e o vermelho fica no diálogo que confirma, não
   num botão que se vê toda vez que a folha abre (invariante 5). */
.config-conta{margin:0 0 16px;padding:12px 14px;border:1px solid var(--bib-line);border-radius:14px;background:var(--bib-bg);color:var(--bib-ink)}
.config-conta[hidden]{display:none}
.config-conta-quem{margin:0 0 10px}
.config-conta-quem b{display:block;font:650 14px/1.2 var(--sans)}
.config-conta-quem small{display:block;margin-top:3px;color:var(--bib-muted);font:500 12px/1.35 var(--sans);overflow-wrap:anywhere}
.config-conta-nota{margin:8px 0 0;color:var(--bib-muted);font:500 12px/1.4 var(--sans)}
.config-conta-nota:empty{display:none}
/* O mesmo desenho dos campos de .config-campos (que só valem dentro da grade
   das preferências); senha em 16 px para o iPhone não dar zoom ao focar. */
.config-conta .config-rotulo{display:grid;gap:7px;color:var(--bib-muted);font:600 11px/1.2 var(--sans)}
.config-conta input[type=password]{min-width:0;height:46px;padding:0 12px;border:1px solid var(--bib-line);border-radius:10px;background:var(--bib-bg);color:var(--bib-ink);font:400 16px/1 var(--sans)}
.config-conta input[type=password]:focus-visible{outline:2px solid var(--bib-accent);outline-offset:1px}
/* Visor da câmera livre como o do celular (24/09/2026): miniatura da última
   captura à esquerda, que leva à galeria; obturador no centro; um vazio à
   direita do mesmo tamanho para o obturador não sair do meio. Sem captura
   ainda, a miniatura mostra o ícone da galeria. 56 px: acima dos 48 de alvo. */
.camera-captura-acoes{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
.camera-captura-acoes .camera-ir-galeria{justify-self:start;min-width:0;width:56px;height:56px;padding:0;display:grid;place-items:center;overflow:hidden;border:2px solid rgba(255,255,255,.72);border-radius:12px;background:#1e2126}
.camera-captura-acoes .camera-ir-galeria[hidden]{display:none}
.camera-captura-acoes .camera-ir-galeria{position:relative}
.camera-ir-galeria img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.camera-ir-galeria img[hidden]{display:none}
.camera-ir-galeria svg{width:26px;height:26px;fill:none;stroke:#e8e4dc;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.camera-ir-galeria img:not([hidden])~svg{display:none}
.camera-ir-galeria:active{transform:scale(.94)}
.camera-acoes-vazio{width:56px;height:56px;justify-self:end}
/* Celular DEITADO (relato do Lucas, 05/10/2026) — o mesmo da câmera de dentro
   do mapa (mapa.html): controles numa coluna à direita, para a prévia ocupar a
   altura toda, e o canvas absoluto, porque o `height:100%` dele não resolvia
   no palco flexível e o WebKit desenhava a prévia duas vezes. */
@media(orientation:landscape) and (max-height:540px){.camera-captura{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-rows:minmax(0,1fr)}.camera-captura-palco{grid-column:1;grid-row:1}.camera-modos{grid-column:2;grid-row:1;flex-direction:column;justify-content:center;padding:16px 2px 16px 10px}.camera-captura-acoes{grid-column:3;grid-row:1;grid-template-columns:none;grid-template-rows:1fr auto 1fr;justify-items:center;gap:14px;padding:calc(env(safe-area-inset-top) + 14px) calc(env(safe-area-inset-right) + 16px) calc(env(safe-area-inset-bottom) + 14px) 10px}.camera-acoes-vazio{grid-row:1}.camera-captura-acoes .obturador,.camera-captura-acoes .rec{grid-row:2}.camera-captura-acoes .camera-ir-galeria{grid-row:3;justify-self:center;align-self:end}}
/* Seleção na galeria da câmera livre (28/09/2026). A marca é a TINTA neutra
   do tema, nunca azul, verde ou âmbar — escolher não é posição, "disponível"
   nem ação (invariante 5). O âmbar fica só no que é botão. */
.camera-galeria-barra:not([hidden]){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}
.camera-galeria-selecionar{min-height:46px;padding:0 16px;border:1px solid var(--bib-line);border-radius:12px;background:transparent;color:var(--bib-accent);font:700 12px/1.2 var(--sans);cursor:pointer}
.camera-galeria-barra.selecionando .camera-galeria-tudo{display:none}
.camera-galeria-barra.selecionando{grid-template-columns:1fr}
.camera-marca{display:none;position:absolute;z-index:1;top:6px;right:6px;width:24px;height:24px;border:2px solid #fff;border-radius:50%;background:rgba(0,0,0,.35);box-shadow:0 1px 4px rgba(0,0,0,.5)}
.camera-galeria.selecionando .camera-marca{display:block}
.camera-galeria.selecionando .camera-foto.marcada{border-color:var(--bib-ink);box-shadow:0 0 0 2px var(--bib-ink)}
.camera-foto.marcada .camera-foto-media>img{opacity:.72}
.camera-foto.marcada .camera-marca{border-color:var(--bib-ink);background:var(--bib-ink)}
.camera-foto.marcada .camera-marca::after{content:'';position:absolute;left:6px;top:2px;width:6px;height:11px;border:solid var(--bib-paper);border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
.camera-selecao-acoes{position:sticky;bottom:calc(-20px - env(safe-area-inset-bottom));z-index:2;margin:12px 0 0;padding:10px 0 calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--bib-line);background:var(--bib-paper)}
.camera-selecao-acoes[hidden]{display:none}
.camera-selecao-acoes p{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 8px;color:var(--bib-ink);font:650 12px/1.3 var(--sans)}
.camera-selecao-acoes p button{flex:none;min-height:44px;padding:0;border:0;background:none;color:var(--bib-accent);font:650 12px/1 var(--sans);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.camera-selecao-acoes>div{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:8px}
.camera-selecao-acoes>div button[hidden]{display:none}
.camera-selecao-acoes>div button{min-height:48px;padding:10px 6px;border:1px solid var(--bib-line);background:var(--bib-paper);border:1px solid color-mix(in srgb,var(--bib-accent) 45%,var(--bib-line));border-radius:12px;background:color-mix(in srgb,var(--bib-accent) 10%,var(--bib-paper));color:var(--bib-accent);font:700 13px/1.2 var(--sans);cursor:pointer}
.camera-selecao-acoes>div button.perigo{background:var(--bib-paper);border-color:color-mix(in srgb,var(--danger) 40%,var(--bib-line));background:color-mix(in srgb,var(--danger) 8%,var(--bib-paper));color:var(--danger)}
.camera-selecao-acoes>div button:disabled{opacity:.5;cursor:default}
