@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:wght@700;900&display=swap');
:root{
  --sol:#D4880C;--sol-l:#FFF8EB;--sol-d:#A66A08;
  --verde:#15803D;--verde-l:#F0FDF4;--verde-d:#166534;
  --verm:#DC2626;--verm-l:#FEF2F2;--azul:#1E40AF;
  --pb:#1E293B;--pi-bg:#334155;--pi-br:#475569;--pt:#F1F5F9;--pl:#94A3B8;
  --hbg:#1E293B;--htxt:#F8FAFC;--hsub:rgba(255,255,255,.5);
  --mbg:#D4880C;--mtxt:#fff;
  --snbg:#334155;--sntxt:#FCD34D;
  --cxbg:#FFFFFF;--cxbr:#E2E8F0;--cxtxt:#1E293B;--cxl:#64748B;
  --dkbg:#F1F5F9;--dktxt:#1E293B;--dkl:#64748B;--dks:#94A3B8;
  --okbg:#F0FDF4;--okbr:#16A34A;--oktxt:#166534;
  --avbg:#FFF8EB;--avbr:#D4880C;--avtxt:#92400E;
  --rmbg:#FEF2F2;--rmbr:#FCA5A5;--rmtxt:#991B1B;
  --bbg:#F8FAFC;--dbr:#E2E8F0;--dtxt:#1E293B;--dtl:#64748B;--dh:#0F172A;
  --thbg:#CBD5E1;--thtxt:#0F172A;--tpar:#F8FAFC;--tbr:#E2E8F0;
  --rokbg:#F0FDF4;--roktxt:#166534;--ravbg:#FFF8EB;--ravtxt:#92400E;
  --plbg:#FFFBEB;--plbr:#D4880C;
  --ftbg:#1E293B;--fttxt:#94A3B8;--ftm:#FCD34D;
  --glbg:#FFFFFF;--glbr:#E2E8F0;--gls:#A66A08;
  --ntbg:#F0FDF4;--ntbr:#16A34A;--nttxt:#166534;
  --navbg:#FFF8EB;--navbr:#D4880C;--navtxt:#92400E;
  --sec-alt:#F2F5F9;
}
[data-tema="claro"]{
  --sol:#2563EB;--sol-l:#EFF6FF;--sol-d:#1D4ED8;--verde:#16A34A;--verde-l:#F0FDF4;--verde-d:#166534;--verm:#DC2626;
  --pb:#1E3A5F;--pi-bg:#1E4976;--pi-br:#60A5FA;--pt:#F0F9FF;--pl:#93C5FD;
  --hbg:#1E3A5F;--htxt:#F8FAFC;--hsub:rgba(255,255,255,.55);--mbg:#2563EB;--mtxt:#fff;--snbg:#2563EB;--sntxt:#fff;
  --cxbg:#FFFFFF;--cxbr:#DBEAFE;--cxtxt:#1E293B;--cxl:#1E40AF;
  --dkbg:#EEF4FF;--dktxt:#1E3A5F;--dkl:#1E40AF;--dks:#93C5FD;
  --okbg:#F0FDF4;--okbr:#16A34A;--oktxt:#166534;--avbg:#EFF6FF;--avbr:#2563EB;--avtxt:#1E40AF;
  --rmbg:#FEF2F2;--rmbr:#FCA5A5;--rmtxt:#991B1B;
  --bbg:#F0F9FF;--dbr:#DBEAFE;--dtxt:#1E293B;--dtl:#1E40AF;--dh:#1E3A5F;
  --thbg:#BFDBFE;--thtxt:#1E3A5F;--tpar:#F0F9FF;--tbr:#DBEAFE;
  --rokbg:#F0FDF4;--roktxt:#166534;--ravbg:#EFF6FF;--ravtxt:#1E40AF;
  --plbg:#EFF6FF;--plbr:#2563EB;--ftbg:#1E3A5F;--fttxt:#93C5FD;--ftm:#60A5FA;
  --glbg:#FFFFFF;--glbr:#DBEAFE;--gls:#1D4ED8;--ntbg:#F0FDF4;--ntbr:#16A34A;--nttxt:#166534;
  --navbg:#EFF6FF;--navbr:#2563EB;--navtxt:#1E40AF;
  --sec-alt:#E5F1FF;
}
[data-tema="esmeralda"]{
  --sol:#D97706;--sol-l:#FFFBEB;--sol-d:#B45309;--verde:#059669;--verde-l:#ECFDF5;--verde-d:#065F46;--verm:#DC2626;
  --pb:#064E3B;--pi-bg:#065F46;--pi-br:#34D399;--pt:#ECFDF5;--pl:#6EE7B7;
  --hbg:#064E3B;--htxt:#F8FAFC;--hsub:rgba(255,255,255,.5);--mbg:#059669;--mtxt:#fff;--snbg:#059669;--sntxt:#fff;
  --cxbg:#FFFFFF;--cxbr:#A7F3D0;--cxtxt:#064E3B;--cxl:#059669;
  --dkbg:#ECFDF5;--dktxt:#064E3B;--dkl:#64748B;--dks:#6EE7B7;
  --okbg:#ECFDF5;--okbr:#059669;--oktxt:#065F46;--avbg:#FFFBEB;--avbr:#D97706;--avtxt:#92400E;
  --rmbg:#FEF2F2;--rmbr:#FCA5A5;--rmtxt:#991B1B;
  --bbg:#F0FDF9;--dbr:#A7F3D0;--dtxt:#064E3B;--dtl:#059669;--dh:#064E3B;
  --thbg:#A7F3D0;--thtxt:#064E3B;--tpar:#ECFDF5;--tbr:#A7F3D0;
  --rokbg:#ECFDF5;--roktxt:#065F46;--ravbg:#FFFBEB;--ravtxt:#92400E;
  --plbg:#ECFDF5;--plbr:#059669;--ftbg:#064E3B;--fttxt:#6EE7B7;--ftm:#34D399;
  --glbg:#FFFFFF;--glbr:#A7F3D0;--gls:#065F46;--ntbg:#ECFDF5;--ntbr:#059669;--nttxt:#065F46;
  --navbg:#FFFBEB;--navbr:#D97706;--navtxt:#92400E;
  --sec-alt:#E8FAF3;
}
[data-tema="roxo"]{
  --sol:#7C3AED;--sol-l:#F5F3FF;--sol-d:#6D28D9;--verde:#16A34A;--verde-l:#F0FDF4;--verde-d:#166534;--verm:#DC2626;
  --pb:#F5F3FF;--pi-bg:#EDE9FE;--pi-br:#C4B5FD;--pt:#1E1B4B;--pl:#6D28D9;
  --hbg:#3B0764;--htxt:#F8FAFC;--hsub:rgba(255,255,255,.5);--mbg:#7C3AED;--mtxt:#fff;--snbg:#7C3AED;--sntxt:#fff;
  --cxbg:#FFFFFF;--cxbr:#DDD6FE;--cxtxt:#1E1B4B;--cxl:#7C3AED;
  --dkbg:#F5F3FF;--dktxt:#1E1B4B;--dkl:#6D28D9;--dks:#A78BFA;
  --okbg:#F0FDF4;--okbr:#16A34A;--oktxt:#166534;--avbg:#F5F3FF;--avbr:#7C3AED;--avtxt:#3B0764;
  --rmbg:#FEF2F2;--rmbr:#FCA5A5;--rmtxt:#991B1B;
  --bbg:#FAFAFE;--dbr:#DDD6FE;--dtxt:#1E1B4B;--dtl:#6D28D9;--dh:#1E1B4B;
  --thbg:#DDD6FE;--thtxt:#3B0764;--tpar:#F5F3FF;--tbr:#DDD6FE;
  --rokbg:#F0FDF4;--roktxt:#166534;--ravbg:#F5F3FF;--ravtxt:#3B0764;
  --plbg:#FAF5FF;--plbr:#7C3AED;--ftbg:#3B0764;--fttxt:#C4B5FD;--ftm:#A78BFA;
  --glbg:#FFFFFF;--glbr:#DDD6FE;--gls:#6D28D9;--ntbg:#F0FDF4;--ntbr:#16A34A;--nttxt:#166534;
  --navbg:#F5F3FF;--navbr:#7C3AED;--navtxt:#3B0764;
  --sec-alt:#EDE8FF;
}
[data-tema="branco"]{
  --sol:#B45309;--sol-l:#FFFBEB;--sol-d:#92400E;--verde:#16A34A;--verde-l:#F0FDF4;--verde-d:#166534;--verm:#DC2626;
  --pb:#FFFFFF;--pi-bg:#F8FAFC;--pi-br:#E2E8F0;--pt:#1E293B;--pl:#64748B;
  --hbg:#1E293B;--htxt:#F8FAFC;--hsub:rgba(255,255,255,.55);--mbg:#B45309;--mtxt:#fff;--snbg:#1E293B;--sntxt:#FCD34D;
  --cxbg:#FFFFFF;--cxbr:#E2E8F0;--cxtxt:#1E293B;--cxl:#64748B;
  --dkbg:#F8FAFC;--dktxt:#1E293B;--dkl:#64748B;--dks:#94A3B8;
  --okbg:#F0FDF4;--okbr:#16A34A;--oktxt:#166534;--avbg:#FFFBEB;--avbr:#B45309;--avtxt:#92400E;
  --rmbg:#FEF2F2;--rmbr:#FCA5A5;--rmtxt:#991B1B;
  --bbg:#FFFFFF;--dbr:#E2E8F0;--dtxt:#1E293B;--dtl:#64748B;--dh:#0F172A;
  --thbg:#E2E8F0;--thtxt:#0F172A;--tpar:#F8FAFC;--tbr:#E2E8F0;
  --rokbg:#F0FDF4;--roktxt:#166534;--ravbg:#FFFBEB;--ravtxt:#92400E;
  --plbg:#FFFBEB;--plbr:#B45309;--ftbg:#1E293B;--fttxt:#94A3B8;--ftm:#FCD34D;
  --glbg:#FFFFFF;--glbr:#E2E8F0;--gls:#92400E;--ntbg:#F0FDF4;--ntbr:#16A34A;--nttxt:#166534;
  --navbg:#FEF3C7;--navbr:#C27803;--navtxt:#78350F;
  --sec-alt:#F5F7FA;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Inter',sans-serif;background:var(--bbg);color:var(--dtxt);font-size:13px;line-height:1.6;overflow:hidden;}
/* ── LAYOUT APP ── */
.app-layout{display:flex;height:100vh;overflow:hidden;}
.doc-area{flex:1;overflow-y:auto;background:var(--bbg);}
.doc-area::-webkit-scrollbar{width:8px;}
.doc-area::-webkit-scrollbar-track{background:var(--bbg);}
.doc-area::-webkit-scrollbar-thumb{background:var(--cxbr);border-radius:4px;}
.doc-area::-webkit-scrollbar-thumb:hover{background:var(--dtl);}
/* ── PAINEL (sidebar) ── */
.painel{width:340px;min-width:280px;height:100%;background:var(--pb);padding:12px;display:flex;flex-direction:column;gap:4px;overflow-y:auto;overflow-x:hidden;flex-shrink:0;box-shadow:2px 0 16px rgba(0,0,0,.4);z-index:100;border-right:1px solid var(--pi-br);}
.painel::-webkit-scrollbar{width:5px;}
.painel::-webkit-scrollbar-track{background:transparent;}
.painel::-webkit-scrollbar-thumb{background:var(--pi-br);border-radius:3px;}
.p-marca{display:flex;align-items:center;gap:8px;padding:4px 0 8px;border-bottom:1px solid var(--pi-br);}
.p-nome{font-family:'Playfair Display',serif;font-size:16px;color:var(--sol);font-weight:900;line-height:1;}
.p-ver{font-size:8px;color:var(--pl);letter-spacing:1px;}
.pdiv{display:none;}
.pg-titulo{font-size:9px;color:var(--sol);text-transform:uppercase;letter-spacing:1px;font-weight:700;margin:8px 0 2px;padding:4px 0;border-bottom:1px solid var(--pi-br);cursor:pointer;display:flex;justify-content:space-between;align-items:center;user-select:none;}
.pg-titulo::after{content:'▾';font-size:10px;color:var(--pl);}
.pg-titulo.fechado::after{content:'▸';}
.pg-titulo.fechado+.pg{display:none!important;}
.conc-ativa{font-size:9px;color:var(--sol);padding:4px 8px;background:rgba(255,255,255,.05);border:1px solid var(--pi-br);border-radius:4px;margin:0;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pg{display:flex;flex-direction:column;gap:5px;}
.pg-row{display:flex;gap:5px;flex-wrap:wrap;}
.cg{display:flex;flex-direction:column;flex:1;min-width:0;}
.cg label{font-size:9px;color:var(--pl);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.cg input,.cg select{background:var(--pi-bg);border:1px solid var(--pi-br);color:var(--pt);border-radius:5px;padding:5px 7px;font-size:11px;font-family:'Inter',sans-serif;outline:none;width:100%;}
.cg input:focus,.cg select:focus{border-color:var(--sol);}
.cg.sm,.cg.md,.cg.lg{min-width:0;}
.pg-acoes{display:flex;gap:5px;flex-wrap:wrap;padding:6px 0;border-top:1px solid var(--pi-br);margin-top:4px;}
.bp{border:none;border-radius:6px;padding:6px 11px;font-weight:700;font-size:11px;cursor:pointer;white-space:nowrap;font-family:'Inter',sans-serif;transition:all .15s;flex:1;text-align:center;}
.bp-sol{background:var(--sol);color:#fff;}.bp-sol:hover{background:var(--sol-d);}
.bp-azul{background:#1E3A5F;color:#fff;}.bp-azul:hover{background:#2563EB;}
.bp-verde{background:var(--verde);color:#fff;}.bp-verde:hover{background:var(--verde-d);}
.bp-edit{background:#7C3AED;color:#fff;}.bp-edit.on{background:#BE123C;}
.bp-logo{background:var(--pi-bg);color:var(--pl);border:1px dashed var(--pi-br);border-radius:6px;padding:5px 9px;font-size:11px;font-weight:600;cursor:pointer;white-space:nowrap;font-family:'Inter',sans-serif;transition:all .15s;}
.bp-logo:hover{border-color:var(--sol);color:var(--sol);}
#logo-prv{height:28px;border-radius:3px;display:none;margin:4px 0;}
.tp-wrap,.ufv-wrap{display:flex;gap:4px;flex-wrap:wrap;}
.bt,.bu{background:var(--pi-bg);border:2px solid var(--pi-br);color:var(--pl);border-radius:20px;padding:3px 8px;font-size:10px;font-weight:600;cursor:pointer;transition:all .15s;font-family:'Inter',sans-serif;white-space:nowrap;line-height:1.4;}
.bt:hover,.bu:hover{border-color:var(--sol);}
.bt.on,.bu.on{background:var(--sol);color:#fff;border-color:var(--sol);}
/* Modal senha */
.senha-ov{display:none;position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:3000;align-items:center;justify-content:center;}
.senha-ov.on{display:flex;}
.senha-box{background:#fff;border-radius:12px;padding:26px 30px;width:300px;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.4);}
.senha-box h3{font-family:'Playfair Display',serif;font-size:19px;color:#111827;margin-bottom:5px;}
.senha-box p{font-size:11px;color:#6B7280;margin-bottom:14px;}
.senha-box input{width:100%;border:2px solid #E5E7EB;border-radius:7px;padding:9px 12px;font-size:15px;letter-spacing:4px;text-align:center;outline:none;font-family:'Inter',sans-serif;color:#111827;}
.senha-box input:focus{border-color:#7C3AED;}
.senha-erro{color:#B91C1C;font-size:11px;margin-top:5px;min-height:14px;}
.senha-btns{display:flex;gap:7px;margin-top:12px;}
.sbtn{flex:1;border:none;border-radius:6px;padding:8px;font-weight:700;font-size:12px;cursor:pointer;font-family:'Inter',sans-serif;}
.sbtn-ok{background:#7C3AED;color:#fff;}.sbtn-cc{background:#F3F4F6;color:#6B7280;}
.edit-bar{display:none;position:fixed;top:0;left:0;right:0;background:#7C3AED;padding:5px 14px;z-index:2500;align-items:center;gap:10px;flex-wrap:wrap;}
.edit-bar.on{display:flex;}
.edit-bar p{color:#fff;font-size:11px;font-weight:600;flex:1;}
.edit-bar button{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.4);color:#fff;border-radius:5px;padding:3px 10px;font-size:11px;cursor:pointer;font-family:'Inter',sans-serif;}
body.editando .app-layout{margin-top:34px;height:calc(100vh - 34px);}
body.banner-on .app-layout{margin-top:36px;height:calc(100vh - 36px);}
body.banner-on.editando .app-layout{margin-top:70px;height:calc(100vh - 70px);}
body.banner-on .cov{top:36px;}
body.banner-on .cmodal{max-height:calc(100vh - 64px);}
body.banner-on.editando .cov{top:70px;}
body.banner-on.editando .cmodal{max-height:calc(100vh - 98px);}
body.editando [data-edit]{outline:2px dashed rgba(124,58,237,.5);border-radius:3px;cursor:text;min-height:1em;transition:outline .15s;}
body.editando [data-edit]:hover{outline:2px solid #7C3AED;background:rgba(124,58,237,.05);}
/* ── DOCUMENTO ── */
.documento{max-width:960px;margin:30px auto 60px;background:#fff;box-shadow:0 4px 40px rgba(0,0,0,.1);border:1px solid var(--dbr);overflow:hidden;}
.doc-hdr{background:var(--hbg);padding:12px 28px;display:flex;justify-content:space-between;align-items:center;gap:10px;}
#logo-doc{height:30px;border-radius:3px;display:none;}
.hdr-logo{display:flex;align-items:center;gap:8px;}
.marca-n{font-family:'Playfair Display',serif;font-size:18px;font-weight:900;color:var(--sol);line-height:1;}
.marca-s{font-size:7px;color:var(--hsub);letter-spacing:2px;text-transform:uppercase;}
.marca-v{display:none;}
.doc-numbloco{text-align:right;flex-shrink:0;}
.doc-numl{font-size:7px;color:var(--hsub);letter-spacing:1.5px;text-transform:uppercase;}
.doc-numv{font-family:'Playfair Display',serif;font-size:16px;color:var(--sol);font-weight:700;line-height:1;}
.hdr-top{display:contents;}
.hdr-ct{display:none;}
.hdr-tit{display:none;}
.doc-titulo{padding:10px 28px;background:var(--bbg);border-bottom:1px solid var(--dbr);}
.doc-t{font-family:'Playfair Display',serif;font-size:14px;color:var(--dh);font-weight:700;line-height:1.3;}
.doc-pn{font-size:10px;color:var(--dtl);font-weight:600;letter-spacing:.5px;margin-top:2px;}
.doc-st{font-size:9px;color:var(--dtl);margin-top:1px;}
/* Meta faixa */
.mf{background:var(--mbg);padding:9px 38px;display:flex;gap:18px;flex-wrap:wrap;}
.mfl{font-size:8px;text-transform:uppercase;letter-spacing:2px;font-weight:700;color:rgba(0,0,0,.4);}
[data-tema="claro"] .mfl,[data-tema="esmeralda"] .mfl,[data-tema="roxo"] .mfl{color:rgba(255,255,255,.6);}
[data-tema="branco"] .mfl{color:rgba(255,255,255,.6);}
[data-tema="branco"] .mfv.val{color:#FCA5A5;}
.mfv{font-size:12px;font-weight:700;color:var(--mtxt);}
.mfv.val{color:var(--verm);}
[data-tema="claro"] .mfv.val,[data-tema="esmeralda"] .mfv.val,[data-tema="roxo"] .mfv.val{color:#FCA5A5;}
/* Corpo */
.doc-body{padding:0 38px 38px;}
.s{margin-top:22px;}
/* Alternância visual de seções — diferencia grupos de assunto */
.doc-body>.s:nth-child(even){background:var(--sec-alt,transparent);border-radius:8px;padding:6px 10px;margin-left:-10px;margin-right:-10px;}
.st{display:flex;align-items:center;gap:9px;margin-bottom:10px;padding-bottom:5px;border-bottom:2px solid var(--cxbr);}
.sn{background:var(--snbg);color:var(--sntxt);font-family:'Playfair Display',serif;font-size:11px;font-weight:700;width:23px;height:23px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.st h2{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--dh);}
/* Grids */
.g2{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.g3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;}
.g4{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:7px;}
/* Caixas */
.cx{background:var(--cxbg);border:1px solid var(--cxbr);border-radius:7px;padding:9px 12px;overflow:hidden;}
.cx.dk{background:var(--dkbg);border-color:transparent;}
.cx.ok{background:var(--okbg);border-color:var(--okbr);}
.cx.av{background:var(--avbg);border-color:var(--avbr);}
.cx.rm{background:var(--rmbg);border-color:var(--rmbr);}
.cx.fix{background:var(--okbg);border-color:var(--okbr);border-left:3px solid var(--verde);}
.cxl{font-size:9px;text-transform:uppercase;letter-spacing:1px;font-weight:600;margin-bottom:3px;color:var(--cxl);}
.cx.dk .cxl{color:var(--dkl);}.cx.ok .cxl{color:var(--verde-d);}.cx.av .cxl{color:var(--sol-d);}.cx.rm .cxl{color:var(--verm);}.cx.fix .cxl{color:var(--verde-d);}
.cxv{font-size:13px;font-weight:700;color:var(--cxtxt);line-height:1.2;white-space:nowrap;}
.cx.dk .cxv{color:var(--dktxt);}.cx.ok .cxv{color:var(--oktxt);}.cx.av .cxv{color:var(--avtxt);}.cx.rm .cxv{color:var(--rmtxt);}.cx.fix .cxv{color:var(--verde-d);}
.cxs{font-size:10px;margin-top:2px;color:var(--dtl);white-space:nowrap;}
.cx.dk .cxs{color:var(--dks);}
/* Separador económico */
.sep-econ{background:var(--avbg);border:1px solid var(--avbr);border-radius:8px;padding:9px 13px;margin:10px 0 5px;display:flex;align-items:center;gap:8px;}
.sep-econ .sep-ico{font-size:14px;}
.sep-econ p{font-size:11px;color:var(--avtxt);font-weight:600;}
.sep-fix{background:var(--okbg);border:1px solid var(--okbr);border-radius:8px;padding:9px 13px;margin:5px 0;display:flex;align-items:center;gap:8px;}
.sep-fix p{font-size:11px;color:var(--verde-d);font-weight:600;}
/* Tabelas */
table{width:100%;border-collapse:collapse;margin-top:5px;font-size:12px;table-layout:auto;}
thead tr{background:var(--thbg);}
thead th{padding:7px 9px;text-align:center;font-size:9px;letter-spacing:1px;text-transform:uppercase;font-weight:700;color:var(--thtxt);border-bottom:2px solid var(--thbr,rgba(0,0,0,.15));}
tbody tr{border-bottom:1px solid var(--tbr);}
tbody tr:nth-child(even){background:var(--tpar);}
tbody td{padding:6px 9px;color:var(--dtxt);text-align:center;}
td.n{text-align:center;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px;}
td:first-child{text-align:left;}
tr.rok{background:var(--rokbg)!important;}tr.rok td{color:var(--roktxt)!important;font-weight:700;}
tr.rav{background:var(--ravbg)!important;}tr.rav td{color:var(--ravtxt)!important;font-weight:700;}
tr.fix-row td{color:var(--verde-d)!important;font-weight:600;font-style:italic;}
/* Plano box */
.pb{border:2px solid var(--plbr);border-radius:10px;padding:13px 16px;background:var(--plbg);margin-top:7px;position:relative;}
.pb-badge{position:absolute;top:-9px;right:12px;background:var(--sol);color:#fff;font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:2px 9px;border-radius:20px;}
.pb-n{font-family:'Playfair Display',serif;font-size:16px;font-weight:700;color:var(--dh);margin-bottom:2px;}
.pb-d{font-size:11px;color:var(--dtl);margin-bottom:10px;}
.pb-spl{display:flex;gap:6px;margin-bottom:10px;}
.spl{flex:1;background:#fff;border-radius:6px;padding:8px;border:1px solid var(--cxbr);text-align:center;}
.spl-p{font-family:'Playfair Display',serif;font-size:20px;font-weight:900;line-height:1;}
.spl-p.loc{color:var(--sol-d);}.spl-p.ms{color:var(--verde);}.spl-p.in{color:var(--azul);}
.spl-l{font-size:8px;}
.spl-l{font-size:9px;color:var(--dtl);text-transform:uppercase;letter-spacing:.5px;margin-top:2px;}
.vrow{display:flex;gap:6px;}
.vb{flex:1;background:#fff;border:1px solid var(--cxbr);border-radius:6px;padding:8px;text-align:center;}
.vb.ok{background:var(--okbg);border-color:var(--okbr);}
/* Formula box */
.formula-box{background:var(--cxbg);border:1px solid var(--cxbr);border-radius:6px;padding:6px 12px;margin:6px 0;text-align:center;}
.formula-box p{font-size:9px;color:var(--dtl);margin-bottom:2px;}
.formula-box .fml{font-family:'Playfair Display',serif;font-size:12px;color:var(--sol);font-weight:700;letter-spacing:.3px;}
.formula-box .fml-sub{font-size:9px;color:var(--dtl);margin-top:2px;}
/* Marcos */
.ml{list-style:none;margin-top:5px;}
.ml li{display:flex;align-items:flex-start;gap:7px;padding:4px 0;border-bottom:1px solid var(--cxbr);font-size:11px;color:var(--dtxt);}
.ml li:last-child{border-bottom:none;}
.mt{background:var(--snbg);color:var(--sntxt);font-size:9px;font-weight:700;padding:2px 6px;border-radius:4px;white-space:nowrap;min-width:64px;text-align:center;}
/* Listas numeradas */
.rl{list-style:none;counter-reset:rc;}
.rl li{counter-increment:rc;padding:4px 0 4px 24px;border-bottom:1px solid var(--cxbr);font-size:12px;color:var(--dtxt);position:relative;}
.rl li::before{content:counter(rc,decimal-leading-zero);position:absolute;left:0;color:var(--sol);font-weight:700;font-size:10px;}
.rl li:last-child{border-bottom:none;}
/* Notas */
.nt{background:var(--ntbg);border-left:4px solid var(--ntbr);border-radius:0 6px 6px 0;padding:8px 12px;font-size:12px;color:var(--nttxt);margin-top:6px;}
.nt.av{background:var(--navbg);border-left-color:var(--navbr);color:var(--navtxt);}
.nt.rm{background:var(--rmbg);border-left-color:var(--verm);color:var(--rmtxt);}
/* Ressalva simulação */
.ressalva{background:var(--avbg);border:1px solid var(--avbr);border-radius:6px;padding:8px 12px;font-size:11px;color:var(--avtxt);margin:7px 0;}
/* Penalidade */
.penb{background:var(--rmbg);border:1px solid var(--rmbr);border-left:4px solid var(--verm);border-radius:7px;padding:10px 12px;margin-top:7px;}
.penb h4{color:var(--verm);font-size:10px;text-transform:uppercase;letter-spacing:1px;margin-bottom:6px;}
/* Assinaturas */
.ag{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:20px;}
.ac{padding:14px 20px;text-align:center;border:none;}
.al{font-size:10px;color:var(--dtl);margin-top:2px;}
.an{font-weight:700;font-size:12px;color:var(--dtxt);margin-bottom:4px;}
/* Rodapé */
.ft{background:var(--ftbg);padding:6px 28px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:4px;}
.ftx{font-size:9px;color:var(--fttxt);}
.ftm{color:var(--ftm);font-weight:700;}
.ftb{display:flex;flex-direction:column;gap:1px;}
/* Anexo */
.ax-div{background:var(--hbg);padding:13px 38px;display:flex;align-items:center;gap:11px;}
.ax-div h2{font-family:'Playfair Display',serif;font-size:14px;color:var(--sol);font-weight:700;}
.ax-div p{font-size:10px;color:var(--hsub);}
.ax-body{padding:0 38px 38px;}
/* Glossário */
.gg{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:6px;}
.gi{background:var(--glbg);border:1px solid var(--glbr);border-radius:6px;padding:7px 10px;display:flex;gap:6px;align-items:flex-start;}
.gs{font-weight:800;font-size:11px;color:var(--gls);min-width:58px;font-family:'Playfair Display',serif;}
.gd{font-size:11px;color:var(--dtxt);line-height:1.5;}
/* ── MODAL COMPARATIVO ── */
.cov{display:none;position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:2000;align-items:center;justify-content:center;padding:14px 8px;overflow:hidden;}
.cov.on{display:flex;}
.cmodal{background:#F8FAFC;border-radius:12px;width:100%;max-width:1060px;box-shadow:0 20px 80px rgba(0,0,0,.4);overflow-y:auto;overflow-x:hidden;max-height:calc(100vh - 28px);flex-shrink:0;}
/* Configurações — modal redimensionável */
#cfg-ov{overflow:auto;align-items:flex-start;padding-top:20px;}
#cfg-modal{display:flex;flex-direction:column;resize:both;overflow:hidden;height:82vh;min-width:620px;min-height:340px;max-width:98vw;position:relative;}
#cfg-modal>.chdr{flex-shrink:0;}
#cfg-modal>div:not(.chdr):not([id]){flex-shrink:0;}
#cfg-modal>div[id^="cfg-"]{flex:1;overflow-y:auto;min-height:0;}
.cfg-resize-hint{position:absolute;bottom:3px;right:5px;font-size:11px;color:#94A3B8;pointer-events:none;user-select:none;line-height:1;}
.chdr{background:#1E293B;padding:16px 22px;display:flex;justify-content:space-between;align-items:center;gap:10px;}
.chdr-l h2{font-family:'Playfair Display',serif;color:#F59E0B;font-size:16px;font-weight:700;}
.chdr-l p{color:#94A3B8;font-size:10px;margin-top:2px;}
.chdr-r{display:flex;gap:6px;align-items:center;}
.cbtn{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:6px;padding:5px 12px;cursor:pointer;font-size:11px;font-family:'Inter',sans-serif;font-weight:600;white-space:nowrap;}
.cbtn:hover{background:rgba(255,255,255,.2);}
.cbtn.dl{background:#1A7A4A;border-color:#1A7A4A;}
.cbtn.pdf{background:#E8950E;border-color:#E8950E;color:#111;}
.cbtn.sim{padding:4px 10px;font-size:10px;}
.sim-barra{background:#0F172A;padding:6px 18px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;border-bottom:2px solid #334155;}
.sim-lbl{color:#64748B;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;white-space:nowrap;margin-right:2px;}
.sim-sub{color:#94A3B8;font-size:10px;margin-left:8px;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.cufv{display:flex;gap:6px;align-items:center;padding:10px 18px;background:#fff;border-bottom:1px solid #E2E8F0;flex-wrap:wrap;}
.cufv .lbl{font-size:10px;color:#94A3B8;text-transform:uppercase;letter-spacing:.8px;}
.bum{background:#F1F5F9;border:2px solid #E2E8F0;color:#475569;border-radius:6px;padding:4px 11px;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;font-family:'Inter',sans-serif;}
.bum:hover{border-color:#E8950E;}.bum.on{background:#E8950E;color:#fff;border-color:#E8950E;}
.ccst{display:flex;gap:6px;align-items:center;margin-left:auto;flex-wrap:wrap;}
.ccst label{font-size:10px;color:#94A3B8;white-space:nowrap;}
.ccst input{background:#F1F5F9;border:1px solid #E2E8F0;border-radius:5px;padding:4px 7px;font-size:11px;font-family:'Inter',sans-serif;color:#1E293B;width:75px;outline:none;}
.ccst input:focus{border-color:#E8950E;}
.ccards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:14px 18px 0;}
.card{background:#fff;border:1px solid #E2E8F0;border-radius:10px;overflow:hidden;}
.card.dest{border-color:#E8950E;box-shadow:0 0 0 3px rgba(232,149,14,.15);}
.card-hd{padding:10px 13px;background:#1E293B;}
.card.dest .card-hd{background:linear-gradient(135deg,#1E293B,#2a1800);}
.card-tag{font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#F59E0B;margin-bottom:3px;}
.card-nm{font-family:'Playfair Display',serif;font-size:13px;color:#fff;font-weight:700;line-height:1.2;}
.card-body{padding:11px 13px;}
.cm-big{text-align:center;padding:9px 0 7px;border-bottom:1px solid #F1F5F9;margin-bottom:7px;}
.cm-big .lbl{font-size:9px;color:#94A3B8;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;}
.cm-big .val{font-family:'Playfair Display',serif;font-size:20px;font-weight:900;color:#111827;line-height:1;}
.cm-big .val.g{color:#166534;}.cm-big .sub{font-size:10px;color:#94A3B8;margin-top:1px;}
.cr{display:flex;justify-content:space-between;align-items:baseline;padding:3px 0;font-size:11px;}
.cr-l{color:#94A3B8;font-size:10px;}
.cr-v{font-weight:600;color:#1E293B;text-align:right;}
.cr-v.g{color:#166534;}.cr-v.s{color:#B45309;}.cr-v.r{color:#991B1B;}
.csep{background:#F8FAFC;margin:5px -13px;padding:3px 13px;font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#CBD5E1;font-weight:700;border-top:1px solid #F1F5F9;}
.ctab-area{padding:0 18px 18px;}
.cst{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#94A3B8;font-weight:700;margin:14px 0 5px;}
.ctab-wrap{overflow-x:auto;border-radius:8px;border:1px solid #E2E8F0;}
.ctab-wrap table{margin-top:0;background:#fff;}
.ctab-wrap table thead tr{background:#1E293B;}
.ctab-wrap table thead th{color:#fff;}
.ctab-wrap table tbody td{color:#1E293B;}
.ctab-wrap table tbody tr:nth-child(even){background:#F8FAFC;}
.barra-area{padding:0 18px;}
.br-row{margin-bottom:9px;}
.br-lbl{display:flex;justify-content:space-between;font-size:10px;color:#64748B;margin-bottom:3px;}
.br-track{background:#F1F5F9;border-radius:4px;height:20px;overflow:hidden;}
.br-fill{height:100%;border-radius:4px;display:flex;align-items:center;padding-left:7px;font-size:10px;font-weight:700;color:#fff;transition:width .6s ease;white-space:nowrap;overflow:hidden;}
.br-fill.p1{background:linear-gradient(90deg,#B8720A,#E8950E);}
.br-fill.p2{background:linear-gradient(90deg,#156B3F,#22C55E);}
.br-fill.p3{background:linear-gradient(90deg,#0A3D62,#1D6FA4);}
.cnota{background:#DCFCE7;border-left:4px solid #166534;border-radius:0 6px 6px 0;padding:8px 12px;font-size:11px;color:#14532D;margin:0 18px 18px;}
/* ── RESPONSIVO ── */
@media(max-width:1024px){
  .painel{width:300px;min-width:240px;}
}
@media(max-width:768px){
  .app-layout{flex-direction:column;height:auto;overflow:visible;}
  .painel{width:100%;height:auto;max-height:50vh;min-width:100%;overflow-y:auto;flex-shrink:0;box-shadow:0 2px 16px rgba(0,0,0,.4);}
  .doc-area{height:auto;overflow-y:visible;}
  body{overflow:visible;}
  .cg input,.cg select{font-size:12px;padding:6px 8px;}
  .bp{padding:7px 9px;font-size:11px;}
  .documento{margin:0 auto 40px;border-radius:0;border-left:none;border-right:none;}
  .doc-hdr,.doc-body,.ax-body,.mf,.ft,.ax-div{padding-left:14px;padding-right:14px;}
  .g2,.g3,.g4{grid-template-columns:1fr 1fr;}
  .ag{grid-template-columns:1fr;}.gg{grid-template-columns:1fr;}
  .pb-spl,.vrow{flex-direction:row;flex-wrap:wrap;}.spl,.vb{flex:1;min-width:30%;}
  .ccards{grid-template-columns:1fr;}
  .chdr{flex-direction:column;align-items:flex-start;gap:7px;}
  .cufv{gap:5px;}.ccst{margin-left:0;width:100%;}
  .hdr-top{flex-direction:column;gap:7px;}.doc-numbloco{text-align:left;}
  body.editando .app-layout{margin-top:34px;height:auto;}
}
@media(max-width:480px){
  .g2,.g3,.g4{grid-template-columns:1fr;}
  .pg-row{flex-direction:column;}
  .mf{gap:9px;}
}
/* ── TABELA COMPARATIVA: colunas proporcionais ── */
.ctab-wrap table{table-layout:fixed;width:100%;}
.ctab-wrap table th:first-child,.ctab-wrap table td:first-child{width:30%;}
.ctab-wrap table th:not(:first-child),.ctab-wrap table td:not(:first-child){width:23.33%;text-align:center;}
@media print{
  .painel,.cov,.edit-bar,.senha-ov,#misol-toast{display:none!important;}
  .app-layout{display:block!important;height:auto!important;overflow:visible!important;}
  .doc-area{display:block!important;overflow:visible!important;height:auto!important;}
  body{background:#fff;font-size:10px;overflow:visible;line-height:1.4;}
  .documento{margin:0!important;max-width:100%!important;box-shadow:none!important;border:none!important;}
  .s{margin-top:8px!important;}
  .st{page-break-after:avoid!important;}
  .st{margin-bottom:4px!important;padding-bottom:2px!important;}
  .st h2{font-size:10px!important;}
  .doc-hdr{padding:8px 20px!important;}
  .doc-titulo{padding:6px 20px!important;}
  .doc-t{font-size:12px!important;}
  .marca-n{font-size:14px!important;}
  .doc-body{padding:0 20px 16px!important;}
  .mf{padding:4px 20px!important;gap:10px!important;}
  .mfl{font-size:7px!important;}.mfv{font-size:10px!important;}
  .ft{padding:5px 20px!important;}
  .cx{padding:4px 6px!important;}.cxv{font-size:12px!important;}.cxl{font-size:8px!important;margin-bottom:1px!important;}.cxs{font-size:8px!important;}
  .g3,.g4{gap:4px!important;}.g2{gap:4px!important;}
  .pb{padding:6px 8px!important;margin-top:3px!important;}
  .pb-spl{gap:3px!important;flex-direction:row!important;}.spl{padding:3px!important;flex:1!important;min-width:0!important;}.spl-p{font-size:16px!important;}.spl-l{font-size:6px!important;}
  .vrow{gap:3px!important;flex-direction:row!important;}.vb{padding:4px!important;flex:1!important;min-width:0!important;}
  .nt,.ressalva{padding:4px 7px!important;font-size:9px!important;margin-top:3px!important;}
  table{font-size:9px!important;width:100%!important;table-layout:fixed!important;}
  td.n{font-size:8px!important;}
  td,th{padding:2px 4px!important;}
  thead{display:table-header-group;}
  div[style*="overflow-x:auto"]{overflow:visible!important;}
  .rl li{padding:1px 0 1px 18px!important;font-size:9px!important;}
  .ml li{padding:1px 0!important;font-size:9px!important;}
  .formula-box{padding:4px 8px!important;margin:3px 0!important;}
  .formula-box .fml{font-size:10px!important;}
  .doc-hdr,.mf,.sn,.ft,.ax-div,.cx.dk,.nt,.pb,.decl-reg,.formula-box{-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  thead tr{-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  #bloco-resumo-topo{padding:5px 20px!important;gap:4px!important;}
  .ax-body{padding:0 20px 16px!important;}
  .ax-div{page-break-before:always!important;}
  .ag{gap:0!important;margin-top:6px!important;page-break-inside:avoid!important;}
  .ac{padding:8px 12px!important;}
  .gi{padding:4px 6px!important;}.gs{font-size:9px!important;min-width:48px!important;}.gd{font-size:9px!important;}
  .gg{gap:3px!important;}
  .penb{padding:6px 8px!important;margin-top:4px!important;}
  div[style*="border-left:3px"]{padding:6px 10px!important;font-size:9px!important;}
  .marca-n{font-size:20px!important;}.marca-s{font-size:7px!important;}
  .doc-t{font-size:13px!important;}.doc-st{font-size:8px!important;}
  .hdr-ci{font-size:8px!important;}
  .doc-numv{font-size:16px!important;}
  .ftx{font-size:8px!important;}
  .sn{width:18px!important;height:18px!important;font-size:9px!important;}
  .ft{padding:4px 20px!important;margin:0!important;page-break-after:avoid!important;}
  table{page-break-inside:auto!important;}
  tr{page-break-inside:avoid!important;}
  thead{display:table-header-group!important;}
  .s+.s{margin-top:6px!important;}
  .s-crono{page-break-before:always!important;break-before:page!important;margin-top:0!important;}
  #crono-tabela table{page-break-inside:auto!important;}
  #crono-tabela tr{page-break-inside:avoid!important;}
  /* Ocultar banner offline no PDF */
  #offline-banner{display:none!important;}
  /* Quebras de página — evitar títulos órfãos */
  .st{break-after:avoid!important;page-break-after:avoid!important;}
  .st+p,.st+table,.st+.g2,.st+.g3,.st+.g4,.st+.nt,.st+.formula-box,.st+.penb,.st+.ressalva,.st+div{break-before:avoid!important;page-break-before:avoid!important;}
  .formula-box{break-inside:avoid!important;}
  .penb{break-inside:avoid!important;}
  .g2,.g3{break-inside:avoid!important;}
  .mf{break-inside:avoid!important;}
  .pb{break-inside:avoid!important;}
  /* Cada SEÇÃO inteira numa única página — nunca dividir uma seção entre duas páginas */
  .s{break-inside:avoid!important;page-break-inside:avoid!important;}
  /* Exceção: o cronograma pode ser mais alto que uma página; permite quebrar entre linhas */
  .s.s-crono{break-inside:auto!important;page-break-inside:auto!important;}
  .documento::after{display:none!important;}
  /* Segurança de impressão — texto legível em P&B */
  [data-tema]{--cxl:#475569;--dtl:#475569;--gls:#374151;--ftm:#374151;--fttxt:#374151;}
  .rl li::before,.formula-box .fml{color:#374151!important;}
  .spl-p{color:#1E293B!important;}
  .gs{color:#374151!important;}
  .doc-body>.s:nth-child(even){background:#F7F9FB!important;}
  @page{
    margin:10mm 7mm 14mm 7mm;
    @bottom-center{content:'MISOL — PropNegócio v2 — minerandosol.com.br';font-size:7px;color:#94A3B8;}
    @bottom-right{content:'Página ' counter(page) ' de ' counter(pages);font-size:7px;color:#94A3B8;}
  }
  /* 1ª página colada no topo (3mm); da 2ª em diante o topo é 10mm (do @page acima) */
  @page:first{margin-top:3mm;}
}
</style>
