/* Layout sóbrio — sem cards, sem fundo escuro, sem degradê, sem sombra forte. */
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--softer);color:var(--ink);font:15px/1.6 var(--font);
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
a{color:var(--blu)}

/* Cabeçalho fino com 1 fio */
.appbar{background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 1px 0 0 var(--goldsoft);
  display:flex;align-items:center;gap:14px;padding:11px 22px;
  padding-top:max(11px,env(safe-area-inset-top));padding-left:max(22px,env(safe-area-inset-left));
  position:sticky;top:0;z-index:5}
.appbar .brand{font-weight:600;color:var(--navy);letter-spacing:.02em}
.appbar .brand small{display:block;font-weight:400;font-size:11px;color:var(--gold);letter-spacing:.06em}
.appbar .title{font-family:var(--serif);font-size:18px;color:var(--navy)}
.appbar .spacer{flex:1}
.mode{display:flex;border:1px solid var(--grid);border-radius:var(--radius);overflow:hidden;font-size:12px}
.mode button{border:0;background:var(--bg);color:var(--mut);padding:5px 12px;cursor:pointer}
.mode button[aria-pressed="true"]{background:var(--navy);color:#fff}

main{max-width:880px;margin:26px auto;background:var(--bg);
  border:1px solid var(--line);padding:30px 38px 46px}
@media(max-width:680px){main{margin:0;border:0;padding:20px 16px 40px}}

h1{font-family:var(--serif);font-weight:600;font-size:25px;margin:.1em 0 .15em;color:var(--navy);letter-spacing:-.012em}
h2{font-family:var(--serif);font-weight:600;font-size:19px;margin:1.6em 0 .5em;color:var(--navy);
  padding-bottom:.25em;border-bottom:1px solid var(--grid)}
.sub{color:var(--mut);font-size:14px;margin:.1em 0 0}
.rule{height:2px;width:48px;background:var(--goldsoft);margin:14px 0 22px}

/* Botões sóbrios */
.btn{font:inherit;border:1px solid var(--grid);background:var(--bg);color:var(--ink);
  padding:8px 16px;border-radius:var(--radius);cursor:pointer}
.btn:hover{border-color:var(--mut)}
.btn.primary{background:var(--navy);color:#fff;border-color:var(--navy)}
.btn.ghost{border-color:transparent;color:var(--blu);padding-left:0}
.btn[disabled]{opacity:.45;cursor:default}
.row-actions{display:flex;gap:10px;align-items:center;margin-top:22px}
.row-actions .spacer{flex:1}

/* Lista em linhas com fio fino (sem cards) */
.list{border-top:1px solid var(--line);margin-top:8px}
.list .item{display:flex;align-items:center;gap:14px;
  padding:13px 4px;border-bottom:1px solid var(--line);cursor:pointer}
.list .item:hover{background:var(--softer)}
.list .item .grow{flex:1}
.list .item .name{font-weight:600}
.list .item .meta{color:var(--mut);font-size:13px}
.empty{color:var(--mut);padding:26px 4px;border-top:1px solid var(--line)}

/* Capa / dossiê premium (sóbrio, sem card/escuro) */
.cover{text-align:center;padding:24px 6px 8px}
.cover .lg{display:flex;justify-content:center;margin-bottom:6px}
.cover .lg img{height:50px}
.cover .tag{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.cover .gline{height:2px;width:120px;background:var(--goldsoft);margin:16px auto}
.cover .ct{font-family:var(--serif);color:var(--navy);font-size:32px;line-height:1.14;margin:6px 0 2px;letter-spacing:-.015em}
.cover .en{font-style:italic;color:var(--mut);font-size:16px;margin:0 0 14px}
.cover .prog{font-size:14.5px;color:var(--ink)}
.cover .progen{font-size:12.5px;color:var(--mut);font-style:italic;margin-top:1px}
.cover .based{font-size:11.5px;color:var(--mut);max-width:640px;margin:14px auto 0;line-height:1.55}
.cover .conf{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--red);margin-top:12px}
.cover .acts{margin-top:20px;padding-bottom:6px;border-bottom:1px solid var(--line)}

/* Capa de cada auditoria (estilo dossiê MB) */
.acover{padding:6px 0 2px}
.acover .ac-type{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.acover .ac-title{font-family:var(--serif);color:var(--navy);font-size:27px;line-height:1.15;margin:4px 0 0;letter-spacing:-.012em}
.acover .ac-en{font-style:italic;color:var(--mut);font-size:14px}
.acover .ac-year{font-family:var(--serif);color:var(--mut);font-size:18px;margin-top:2px}
.acover .ac-line{height:2px;width:72px;background:var(--goldsoft);margin:14px 0 12px}
.acmeta{width:100%;border-collapse:collapse;font-size:13px;margin:2px 0 12px}
.acmeta td{padding:5px 0;vertical-align:top;border:0}
.acmeta td.k{width:210px;color:var(--mut);white-space:nowrap;padding-right:14px}
.acmeta td.v{color:var(--ink);font-weight:600;border-bottom:1px solid var(--line)}
@media(max-width:560px){.acmeta td.k{width:130px}}
.acover .ac-based{font-size:11.5px;color:var(--mut);line-height:1.5;margin-top:2px}
.acover .ac-conf{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--red);margin-top:8px}
.partgroup{font-family:var(--serif);color:var(--navy);font-size:16px;margin:20px 0 4px;padding-bottom:4px;border-bottom:1px solid var(--goldsoft)}
dl.gloss{margin:6px 0}
dl.gloss dt{font-weight:600;color:var(--navy);margin-top:13px;font-size:14.5px}
dl.gloss dd{margin:2px 0 0;color:var(--ink);font-size:14px}

/* Formulário oficial: rótulo + campo, enxuto */
.field{margin:14px 0}
.field label{display:block;font-size:12.5px;color:var(--mut);margin-bottom:4px}
.field input,.field select,.field textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);
  background:var(--bg);border:1px solid var(--grid);border-radius:var(--radius);padding:9px 10px}
