/* Chrome da aplicacao autenticada: barra de navegacao, formularios e cartoes.
   Reaproveita os tokens (--brand, --panel, --line...) definidos em painel.css. */

.topbar{background:var(--panel); border-bottom:1px solid var(--line)}
.topbar .inner{max-width:1180px; margin:0 auto; padding:10px 24px;
  display:flex; align-items:center; gap:18px; flex-wrap:wrap}
.topbar .marca{font-family:"Iowan Old Style",Palatino,Georgia,serif; font-size:19px;
  font-weight:600; color:var(--brand); text-decoration:none; letter-spacing:-.01em}
.topbar nav{display:flex; gap:14px; flex:1}
.topbar nav a{font-size:13.5px; font-weight:600; color:var(--ink-2); text-decoration:none}
.topbar nav a:hover, .topbar nav a[aria-current]{color:var(--brand)}
.topbar .quem{font-size:12.5px; color:var(--ink-3); display:flex; align-items:center; gap:10px}
.topbar form.inline{display:inline}
.topbar .linkbtn{background:none; border:0; padding:0; font:inherit; font-size:12.5px;
  color:var(--ink-3); cursor:pointer; text-decoration:underline}
.orgpicker select{font-size:13px; padding:6px 8px}

.page{max-width:1180px; margin:0 auto; padding:32px 24px 80px}
.page.estreita{max-width:460px}
.page h1{font-family:"Iowan Old Style",Palatino,Georgia,serif; font-size:clamp(24px,3vw,32px);
  margin:0 0 6px; font-weight:600; letter-spacing:-.01em}
.page .sub{color:var(--ink-2); margin:0 0 26px; max-width:66ch}

.flash{padding:11px 15px; border-radius:8px; margin:0 0 16px; font-size:13.5px; font-weight:500}
.flash.notice{background:var(--ok-bg); color:var(--ok); border:1px solid var(--ok)}
.flash.alert{background:var(--unk-bg); color:var(--unk); border:1px solid var(--unk)}

.painel-box{background:var(--panel); border:1px solid var(--line); border-radius:10px;
  padding:20px; box-shadow:var(--shadow); margin-bottom:18px}
.painel-box h2{font-size:15px; margin:0 0 14px; font-weight:650}

.fld{display:flex; flex-direction:column; gap:5px; margin-bottom:12px}
.fld label{font-size:11px; text-transform:uppercase; letter-spacing:.08em;
  color:var(--ink-3); font-weight:600}
.fld input, .fld select{padding:9px 12px; border:1px solid var(--line); border-radius:7px;
  background:var(--ground); color:var(--ink); font:inherit; font-size:14px}
.fld.uf input{text-transform:uppercase}
.linha{display:flex; flex-wrap:wrap; gap:10px; align-items:flex-end}
.linha .fld{margin-bottom:0}

.btn{padding:10px 18px; border:0; border-radius:7px; background:var(--brand); color:var(--panel);
  font:inherit; font-size:14px; font-weight:650; cursor:pointer; text-decoration:none; display:inline-block}
.btn:hover{filter:brightness(1.08)}
.btn.leve{background:var(--chip); color:var(--ink-2); border:1px solid var(--line)}
.btn.perigo{background:none; color:var(--stamp); border:1px solid var(--line); font-weight:600}

.cards{display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:14px}
.card{display:block; text-decoration:none; color:inherit; background:var(--panel);
  border:1px solid var(--line); border-radius:12px; padding:20px; box-shadow:var(--shadow);
  transition:border-color .12s, transform .12s}
.card:hover{border-color:var(--brand); transform:translateY(-2px)}
.card .codigo{font-size:20px; font-weight:650; color:var(--brand); font-variant-numeric:tabular-nums}
.card .dono{font-size:12.5px; color:var(--ink-3); margin-top:2px}
.card .nums{display:flex; gap:14px; margin-top:12px; font-size:12.5px; color:var(--ink-2)}
.card .nums b{display:block; font-size:17px; color:var(--ink); font-variant-numeric:tabular-nums}

table.dados{width:100%; border-collapse:collapse; font-size:13.5px}
table.dados th{text-align:left; font-size:10.5px; text-transform:uppercase; letter-spacing:.1em;
  color:var(--ink-3); font-weight:700; padding:0 10px 8px 0}
table.dados td{padding:9px 10px 9px 0; border-top:1px solid var(--line-soft); vertical-align:middle}
table.dados td.acoes{text-align:right; white-space:nowrap}
.tag{font-size:10.5px; font-weight:700; letter-spacing:.05em; text-transform:uppercase;
  background:var(--chip); color:var(--ink-2); border-radius:4px; padding:3px 7px}
.tag.owner{background:var(--hi); color:var(--stamp)}
.vazio{color:var(--ink-3); font-size:13.5px; padding:14px 0}

.orgpicker{position:relative}
.orgpicker summary{cursor:pointer; font-weight:600; color:var(--ink-2); list-style:none}
.orgpicker summary::-webkit-details-marker{display:none}
.orgpicker .menu{position:absolute; right:0; top:24px; z-index:10; min-width:190px;
  background:var(--panel); border:1px solid var(--line); border-radius:8px;
  box-shadow:var(--shadow); padding:6px; display:flex; flex-direction:column; gap:2px}
.orgpicker .menu .linkbtn{text-align:left; padding:7px 9px; border-radius:5px;
  text-decoration:none; color:var(--ink); width:100%}
.orgpicker .menu .linkbtn:hover{background:var(--chip)}

.topbar .tema{background:none; border:1px solid var(--line); color:var(--ink-2);
  width:26px; height:26px; border-radius:6px; cursor:pointer; font-size:13px;
  line-height:1; padding:0; display:inline-flex; align-items:center; justify-content:center}
.topbar .tema:hover{border-color:var(--brand); color:var(--brand)}

h2.secao{font-size:15px; margin:26px 0 12px; font-weight:650}
table.dados.espacada{margin-top:16px}
p.acao-pagina{margin-top:24px}

.tema-solto{position:fixed; top:16px; right:16px; z-index:20}
.tema-solto .tema{width:30px; height:30px; font-size:14px; background:var(--panel)}

/* Links herdam a marca em vez do azul padrao do navegador. */
a{color:var(--brand)}
a:hover{text-decoration-thickness:2px}
.page a{text-underline-offset:2px}
.card:hover, .marca:hover, .topbar nav a:hover{text-decoration:none}
.tag.restrito{background:var(--stamp); color:var(--panel)}
.pclientes{display:block; font-size:12px; color:var(--brand); font-weight:600}
.pager{display:flex; gap:14px; align-items:center; justify-content:center; margin:18px 0; font-size:13px; font-variant-numeric:tabular-nums}
.pager-link{color:var(--brand); font-weight:600; text-decoration:none}
.pager-link.off{color:var(--ink-3); font-weight:500}
.pager-range{color:var(--ink-2)}
.controls input[type=search]{flex:1; min-width:220px}
