/* Meukitregulatori — visual */
:root{
  /* cores da logo Meukitregulatori */
  --cobalto:#1365B9; --ciano:#0CC1E0; --ceu:#38B6FF; --petroleo:#0D8380; --grafite:#222222; --nevoa:#E7ECF2;
  --navy:#1365B9; --navy-ink:#0D4F94; --navy-soft:#E1EDF9;
  --paper:#EEF2F7; --sheet:#FFFFFF; --ink:#1F2630; --muted:#56657A; --line:#D2DBE6;
  --ok:#0D8380; --ok-soft:#DCF1EF; --bad:#A3214B; --bad-soft:#F8E2E9; --warn:#7A5600; --warn-soft:#FBF0D2;
  --radius:8px;
  --font:"Atkinson Hyperlegible",Verdana,"Segoe UI",system-ui,sans-serif;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --navy:#5EA9F2; --navy-ink:#A9D2FA; --navy-soft:#15304C;
    --paper:#0D141D; --sheet:#151F2B; --ink:#E8EEF5; --muted:#9AAABC; --line:#283748;
    --ok:#4FC7BF; --ok-soft:#10302E; --bad:#F29AB7; --bad-soft:#3A1724; --warn:#F1CF6B; --warn-soft:#382D0F;
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --navy:#5EA9F2; --navy-ink:#A9D2FA; --navy-soft:#15304C;
  --paper:#0D141D; --sheet:#151F2B; --ink:#E8EEF5; --muted:#9AAABC; --line:#283748;
  --ok:#4FC7BF; --ok-soft:#10302E; --bad:#F29AB7; --bad-soft:#3A1724; --warn:#F1CF6B; --warn-soft:#382D0F;
  color-scheme:dark;
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.55 var(--font);-webkit-text-size-adjust:100%}
[hidden]{display:none!important}
h1,h2{line-height:1.2;margin:0}
button{font:inherit;cursor:pointer}
:focus-visible{outline:3px solid var(--navy);outline-offset:2px}