.field textarea{min-height:72px;resize:vertical}
.field .hint{font-size:12px;color:var(--mut);margin-top:3px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
@media(max-width:560px){.grid2{grid-template-columns:1fr}}
.notice{font-size:12.5px;color:var(--mut);border-left:3px solid var(--grid);
  background:var(--soft);padding:8px 12px;margin:14px 0}

/* Tabela sóbria */
table{border-collapse:collapse;width:100%;margin:14px 0;font-size:14px}
th,td{border:1px solid var(--grid);padding:7px 10px;text-align:left;vertical-align:top}
th{background:#F0F0EC;font-weight:600}
td.r,th.r{text-align:right;white-space:nowrap}

/* Visão de seções: progresso por linha */
.sec{display:flex;align-items:center;gap:14px;padding:12px 4px;border-bottom:1px solid var(--line);cursor:pointer}
.sec:hover{background:var(--softer)}
.sec .grow{flex:1}
.sec .code{font-variant-numeric:tabular-nums;color:var(--mut);width:34px}
.sec .stit{font-weight:600;color:var(--navy)}
.sec .sen{color:var(--mut);font-size:12.5px}
.sec .pct{font-variant-numeric:tabular-nums;font-weight:600;width:56px;text-align:right}
.bar{height:4px;background:var(--soft);border-radius:2px;overflow:hidden;width:120px}
.bar>span{display:block;height:100%;background:var(--mut)}
.faixa{font-size:12px;white-space:nowrap}
.f-sat{color:var(--grn)}.f-ace{color:var(--blu)}.f-aba{color:var(--amber)}.f-ins{color:var(--red)}

/* Item de auditoria — bloco empilhado (formato aprovado) */
.itemhdr{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--mut);
  border-bottom:1px solid var(--line);padding-bottom:6px;margin-bottom:12px}
.itemhdr .id{font-weight:600;color:var(--ink)}
.tag{font-size:11px;border:1px solid var(--grid);border-radius:var(--radius);padding:1px 7px;color:var(--mut)}
.tag.crit{color:var(--red);border-color:var(--red)}
.q-pt{font-weight:600;font-size:16px;margin:0 0 3px}
.q-en{font-style:italic;color:var(--mut);font-size:13.5px;margin:0 0 14px}
.gab{border:1px solid var(--line);background:var(--soft);border-radius:var(--radius);
  padding:10px 13px;margin:0 0 16px;font-size:13.5px}
.gab .lab{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--gold);margin-bottom:3px}

/* Seletor de categoria: 5 em linha, contorno tinta no selecionado (sem cor berrante) */
.cats{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 4px}
.cats button{flex:1;min-width:96px;font:inherit;font-size:13px;cursor:pointer;
  background:var(--bg);border:1px solid var(--grid);border-radius:var(--radius);padding:9px 6px;color:var(--mut)}
.cats button:hover{border-color:var(--mut)}
.cats button[aria-pressed="true"]{border-color:var(--navy);color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy)}

