:root{
  --bg:#f6f7f9;--surf:#fff;--borda:#dde1e7;--txt:#14181f;--txt2:#5b6472;--cor:#1d4ed8;--cor-txt:#fff;
  --sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;
}
@media (prefers-color-scheme:dark){:root:not([data-tema="claro"]){--bg:#0f1217;--surf:#171b22;--borda:#2a303a;--txt:#e8ebf0;--txt2:#97a0ae;--cor:#5b8cff;--cor-txt:#0b1020}}
:root[data-tema="escuro"]{--bg:#0f1217;--surf:#171b22;--borda:#2a303a;--txt:#e8ebf0;--txt2:#97a0ae;--cor:#5b8cff;--cor-txt:#0b1020}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--txt);font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.topo{display:flex;justify-content:space-between;align-items:center;padding:var(--sp-3) var(--sp-5);background:var(--surf);border-bottom:1px solid var(--borda)}
.marca{display:flex;align-items:center;gap:var(--sp-3);color:var(--txt);text-decoration:none;font-weight:700}
.marca-sigla{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:var(--cor);color:var(--cor-txt);font-size:.85rem}
.btn,.chip{min-height:36px;padding:0 var(--sp-4);border:1px solid var(--borda);border-radius:8px;background:var(--surf);color:var(--txt);font-family:inherit;font-size:.9rem;font-weight:600;cursor:pointer}
.btn:hover,.chip:hover{border-color:var(--cor)}
.conteudo{flex:1;width:100%;padding:var(--sp-6) var(--sp-5)}
.intro{margin-bottom:var(--sp-6)}
.intro h1{margin:0 0 var(--sp-2);font-size:1.75rem}
.intro p{margin:0 0 var(--sp-5);color:var(--txt2)}
.busca{width:100%;max-width:480px;height:44px;padding:0 var(--sp-4);border:1px solid var(--borda);border-radius:8px;background:var(--surf);color:var(--txt);font:inherit}
.busca:focus,.btn:focus-visible,.chip:focus-visible,.cartao:focus-visible{outline:2px solid var(--cor);outline-offset:2px}
.filtros{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-4)}
.chip.ativo{background:var(--cor);border-color:var(--cor);color:var(--cor-txt)}
.grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--sp-5)}
.cartao{display:flex;flex-direction:column;gap:var(--sp-2);padding:20px 24px;border:1px solid var(--borda);border-radius:8px;background:var(--surf);color:var(--txt);text-decoration:none}
a.cartao:hover{border-color:var(--cor)}
.cartao.breve{opacity:.6}
.cartao-sigla{display:grid;place-items:center;width:40px;height:40px;border-radius:8px;background:var(--bg);border:1px solid var(--borda);color:var(--cor);font-weight:700}
.cartao h2{margin:var(--sp-2) 0 0;font-size:1.05rem}
.cartao p{margin:0;color:var(--txt2);font-size:.9rem;flex:1}
.cartao-tag{margin-top:var(--sp-2);font-size:.8rem;font-weight:600;color:var(--txt2)}
.vazio{color:var(--txt2)}
.rodape{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-2);padding:var(--sp-4) var(--sp-5);border-top:1px solid var(--borda);color:var(--txt2);font-size:.85rem}
.rodape a{color:var(--txt2)}
[hidden]{display:none!important}
@media (max-width:480px){.conteudo{padding:var(--sp-5) var(--sp-4)}.topo{padding:var(--sp-3) var(--sp-4)}}
.pagina{width:100%;max-width:960px;margin:0 auto}
.crumb{margin:0 0 var(--sp-4);font-size:.85rem;color:var(--txt2)}
.crumb a{color:var(--txt2)}
.pagina h1{margin:0 0 var(--sp-2);font-size:1.75rem}
.lead{margin:0 0 var(--sp-5);color:var(--txt2)}
.painel{padding:20px 24px;border:1px solid var(--borda);border-radius:8px;background:var(--surf)}
.opcoes{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--sp-4);margin-bottom:var(--sp-4)}
.campo{display:flex;flex-direction:column;gap:6px}
.campo label{font-size:.85rem;font-weight:600;color:var(--txt2)}
.campo-check{flex-direction:row;align-items:center;gap:var(--sp-2);min-height:44px}
.campo-check label{font-size:.9rem;color:var(--txt)}
.campo-check input{width:18px;height:18px;accent-color:var(--cor)}
.entrada{width:100%;height:44px;padding:0 var(--sp-3);border:1px solid var(--borda);border-radius:8px;background:var(--bg);color:var(--txt);font:inherit}
.entrada:focus,.saida:focus{outline:2px solid var(--cor);outline-offset:1px}
.acoes{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4)}
.btn-grande,.btn-primario{min-height:44px}
.btn-primario{background:var(--cor);border-color:var(--cor);color:var(--cor-txt)}
.btn-primario:hover{opacity:.9;border-color:var(--cor)}
.aviso-copia{font-size:.85rem;color:var(--txt2)}
.saida{width:100%;padding:var(--sp-3);border:1px solid var(--borda);border-radius:8px;background:var(--bg);color:var(--txt);font:.95rem/1.6 ui-monospace,Consolas,monospace;resize:vertical}
.resultado-val{margin:var(--sp-4) 0 0;min-height:1.5em;font-weight:600}
.resultado-val.ok{color:#15803d}.resultado-val.erro{color:#b91c1c}
:root[data-tema="escuro"] .resultado-val.ok{color:#4ade80}:root[data-tema="escuro"] .resultado-val.erro{color:#f87171}
@media (prefers-color-scheme:dark){:root:not([data-tema="claro"]) .resultado-val.ok{color:#4ade80}:root:not([data-tema="claro"]) .resultado-val.erro{color:#f87171}}
.nota{margin:var(--sp-4) 0 0;font-size:.85rem;color:var(--txt2)}
.anuncio{display:none;margin:var(--sp-5) 0;text-align:center}
.anuncio.ativo{display:block;min-height:100px}
.anuncio-rot{display:block;margin-bottom:4px;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--txt2)}
.sobre{margin-top:var(--sp-6)}
.sobre h2,.relacionadas h2{font-size:1.2rem;margin:0 0 var(--sp-3)}
.sobre p,.privacidade p,.privacidade li{color:var(--txt2)}
.relacionadas{margin-top:var(--sp-6)}
.lista-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--sp-3);margin:0;padding:0;list-style:none}
.lista-links a{display:block;padding:var(--sp-3) var(--sp-4);border:1px solid var(--borda);border-radius:8px;background:var(--surf);color:var(--txt);text-decoration:none;font-weight:600;font-size:.9rem}
.lista-links a:hover{border-color:var(--cor)}
.privacidade h2{font-size:1.15rem;margin:var(--sp-5) 0 var(--sp-2)}
.cookies{position:fixed;left:var(--sp-4);right:var(--sp-4);bottom:var(--sp-4);z-index:50;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-4);max-width:960px;margin:0 auto;padding:var(--sp-4) var(--sp-5);border:1px solid var(--borda);border-radius:8px;background:var(--surf)}
.cookies p{margin:0;flex:1 1 320px;font-size:.9rem}
.cookies-acoes{display:flex;flex-wrap:wrap;gap:var(--sp-2)}
.cookies .btn{min-height:44px}
.rodape nav{display:flex;gap:var(--sp-4)}
.zona{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-2);min-height:160px;padding:var(--sp-5);border:2px dashed var(--borda);border-radius:8px;background:var(--bg);margin-bottom:var(--sp-4)}
.zona.arrastando{border-color:var(--cor)}
.zona-txt{margin:0;color:var(--txt2);font-size:.9rem}
.arquivos{margin:0 0 var(--sp-4);padding:0;list-style:none;display:grid;gap:var(--sp-2)}
.arq{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);border:1px solid var(--borda);border-radius:8px;background:var(--bg)}
.arq-nome{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600}
.arq-tam{color:var(--txt2);font-size:.8rem;white-space:nowrap}
.arq-acoes{display:flex;gap:6px}
.btn-mini{min-height:32px;padding:0 var(--sp-3);font-size:.8rem}
.btn:disabled{opacity:.5;cursor:not-allowed}
.erro-msg{margin:0 0 var(--sp-3);color:#b91c1c;font-weight:600}
:root[data-tema="escuro"] .erro-msg{color:#f87171}
@media (prefers-color-scheme:dark){:root:not([data-tema="claro"]) .erro-msg{color:#f87171}}
.erro-msg:empty{display:none}
.resultado{display:grid;gap:var(--sp-3)}
.resultado:empty{display:none}
.nota-res{margin:0 0 var(--sp-3);color:var(--txt2);font-size:.9rem}
.baixar{display:flex;flex-wrap:wrap;gap:var(--sp-2)}
.miniaturas{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--sp-3);margin-bottom:var(--sp-4)}
.mini{display:flex;flex-direction:column;gap:6px;padding:var(--sp-2);border:1px solid var(--borda);border-radius:8px;background:var(--bg);cursor:grab}
.mini.excluida{opacity:.4}
.mini-img{display:grid;place-items:center;height:160px;overflow:hidden}
.mini-img canvas{max-width:100%;max-height:100%;border:1px solid var(--borda)}
.mini-n{font-size:.8rem;color:var(--txt2);text-align:center}
.mini-bt{display:flex;flex-wrap:wrap;gap:4px;justify-content:center}
.mini-bt .btn-mini{padding:0 8px}
.nav-pag{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);margin:var(--sp-3) 0}
.previa{overflow:auto;border:1px solid var(--borda);border-radius:8px;background:var(--bg);margin-bottom:var(--sp-4)}
.previa-cv{display:block;max-width:100%;height:auto;margin:0 auto}
.pad-wrap{max-width:480px;margin-bottom:var(--sp-2)}
.pad{display:block;width:100%;height:auto;aspect-ratio:3/1;border:1px solid var(--borda);border-radius:8px;background:#fff;touch-action:none}
.extra{margin-bottom:var(--sp-4)}
.extra:empty{display:none}