/* marca */
.mark{display:inline-grid;place-items:center;min-width:2.6em;height:2.1em;padding:0 .4em;border-radius:6px;background:#0D3D6E;color:#fff;font-weight:700;font-size:.78em;letter-spacing:.03em;line-height:1}
.brand{display:flex;align-items:center;gap:.6em;font-weight:700}

/* splash */
.splash{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:12px;color:var(--muted)}
.splash .mark{font-size:1.4rem}

/* entrada: duas colunas no computador */
.gate{min-height:100vh;display:grid;grid-template-columns:minmax(300px,5fr) 7fr}
.gate-side{background:var(--nevoa);color:var(--grafite);padding:40px 48px;display:flex;flex-direction:column;justify-content:space-between;
  padding-top:max(40px,env(safe-area-inset-top))}
.gate-side .mark{background:#fff;color:#0D3D6E}
.gate-pitch h1{font-size:2rem;max-width:18ch;margin-bottom:16px}
.gate-pitch p{opacity:.85;max-width:38ch;margin:0 0 28px}
.niches{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.niches li{padding:10px 0 10px 14px;border-left:3px solid rgba(255,255,255,.45)}
.gate-foot{opacity:.6;font-size:.85rem;margin:0}
.gate-main{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:32px 20px;
  padding-bottom:max(32px,env(safe-area-inset-bottom))}
.brand-mobile{display:none;margin-bottom:20px;align-self:flex-start}

/* cartão de formulário */
.card{width:100%;max-width:440px;background:var(--sheet);border:1px solid var(--line);border-radius:var(--radius);padding:28px}
.card.wide{max-width:760px}
.card h2{font-size:1.45rem;margin-bottom:14px}
.lead{color:var(--muted);margin:0 0 14px}
label{display:block;font-weight:700;margin:14px 0 6px;font-size:.95rem}
input{width:100%;padding:12px 14px;font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:6px}
input:focus{border-color:var(--navy);outline:2px solid var(--navy);outline-offset:0}
input.code{font-size:1.5rem;letter-spacing:.3em;text-align:center;font-weight:700}
.pass{position:relative}
.pass input{padding-right:92px}
.eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:0;color:var(--navy);font-weight:700;font-size:.85rem;padding:8px}
.hint{font-size:.88rem;color:var(--muted);margin:6px 0 0}
.btn{display:inline-block;width:100%;margin-top:18px;padding:13px 18px;border-radius:6px;border:1px solid var(--navy);background:var(--navy);color:#fff;font-weight:700}
:root[data-theme="dark"] .btn{color:#0E151F}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .btn{color:#0E151F}}
.btn:disabled{opacity:.6;cursor:progress}
.btn.ghost{background:transparent;color:var(--navy)}
.btn.small{width:auto;margin:0;padding:7px 14px;font-size:.9rem}
.link{background:none;border:0;padding:4px 0;color:var(--navy);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.links{margin-top:18px;display:grid;gap:8px;justify-items:start}
.links p{margin:0}
#fRecuperar .link{margin-top:12px}

/* mensagens */
.msg:empty{display:none}
.msg{margin-top:14px;padding:10px 12px;border-radius:6px;font-size:.95rem}
.msg.bad{background:var(--bad-soft);color:var(--bad)}
.msg.ok{background:var(--ok-soft);color:var(--ok)}
.msg.warn{background:var(--warn-soft);color:var(--warn)}

/* área logada */
.shell{min-height:100vh;display:flex;flex-direction:column}
.top{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:12px;
  background:var(--sheet);border-bottom:1px solid var(--line);padding:12px 20px;padding-top:max(12px,env(safe-area-inset-top))}
.who{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.95rem;min-width:0}
.who span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.content{flex:1;padding:28px 20px;display:flex;justify-content:center;align-items:flex-start;padding-bottom:max(28px,env(safe-area-inset-bottom))}
.next{border-left:4px solid var(--navy);background:var(--navy-soft);padding:14px 16px;border-radius:0 6px 6px 0}
.next p{margin:0 0 6px} .next p:last-child{margin:0}

/* aviso rápido */
.toast{position:fixed;left:50%;bottom:max(20px,env(safe-area-inset-bottom));transform:translateX(-50%);z-index:50;
  background:var(--ink);color:var(--paper);padding:12px 18px;border-radius:6px;max-width:calc(100% - 32px)}

/* celular */
@media (max-width:820px){
  .gate{grid-template-columns:1fr}
  .gate-side{display:none}
  .gate-main{justify-content:flex-start;padding-top:max(28px,env(safe-area-inset-top))}
  .brand-mobile{display:flex}
  .card{padding:22px 18px}
  .who span{display:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* ===== parte 2: empresa ===== */
.tabs{display:flex;gap:4px;margin-right:auto;margin-left:24px}
.tabs button{background:none;border:0;padding:8px 12px;border-radius:6px;color:var(--muted);font-weight:700}
.tabs button[aria-current="page"]{background:var(--navy-soft);color:var(--navy-ink)}
.tabs button:hover{color:var(--ink)}
.card h3{font-size:1.1rem;margin:0 0 10px}
fieldset{border:0;padding:0;margin:18px 0 0}
legend{font-weight:700;font-size:.95rem;padding:0;margin-bottom:8px}
select{width:100%;padding:12px 14px;font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:6px}
input:disabled,select:disabled{opacity:.75;cursor:not-allowed}
input.upper{text-transform:uppercase}
input.code-text{font-size:1.2rem;letter-spacing:.12em;font-weight:700}
.btn.fit{width:auto}
.row-btns{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.row-btns .btn{width:auto}

/* escolha inicial */
.choices{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:8px}
.choice{text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:18px;color:var(--ink);display:grid;gap:6px}
.choice strong{font-size:1.05rem;color:var(--navy-ink)}
.choice span{color:var(--muted);font-size:.95rem}
.choice:hover{border-color:var(--navy)}

/* tipo PF/PJ */
.seg{display:flex;flex-wrap:wrap;gap:8px}
.seg label{display:flex;align-items:center;gap:8px;margin:0;font-weight:400;padding:10px 14px;border:1px solid var(--line);border-radius:6px;background:var(--paper);cursor:pointer}
.seg label:has(input:checked){border-color:var(--navy);background:var(--navy-soft)}
.seg input,.np input,.swatches input[type=radio]{width:auto;margin:0;accent-color:var(--navy)}

/* segmento */
.niche-pick{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.np{display:flex;gap:10px;align-items:flex-start;margin:0;font-weight:400;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);cursor:pointer}
.np:has(input:checked){border-color:var(--navy);background:var(--navy-soft)}
.np input{margin-top:4px}
.np span{display:grid;gap:2px}
.np small{color:var(--muted);font-size:.85rem}

/* página com blocos */
.page{width:100%;max-width:760px}
.page-title{font-size:1.6rem;margin:0 0 16px}
.block{margin-bottom:16px}
.readonly-note{background:var(--warn-soft);color:var(--warn);padding:10px 14px;border-radius:6px;margin:0 0 16px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.facts{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;margin:0 0 16px}
.facts dt{color:var(--muted)}
.facts dd{margin:0;font-weight:700}

/* logotipo */
.logo-row{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-bottom:6px}
.logo-box{width:160px;height:100px;border:1px dashed var(--line);border-radius:6px;display:grid;place-items:center;background:#fff;overflow:hidden}
.logo-box span{color:#7a8696;font-size:.9rem}
.logo-box img{max-width:100%;max-height:100%;object-fit:contain}
.logo-actions{display:grid;gap:6px;justify-items:start}
.file-btn{margin:0;font-weight:700}

/* cores */
.swatches{display:flex;flex-wrap:wrap;gap:8px}
.swatches label{display:flex;align-items:center;gap:8px;margin:0;font-weight:400;padding:8px 12px;border:1px solid var(--line);border-radius:6px;background:var(--paper);cursor:pointer}
.swatches label:has(input:checked){border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy)}
.swatches span{width:18px;height:18px;border-radius:4px;display:inline-block}
.swatches input[type=color]{width:28px;height:24px;padding:0;border:0;background:none}

/* prévia do cabeçalho do documento: sempre papel branco */
.doc-preview{--doc:#1365B9;margin-top:18px;background:#fff;color:#111;border:1px solid #cfd6df;border-radius:4px;padding:16px 18px;font-size:13px}
.dp-head{display:flex;gap:14px;align-items:center}
.dp-logo{width:84px;height:48px;border:1px solid #d5dbe3;display:grid;place-items:center;color:#8a95a3;font-size:11px;overflow:hidden}
.dp-logo img{max-width:100%;max-height:100%;object-fit:contain}
.dp-title{font-weight:700;color:var(--doc);font-size:14px}
.dp-code{color:#444;font-size:12px}
.dp-bar{height:6px;background:var(--doc);margin:12px 0 10px;border-radius:2px}
.doc-preview p{margin:0;font-weight:700;color:var(--doc)}

@media (max-width:820px){
  .tabs{margin-left:8px}
  .tabs button{padding:8px}
  .brand-name{display:none}
  .choices,.niche-pick,.two{grid-template-columns:1fr}
  .facts{grid-template-columns:1fr;gap:0}
  .facts dd{margin-bottom:8px}
}

/* ===== parte 3: documentos e biblioteca ===== */
.page.wide{max-width:1100px}
.page-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.page-head .page-title{margin:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.muted{color:var(--muted)}
.filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin-bottom:12px}
.filters input,.filters select{padding:10px 12px}
.list-wrap{background:var(--sheet);border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto}
.list-count{margin:0;padding:10px 14px;color:var(--muted);font-size:.9rem;border-bottom:1px solid var(--line)}
table.list{width:100%;border-collapse:collapse;font-size:.95rem}
table.list th{text-align:left;font-size:.85rem;color:var(--muted);font-weight:700;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--paper)}
table.list td{padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:top}
table.list tr:last-child td{border-bottom:0}
table.list .c-chk{width:36px;padding-right:0}
table.list .c-chk input{width:18px;height:18px;accent-color:var(--navy)}
table.list .c-code{white-space:nowrap}
.empty{padding:18px 14px;margin:0;color:var(--muted)}
.empty-state{padding:28px 22px}
.empty-state p{margin:0 0 8px}
.chip{display:inline-block;font-size:.8rem;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}
.st-rascunho{background:var(--warn-soft);color:var(--warn)}
.st-em_revisao{background:var(--navy-soft);color:var(--navy-ink)}
.st-aprovado{background:var(--ok-soft);color:var(--ok)}
.st-desativado,.st-obsoleto{background:var(--line);color:var(--muted)}
.bulk{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:var(--navy-soft);padding:10px 14px;border-radius:6px;margin-bottom:12px}
.bulk .btn.small{margin:0}
.chk-all{display:flex;align-items:center;gap:8px;margin:0;font-weight:700}
.chk-all input{width:18px;height:18px;accent-color:var(--navy)}
.warn-box{margin-bottom:14px;border-left-color:var(--warn);background:var(--warn-soft)}
.warn-box ul{margin:6px 0 0;padding-left:20px}
#dMsg,#bMsg,#vMsg{margin:0 0 12px}

/* leitura do documento */
.back{margin-bottom:10px}
.doc-top{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-start;margin-bottom:12px}
.doc-code{margin:0;color:var(--muted);font-weight:700}
.doc-top .page-title{margin:2px 0 6px}
.doc-state{margin:0}
.doc-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;max-width:520px;justify-content:flex-end}
.doc-actions .btn{margin:0}
.btn.primary{background:var(--navy);color:#fff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .btn.primary{color:#0E151F}}
.doc-actions .hint{flex-basis:100%;text-align:right}
.versions{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-bottom:12px;color:var(--muted);font-size:.9rem}
.vbtn{background:var(--sheet);border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-size:.85rem;color:var(--ink)}
.vbtn.on{border-color:var(--navy);background:var(--navy-soft);font-weight:700}
.annexes{margin-top:18px;background:var(--sheet);border:1px solid var(--line);border-radius:var(--radius);padding:16px 20px}
.annexes h3{margin:0 0 8px;font-size:1.05rem}
.annexes ul{margin:0;padding-left:18px;display:grid;gap:6px}
.link.inline{padding:0;font-weight:700}

/* folha do documento: sempre como papel branco */
.paper{--doc:#1365B9;position:relative;background:#fff;color:#111;border:1px solid #cfd6df;border-radius:4px;padding:28px 34px;font-size:15px;line-height:1.5;overflow-x:auto}
.paper .watermark{background:#FBF0D2;color:#7A5600;font-weight:700;font-size:12px;letter-spacing:.04em;text-align:center;padding:6px;margin:-28px -34px 18px;border-bottom:1px solid #eadca8}
.doc-head{width:100%;border-collapse:collapse;margin-bottom:18px}
.doc-head td{border:1px solid #9aa5b3;padding:8px 10px;vertical-align:middle}
.dh-logo{width:150px;text-align:center}
.dh-logo img{max-width:130px;max-height:60px;object-fit:contain}
.dh-logo span{font-weight:700;font-size:12px;color:#444}
.dh-org{font-size:12px;color:#444}
.dh-doc{font-weight:700;color:var(--doc);font-size:16px;text-transform:uppercase}
.dh-meta{width:190px;font-size:12px}
.doc-body h1,.doc-body h2,.doc-body h3{color:var(--doc);font-size:15px;text-transform:uppercase;margin:20px 0 8px;line-height:1.3}
.doc-body p{margin:0 0 8px}
.doc-body ul,.doc-body ol{margin:0 0 10px;padding-left:24px}
.doc-table{width:100%;border-collapse:collapse;margin:8px 0 14px;font-size:13.5px}
.doc-table th,.doc-table td{border:1px solid #9aa5b3;padding:6px 8px;text-align:left;vertical-align:top}
.doc-table thead th{background:var(--doc);color:#fff}
.doc-table.sign td{height:56px}
.doc-body .ph{margin:6px 0 12px}
.doc-body .link.inline{color:var(--doc)}

/* edição */
.editor-head{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;flex-wrap:wrap;margin-top:14px}
.editor-head label{margin:0 0 6px}
.small-seg{gap:0}
.small-seg button{background:var(--paper);border:1px solid var(--line);padding:6px 12px;font-size:.9rem;color:var(--ink)}
.small-seg button:first-child{border-radius:6px 0 0 6px}
.small-seg button:last-child{border-radius:0 6px 6px 0;border-left:0}
.small-seg button[aria-selected="true"]{background:var(--navy-soft);border-color:var(--navy);font-weight:700}
.toolbar{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}
.toolbar button{background:var(--sheet);border:1px solid var(--line);border-radius:6px;padding:6px 10px;font-size:.85rem;color:var(--ink)}
textarea{width:100%;padding:14px;font:15px/1.55 ui-monospace,Consolas,"Courier New",monospace;color:var(--ink);background:var(--sheet);border:1px solid var(--line);border-radius:6px;resize:vertical;min-height:320px}
textarea:focus{border-color:var(--navy);outline:2px solid var(--navy);outline-offset:0}
#ePrevia{margin-top:8px;max-height:70vh;overflow:auto}
details.import{margin-top:14px}
details.import summary{cursor:pointer;color:var(--navy);font-weight:700}
.toggle{display:flex;align-items:center;gap:10px;font-weight:700;margin:6px 0 0}
.toggle input{width:20px;height:20px;accent-color:var(--navy)}

@media (max-width:820px){
  .filters{grid-template-columns:1fr}
  .tabs{overflow-x:auto;max-width:calc(100vw - 150px)}
  .tabs button{white-space:nowrap}
  .doc-actions{justify-content:flex-start}
  .doc-actions .hint{text-align:left}
  .paper{padding:18px 14px}
  .paper .watermark{margin:-18px -14px 14px}
  .dh-logo{width:90px}.dh-meta{width:auto}
  table.list .hide-sm{display:none}
}

/* impressão: só a folha */
@media print{
  body{background:#fff}
  .top,.back,.doc-top,.versions,#vMsg,.annexes,.toast{display:none!important}
  .content{padding:0}
  .page.wide{max-width:none}
  .paper{border:0;padding:0}
  .paper .watermark{margin:0 0 12px}
  .doc-table thead th{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* celular: menu fixo embaixo */
@media (max-width:820px){
  .tabs{position:fixed;left:0;right:0;bottom:0;z-index:20;margin:0;max-width:none;display:grid;grid-template-columns:repeat(4,1fr);gap:0;
    background:var(--sheet);border-top:1px solid var(--line);padding:4px 4px max(4px,env(safe-area-inset-bottom));overflow:visible}
  .tabs[hidden]{display:none}
  .tabs button{padding:10px 2px;font-size:.82rem;border-radius:6px;text-align:center}
  .shell:has(.tabs:not([hidden])) .content{padding-bottom:calc(84px + env(safe-area-inset-bottom))}
  .toast{bottom:calc(76px + env(safe-area-inset-bottom))}
}
@media print{.tabs{display:none!important}}
@media (max-width:820px){
  table.list thead{display:none}
  table.list,table.list tbody{display:block}
  table.list tr{display:grid;grid-template-columns:28px 1fr;column-gap:8px;padding:10px 12px;border-bottom:1px solid var(--line)}
  table.list tr:not(:has(.c-chk)){grid-template-columns:1fr}
  table.list tr:last-child{border-bottom:0}
  table.list td{border:0!important;padding:2px 0}
  table.list td.c-chk{grid-row:1 / span 4;padding-top:4px}
  table.list tr:has(.c-chk) td:not(.c-chk){grid-column:2}
}

/* ===== parte 4: registros, QR e assinatura ===== */
.tabs{grid-template-columns:repeat(5,1fr)}
@media (max-width:820px){.tabs{grid-template-columns:repeat(5,1fr)}.tabs button{font-size:.74rem}}
.search-lg{margin:4px 0 12px}
tr.dim td{color:var(--muted)}
.dh-qr{width:84px;padding:4px!important;text-align:center}
.dh-qr svg{width:76px;height:76px;display:block;margin:auto}
.qr-mini svg{width:96px;height:96px}
.seal{font-family:ui-monospace,Consolas,monospace;font-size:12px;margin-top:4px}
.sigt td{vertical-align:top}
.sigimg{max-width:260px;max-height:90px;display:block;margin-bottom:6px}
.rh{color:var(--doc);font-size:14px;text-transform:uppercase;margin:18px 0 8px}

/* campos do formulário */
.form-body .f-chk{background:#fff;border:0;color:#0b1f3a;font-size:19px;line-height:1;padding:0 2px;cursor:pointer;vertical-align:-2px}
.form-body .f-chk[aria-pressed="true"]{color:#0b5a2e}
.form-body .f-in{display:inline-block;font:inherit;font-size:14px;padding:2px 4px;margin:1px 0;border:0;border-bottom:1.5px solid #6f7d8f;border-radius:0;background:#f3f7fb;color:#111;max-width:100%}
.form-body .f-in[type=date],.form-body .f-in[type=time]{width:auto;min-width:9.5em}
.form-body .f-area{display:block;width:100%;min-height:34px;font:inherit;font-size:14px;padding:4px 6px;border:1px dashed #9aa5b3;border-radius:2px;background:#f3f7fb;color:#111;resize:vertical}
.form-body .f-in:focus,.form-body .f-area:focus{outline:2px solid #0D3D6E;background:#fff}
.form-body .f-ro{display:inline-block;min-width:3em;border-bottom:1px solid #6f7d8f;padding:0 3px;font-weight:700;color:#0b1f3a}
.form-body .f-ro.block{display:block;border:0;min-height:1.4em;white-space:pre-wrap}
.form-body .f-ro.empty{color:#999;font-weight:400}
.form-body .f-chk-ro{font-size:17px;color:#555}
.form-body .f-chk-ro.on{color:#0b1f3a;font-weight:700}
.add-row{display:block;margin:-8px 0 14px;color:#0D3D6E}
.fill-extra{margin-top:16px}
.fill-extra .mt{margin-top:18px}
textarea.plain{font-family:var(--font);min-height:80px}
.photos{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0}
.photos figure{margin:0;width:120px;display:grid;gap:4px;justify-items:start}
.photos img{width:120px;height:90px;object-fit:cover;border-radius:4px;border:1px solid var(--line)}
.photos.ro figure{width:180px}.photos.ro img{width:180px;height:135px;border-color:#cfd6df}
.photos figcaption{font-size:12px;color:#555}
.sigbox{border:1.5px dashed var(--line);border-radius:6px;background:#fff;margin:6px 0;touch-action:none}
.sigbox canvas{display:block;touch-action:none;cursor:crosshair}

/* leitor */
.scanbox{position:relative;max-width:480px;aspect-ratio:1;background:#000;border-radius:8px;overflow:hidden;margin:12px 0}
.scanbox video{width:100%;height:100%;object-fit:cover}
.scanframe{position:absolute;inset:18%;border:3px solid rgba(255,255,255,.85);border-radius:12px}

/* verificação */
.verify{padding:14px 16px;border-radius:6px;margin-bottom:14px}
.verify.ok{background:var(--ok-soft);color:var(--ok)}
.verify.warn{background:var(--warn-soft);color:var(--warn)}
.verify.bad{background:var(--bad-soft);color:var(--bad)}
.verify p{margin:6px 0 0}

@page{size:A4;margin:14mm 12mm}
@media print{
  .fill-extra,.add-row,#pRetifica,#gAviso,.doc-top,.back{display:none!important}
  .dh-qr svg{width:64px;height:64px}
}
.doc-table thead th .f-ro,.doc-table thead th .f-chk-ro{color:#fff;border-bottom-color:rgba(255,255,255,.75)}
.doc-table thead th .f-chk{background:transparent;color:#fff}
@media print{
  html,body{width:auto;height:auto}
  .shell{display:block;min-height:0}
  .content{display:block!important;padding:0!important}
  .page,.page.wide{max-width:none!important;width:auto!important}
  .paper{overflow:visible!important;border:0!important;padding:0!important;font-size:12.5px}
  .doc-table{font-size:11.5px;page-break-inside:auto}
  .doc-table tr{page-break-inside:avoid}
  .photos.ro figure{page-break-inside:avoid}
  .sigt{page-break-inside:avoid}
}

/* ===== parte 5: equipe, avisos e painel ===== */
.owner-btn{white-space:nowrap}
.tabs button{position:relative}
.tabs button[data-badge]:not([data-badge=""])::after{content:attr(data-badge);position:absolute;top:-6px;right:-8px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--bad);color:#fff;font-size:11px;line-height:18px;text-align:center}
.notices{margin-top:20px}
.notices h3{font-size:1.05rem;margin:0 0 10px}
.notice{border:1px solid var(--line);border-left:4px solid var(--navy);border-radius:6px;padding:12px 14px;margin-bottom:10px;background:var(--sheet)}
.notice.lv-importante{border-left-color:var(--warn)}
.notice.lv-urgente{border-left-color:var(--bad);background:var(--bad-soft)}
.notice.read{opacity:.75}
.notice header{display:flex;gap:6px;align-items:baseline;flex-wrap:wrap}
.notice p{margin:8px 0 4px}
.notice .chip{background:var(--navy-soft);color:var(--navy-ink)}
.notice.lv-importante .chip{background:var(--warn-soft);color:var(--warn)}
.notice.lv-urgente .chip{background:var(--bad);color:#fff}
.inline-form{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.inline-form input,.inline-form select{flex:1;min-width:220px}
.inline-form .btn{margin:0}
.list-wrap.flat{border:0;background:none}
.list-wrap.flat table.list th{background:none}
table.list select{padding:6px 8px;font-size:.9rem;width:auto}
.invite-box{margin-top:12px;background:var(--ok-soft);color:var(--ink);border-radius:6px;padding:14px 16px}
.invite-box p{margin:0 0 8px}
.invite-box .btn{margin:0;text-decoration:none;display:inline-block}
.code-big{font-family:ui-monospace,Consolas,monospace;font-size:1.6rem;font-weight:700;letter-spacing:.15em;color:var(--ok)}
.plain-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.plain-list code{font-weight:700;letter-spacing:.08em}
.pn-tabs{margin-bottom:14px}
.stats{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:0 0 14px}
.stats div{background:var(--sheet);border:1px solid var(--line);border-radius:6px;padding:10px 12px}
.stats dt{color:var(--muted);font-size:.85rem}
.stats dd{margin:0;font-size:1.6rem;font-weight:700;color:var(--navy-ink)}
.filters.two-f{grid-template-columns:2fr 1fr}
.st-active{background:var(--ok-soft);color:var(--ok)}
.st-trial{background:var(--navy-soft);color:var(--navy-ink)}
.st-past_due{background:var(--warn-soft);color:var(--warn)}
.st-canceled{background:var(--line);color:var(--muted)}
tr.adjust td{background:var(--paper)}
.adj-form{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.adj-form label{margin:0;font-size:.85rem}
.adj-form select,.adj-form input{display:block;margin-top:4px;padding:8px 10px;width:auto;min-width:150px}
.adj-form .btn{margin:0}
@media (max-width:820px){
  .owner-btn{padding:6px 8px;font-size:.8rem}
  .stats{grid-template-columns:1fr 1fr 1fr}
  .filters.two-f{grid-template-columns:1fr}
  .tabs button[data-badge]:not([data-badge=""])::after{right:2px;top:0}
}

/* ===== Hotmart: faixa de assinatura e painel ===== */
.access-bar{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;padding:10px 20px;font-size:.95rem;border-bottom:1px solid var(--line)}
.access-bar.info{background:var(--navy-soft);color:var(--navy-ink)}
.access-bar.warn{background:var(--warn-soft);color:var(--warn)}
.access-bar.bad{background:var(--bad-soft);color:var(--bad)}
.access-bar .btn{margin:0;text-decoration:none}
input.short{max-width:120px}
.prod-form{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end;margin-top:14px}
.prod-form label{margin:0;font-size:.85rem;display:grid;gap:4px}
.prod-form input,.prod-form select{padding:8px 10px}
.prod-form .wide-l,.adj-form .wide-l{flex-basis:100%}
.prod-form .btn{margin:0}
.prod-form .msg{flex-basis:100%;margin:0}
#hmUrl{font-family:ui-monospace,Consolas,monospace;font-size:.85rem}
@media print{.access-bar{display:none!important}}

/* ===== importação de documentos ===== */
.dropzone{display:grid;gap:4px;justify-items:center;text-align:center;margin:6px 0 16px;padding:28px 18px;border:2px dashed var(--line);border-radius:var(--radius);background:var(--sheet);cursor:pointer;font-weight:400}
.dropzone strong{color:var(--navy);font-size:1.05rem}
.dropzone span{color:var(--muted);font-size:.9rem}
.dropzone.over{border-color:var(--navy);background:var(--navy-soft)}
.imp-list{display:grid;gap:12px;margin-bottom:12px}
.imp-row{background:var(--sheet);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px}
.imp-row.bad{border-left:4px solid var(--bad)}
.imp-row.ok{border-left:4px solid var(--ok)}
.imp-row p{margin:6px 0 0}
.imp-head{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.imp-head .link{margin-left:auto}
.imp-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:10px;margin-top:8px}
.imp-grid label{margin:0;font-size:.85rem;display:grid;gap:4px}
.imp-grid input,.imp-grid select{padding:8px 10px}
.toggle.small{font-size:.9rem;margin-top:10px}
.toggle.small input{width:18px;height:18px}
.imp-code{max-width:280px;margin-top:6px;padding:8px 10px}
.imp-row details{margin-top:10px}
.imp-row summary{cursor:pointer;color:var(--navy);font-weight:700}
.imp-prev{margin-top:8px;max-height:420px;overflow:auto}
@media (max-width:820px){.imp-grid{grid-template-columns:1fr}}

/* ===== assistente com IA ===== */
.ai-card{margin-top:18px;border-left:4px solid var(--navy)}
.ai-card .row-btns .btn{margin:0}
.ai-box{margin-top:12px;display:grid;gap:12px}
.ai-wait{color:var(--muted);font-style:italic;margin:0}
.ai-fala{background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:12px 16px;color:var(--ink)}
.ai-fala h2,.ai-fala h3{color:var(--navy-ink)!important}
.ai-doc{display:grid;gap:8px}
.ai-doc .btn{margin:0}
.ai-prev{max-height:480px;overflow:auto}
.ai-fontes{background:var(--ok-soft);border-radius:6px;padding:10px 14px;font-size:.92rem}
.ai-fontes ul{margin:6px 0 0;padding-left:18px}
.ai-fontes a{color:var(--ok);word-break:break-word}
.ai-ex{display:flex;flex-wrap:wrap;gap:4px 14px;margin:10px 0 4px;align-items:baseline}
.ai-ex .link{font-weight:400;text-align:left}

/* ===== normas ===== */
.normas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin:8px 0 14px}
.norma{background:var(--sheet);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;display:grid;gap:4px;align-content:start}
.norma header{display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.norma p{margin:0}
.norma .btn{margin-top:8px;text-decoration:none}
.norma.rev{opacity:.75}
.small-t{font-size:.85rem}
a.norma-link{color:var(--doc);text-decoration:underline dotted;text-underline-offset:3px}
a.norma-link.rev{text-decoration:line-through}
#fNorma label{display:grid;gap:4px}
@media print{a.norma-link{color:inherit;text-decoration:none}}

/* ===== suporte ===== */
.who .owner-btn{position:relative}
.who [data-badge]:not([data-badge=""])::after{content:attr(data-badge);position:absolute;top:-7px;right:-7px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--bad);color:#fff;font-size:11px;line-height:18px;text-align:center;font-weight:700}
tr.unread td{background:var(--navy-soft)}
.anexo-l{display:inline-block;margin:10px 0 0;cursor:pointer;font-weight:700}
select.auto-w{width:auto}
.bolhas{display:grid;gap:10px;margin:14px 0}
.bolha{max-width:85%;border-radius:10px;padding:10px 14px;border:1px solid var(--line);background:var(--sheet)}
.bolha.cliente{justify-self:end;background:var(--navy-soft);border-color:transparent}
.bolha.suporte{justify-self:start;border-left:4px solid var(--ok)}
.b-head{display:flex;gap:10px;justify-content:space-between;align-items:baseline;margin-bottom:4px}
.b-head small{color:var(--muted)}
.b-body{white-space:normal;word-break:break-word}
.b-img{display:block;max-width:100%;max-height:320px;margin-top:8px;border-radius:6px;border:1px solid var(--line)}
@media (max-width:820px){.bolha{max-width:100%}.owner-btn{padding:6px 8px}}
@media (max-width:1320px){.who #whoName{display:none}}
.brand-name{white-space:nowrap}
.sm-only{display:none}
@media (max-width:820px){
  .lg-only{display:none}.sm-only{display:inline}
  .top{padding-left:12px;padding-right:12px;gap:8px}
  .who{gap:6px}
  .who .btn.small{padding:6px 9px;font-size:.8rem}
}
.niche-pick{grid-template-columns:repeat(2,1fr)}
@media (max-width:820px){.niche-pick{grid-template-columns:1fr}}


/* ===== identidade visual Meukitregulatori ===== */
h1,h2,h3,.page-title,.card h2,.btn,.tabs button,.code-big,.stats dd{font-family:"Poppins","Atkinson Hyperlegible",Verdana,sans-serif;letter-spacing:-.005em}
h1,h2,.page-title{font-weight:700}
.btn{font-weight:600}
.logo-pic{display:inline-flex}
.logo{display:block;height:auto;width:auto}
.splash .splash-logo{width:min(260px,60vw)}
.top-logo .logo{height:42px}
.gate-side{position:relative;overflow:hidden;background:linear-gradient(160deg,#EEF3F8 0%,var(--nevoa) 55%,#DDE6F0 100%)}
.gate-side::after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:linear-gradient(90deg,var(--cobalto) 0 33%,var(--ciano) 33% 66%,var(--ceu) 66%)}
.gate-logo .logo{width:min(300px,80%)}
.gate-pitch h1{color:var(--grafite)}
.gate-pitch p{color:#3E4A59;opacity:1}
.gate-foot{color:#56657A;opacity:1}
.niches li{border-left-width:4px;color:var(--grafite);font-weight:700}
.niches .n1{border-left-color:var(--cobalto)}.niches .n2{border-left-color:var(--ciano)}.niches .n3{border-left-color:var(--ceu)}
.niches .n4{border-left-color:var(--petroleo);font-weight:400;font-style:italic}
.brand-mobile .logo{height:56px}
.top{border-bottom:3px solid transparent;border-image:linear-gradient(90deg,var(--cobalto),var(--ciano),var(--ceu)) 1}
.btn:not(.ghost){background:var(--cobalto);border-color:var(--cobalto)}
.btn:not(.ghost):hover{background:#0F57A1}
.tabs button[aria-current="page"]{box-shadow:inset 0 -3px 0 var(--ciano)}
.link{color:var(--navy)}
.next{border-left-color:var(--petroleo)}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .gate-side{background:linear-gradient(160deg,#152233 0%,#0F1A27 100%);color:#E8EEF5}
  :root:not([data-theme="light"]) .gate-pitch h1,:root:not([data-theme="light"]) .niches li{color:#E8EEF5}
  :root:not([data-theme="light"]) .gate-pitch p,:root:not([data-theme="light"]) .gate-foot{color:#A9B8C9}
  :root:not([data-theme="light"]) .btn:not(.ghost){background:var(--navy);border-color:var(--navy);color:#0D141D}
}
@media (max-width:820px){.top-logo .logo{height:34px}}

/* ===== termos e privacidade ===== */
.aceite{display:flex;gap:10px;align-items:flex-start;font-weight:400;margin:16px 0 0;font-size:.95rem;line-height:1.45}
.aceite input{width:20px;height:20px;margin-top:2px;flex:none;accent-color:var(--cobalto)}
.gate-foot a{color:inherit}
.app-foot{text-align:center;color:var(--muted);font-size:.85rem;padding:14px 20px calc(14px + env(safe-area-inset-bottom))}
.app-foot a{color:var(--muted)}
@media (max-width:820px){.shell:has(.tabs:not([hidden])) .app-foot{padding-bottom:calc(90px + env(safe-area-inset-bottom))}}
@media print{.app-foot{display:none}}
.gate-foot-m{display:none;margin:18px 0 0;font-size:.85rem;color:var(--muted)}
.gate-foot-m a{color:var(--muted)}
@media (max-width:820px){.gate-foot-m{display:block}}

/* ===== ajustes do teste (v2.4) ===== */
/* QR de leitura no documento */
.qr-leitura{margin-top:18px;background:var(--sheet);border:1px solid var(--line);border-left:4px solid var(--petroleo);border-radius:var(--radius);padding:16px 20px;display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.qr-leitura h3{margin:0 0 6px;font-size:1.05rem}
.qr-leitura .qr-txt{flex:1;min-width:240px}
.qr-leitura .row-btns{margin-top:10px}
.qr-leitura .btn{margin:0}
.qr-img svg{width:130px;height:130px;display:block;background:#fff;padding:6px;border-radius:6px}
/* em preenchimento */
.drafts{margin:0 0 18px}
.drafts h3{margin:0 0 8px;font-size:1.05rem}
.drafts .list-wrap{border-left:4px solid var(--warn)}
/* guia */
.guia details{background:var(--sheet);border:1px solid var(--line);border-radius:10px;margin:0 0 10px;padding:0 18px}
.guia summary{cursor:pointer;padding:14px 0;font:600 1.02rem "Poppins","Atkinson Hyperlegible",sans-serif}
.guia .g-body{padding:0 0 14px}
.guia table{width:100%;border-collapse:collapse;font-size:.93rem;margin:6px 0}
.guia th,.guia td{border:1px solid var(--line);padding:6px 8px;text-align:left;vertical-align:top}
.guia th{background:var(--paper)}
.guia li{margin:4px 0}
.aj-top{margin:0 0 16px}
.aj-top .btn{margin:0}
/* leitura pública */
#gate.modo-leitura{grid-template-columns:1fr}
#gate.modo-leitura .gate-side,#gate.modo-leitura .brand-mobile{display:none}
#gate.modo-leitura .gate-main{justify-content:flex-start;align-items:center}
.leitura{width:100%;max-width:1000px}
.lp-nota{color:var(--muted);font-size:.88rem;text-align:center;margin:12px 0 0}
/* lista mestra */
.doc-table.lm td,.doc-table.lm th{font-size:12.5px}
.doc-table.lm tr.lm-des td{color:#888;text-decoration:line-through}
.lm-nota{font-size:12px;color:#555;margin-top:10px}

/* impressão: nada sai da folha */
@media print{
  .no-print,.qr-leitura,.drafts,#rRascunhos,.lp-nota{display:none!important}
  .doc-head{width:100%!important;table-layout:fixed}
  .doc-table{width:100%!important;max-width:100%!important;table-layout:auto}
  .doc-head td,.doc-table td,.doc-table th{overflow-wrap:anywhere;word-break:break-word}
  .doc-head .dh-logo{width:28mm}.doc-head .dh-meta{width:44mm}.doc-head .dh-qr{width:22mm}
  .doc-body img,.paper img{max-width:100%}
  .form-body .f-ro{max-width:100%}
  #gate.modo-leitura .gate-main{padding:0}
}