.progress-line{font-size:12.5px;color:var(--mut);margin:2px 0 0}
.cap-warn{color:var(--red);font-size:13px;margin:8px 0 0}
.mic{font:inherit;font-size:11px;border:1px solid var(--grid);border-radius:var(--radius);background:var(--bg);color:var(--mut);padding:1px 9px;margin-left:8px;cursor:pointer;vertical-align:1px}
.mic:hover{border-color:var(--mut)}
.mic.on{border-color:var(--red);color:var(--red)}

/* Dashboard sóbrio (BI corporativo, sem card flutuante/escuro) */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(116px,1fr));
  border:1px solid var(--grid);border-radius:var(--radius);overflow:hidden;margin:16px 0}
.kpi{padding:11px 13px;border-right:1px solid var(--line);border-top:1px solid var(--line)}
.kpi:nth-child(-n+6){border-top:0}
.kpi .lab{font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--mut)}
.kpi .num{font-size:23px;font-weight:600;margin-top:3px;font-variant-numeric:tabular-nums;line-height:1.1;color:var(--navy)}
.kpi .num small{font-size:13px;font-weight:400;color:var(--mut)}
.kpi .sm{font-size:11.5px;color:var(--mut);margin-top:1px}
.kpi .num.g{color:var(--grn)}.kpi .num.b{color:var(--blu)}.kpi .num.a{color:var(--amber)}.kpi .num.r{color:var(--red)}

.chart{margin:6px 0 2px}
.crow{display:flex;align-items:center;gap:12px;padding:6px 0;border-bottom:1px solid var(--line)}
.crow .clab{width:240px;font-size:13px}
.crow .clab .cc{color:var(--mut);font-variant-numeric:tabular-nums;margin-right:7px}
.crow .ctrack{flex:1;background:var(--soft);height:13px;border-radius:2px;overflow:hidden}
.crow .ctrack>span{display:block;height:100%}
.crow .cval{width:120px;text-align:right;font-size:12.5px}
.crow .cval .p{font-variant-numeric:tabular-nums;font-weight:600;margin-right:6px}
@media(max-width:560px){.crow .clab{width:150px}.crow .cval{width:84px}}

.distrib{display:flex;height:20px;border:1px solid var(--grid);border-radius:var(--radius);overflow:hidden;margin:10px 0 6px}
.distrib>span{display:block;height:100%}
.legend{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--mut);margin:4px 0 0}
.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px}

/* Fotos de evidência — miniaturas em linha, fio fino, sem moldura pesada */
.addphoto{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--blu);
  border:1px solid var(--grid);border-radius:var(--radius);background:var(--bg);padding:7px 12px;cursor:pointer}
.addphoto:hover{border-color:var(--mut)}
.addphoto input{display:none}
.thumbs{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}
.thumb{width:168px;border:1px solid var(--line);border-radius:var(--radius);padding:6px;background:var(--bg)}
.thumb.ok{border-left:3px solid var(--grn)}
.thumb.nc{border-left:3px solid var(--red)}
.thumb.obs{border-left:3px solid var(--amber)}
.thumb .trow select{font:inherit;font-size:13px}
.thumb img{width:100%;height:108px;object-fit:cover;border:1px solid var(--line);display:block}
.thumb .trow{display:flex;gap:6px;margin-top:5px;font-size:11.5px}
.thumb .trow select{flex:1;font:inherit;font-size:11.5px;border:1px solid var(--grid);border-radius:var(--radius);padding:2px 4px}
.thumb .trow .del{border:1px solid var(--grid);border-radius:var(--radius);background:var(--bg);color:var(--red);cursor:pointer;padding:2px 7px}
.thumb input.cap{width:100%;font:inherit;font-size:16px;border:1px solid var(--grid);border-radius:var(--radius);padding:3px 5px;margin-top:5px}

/* Faixa de ajuda iOS (instalação + backup) */
.iosbar{position:fixed;left:0;right:0;bottom:0;z-index:50;background:#fff;border-top:2px solid var(--goldsoft);
  color:var(--ink);font-size:13px;line-height:1.45;padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom));
  box-shadow:0 -2px 10px rgba(0,0,0,.07)}
.iosbar b{color:var(--navy)}
.iosbar .iosx{margin-left:8px;border:1px solid var(--grid);background:var(--bg);color:var(--ink);
  border-radius:var(--radius);padding:6px 16px;cursor:pointer;font:inherit;font-size:13px}

/* Impressão / salvar em PDF pelo navegador: tira barra e botões, deixa só o conteúdo */
@media print{
  .appbar,.row-actions,.mode,.btn,.addphoto,.mic,.cats{display:none!important}
  body{background:#fff}
  main{max-width:none;margin:0;border:0;padding:0}
  .sec,.list .item,.crow{break-inside:avoid}
  a{color:var(--ink);text-decoration:none}
}
