:root{--fundo: #f5f6f8;--cartao: #ffffff;--texto: #1c2430;--suave: #5b6675;--azul: #1f3a5f;--azul-claro: #e6edf6;--borda: #d5dae1;--erro: #a3262a;--erro-fundo: #fbeaea}@media(prefers-color-scheme:dark){:root{--fundo: #12161c;--cartao: #1b212a;--texto: #e8ecf1;--suave: #9aa6b6;--azul: #8db4e8;--azul-claro: #22304a;--borda: #2f3947;--erro: #ff9b9e;--erro-fundo: #3a1f21}}*{box-sizing:border-box}body{margin:0;background:var(--fundo);color:var(--texto);font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.topo{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;background:var(--cartao);border-bottom:1px solid var(--borda)}.topo-direita{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--suave)}.conteudo{max-width:860px;margin:0 auto;padding:16px}.cartao{background:var(--cartao);border:1px solid var(--borda);border-radius:12px;padding:16px;margin-bottom:16px}.cartao-estreito{max-width:420px;margin:32px auto}h1{font-size:22px;margin:0 0 8px}h2{font-size:18px;margin:0 0 8px}label{display:block;font-weight:600;margin:12px 0 4px}input,select{width:100%;min-height:44px;padding:8px 12px;font:inherit;color:var(--texto);background:var(--fundo);border:1px solid var(--borda);border-radius:8px}input[type=file]{padding:8px}.botao,.botao-secundario{min-height:44px;padding:8px 18px;margin-top:12px;font:inherit;font-weight:600;border-radius:8px;cursor:pointer}.botao{background:var(--azul);color:var(--cartao);border:1px solid var(--azul)}.botao-secundario{background:transparent;color:var(--azul);border:1px solid var(--borda);margin-left:8px}.botao:disabled{opacity:.6;cursor:not-allowed}.ajuda{color:var(--suave);font-size:14px;margin:6px 0}.aviso{background:var(--azul-claro);border-radius:8px;padding:10px 12px;margin:12px 0 0}.erro{background:var(--erro-fundo);color:var(--erro);border-radius:8px;padding:10px 12px;margin:12px 0 0}.barra{width:100%;height:14px;margin-top:12px}.tabela{width:100%;border-collapse:collapse;margin-top:12px;font-size:14px}.tabela th,.tabela td{text-align:left;padding:8px;border-bottom:1px solid var(--borda)}.grade{display:grid;grid-template-columns:1fr;gap:8px}@media(min-width:720px){.grade{grid-template-columns:1fr 1.4fr 1fr auto;align-items:start}.grade .botao{margin-top:0}}@media(max-width:600px){.tabela{display:block;overflow-x:auto}}
