:root{--bg:#fff;--muted:#f5f7f9;--text:#121923;--soft:#5d6b7a;--line:#dce2e8;--dark:#242b33;--green:#13b889;--blue:#0d6efd;--yellow:#ffc107;--shadow:0 2px 10px rgba(16,24,40,.08)}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:var(--bg);font-size:14px;line-height:1.55}.topbar{height:52px;background:#f7f7f7;border-bottom:1px solid #f0f0f0}.topbar-inner{max-width:1180px;height:52px;margin:0 auto;display:flex;align-items:center;gap:24px;padding:0 18px}.brand img{height:34px;width:auto;display:block}.nav-pill{border:0;background:transparent;color:#4b5563;font-size:13px;cursor:pointer}main{max-width:1180px;margin:18px auto 0;padding:0 18px}.app-page.hidden{display:none!important}.active-page{display:block}.hero-box{border:1px solid var(--line);border-radius:12px;background:#fafbfc;text-align:center;padding:20px 20px 24px;max-width:880px;margin:0 auto}.title-tag{display:inline-block;background:#6d7783;color:#fff;font-weight:700;border-radius:3px;padding:3px 14px;margin-bottom:8px;font-size:16px}.hero-box p{margin:0 auto 20px;color:#172033;max-width:820px}.simple-upload{display:flex;align-items:center;justify-content:center;margin:10px auto 8px}.file-button{height:37px;border:1px solid #cbd5df;background:#eef2f6;color:#111;padding:0 14px;border-radius:4px 0 0 4px;font-size:15px;cursor:pointer}.file-name{height:37px;min-width:230px;border:1px solid #cbd5df;border-left:0;background:#fff;display:flex;align-items:center;padding:0 14px;border-radius:0 4px 4px 0;color:#111}.drop-helper{max-width:560px;margin:8px auto 0;border:1px dashed #c9d2dc;border-radius:8px;background:#fff;padding:8px;color:#667085;font-size:12px;cursor:pointer}.drop-helper.dragover{border-color:var(--green);background:#effff9}.upload-actions,.action-row{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:16px}.btn{border:0;border-radius:4px;padding:9px 15px;font-weight:700;cursor:pointer;color:#fff;transition:.15s}.btn:hover{filter:brightness(.96)}.btn-primary{background:var(--green)}.btn-success{background:#07845f}.btn-blue{background:#095bd6}.btn-dark{background:#303942}.btn-warning{background:var(--yellow);color:#111}.btn-outline{background:#fff;color:#111;border:1px solid #cbd5df}.hidden{display:none!important}.ad-wrap{max-width:900px;min-height:90px;margin:22px auto;border-top:1px solid #d0d5dd;border-bottom:1px solid #eef2f6;padding:12px 0;text-align:center}.loading-box{max-width:720px;margin:20px auto;border:1px solid var(--line);box-shadow:var(--shadow);padding:18px;border-radius:7px;text-align:center}.loading-box p{margin:4px 0 10px;color:#667085}.progress{height:12px;background:#edf2f7;border-radius:999px;overflow:hidden}.progress div{height:100%;width:0;background:linear-gradient(90deg,var(--green),#28a745);transition:.25s}.page-title-box{border:1px solid var(--line);border-radius:10px;background:#fafbfc;text-align:center;padding:22px 18px;margin:0 auto 20px}.page-title-box h1{font-size:30px;margin:0 0 3px}.page-title-box p{color:#667085;margin:0}.cards-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.metric-card,.mini-card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:4px;padding:15px}.metric-card span,.mini-card span{display:block;color:#617085;font-size:12px}.metric-card strong{font-size:20px;display:block;margin-top:2px}.summary-box{margin:18px 0;padding:16px;border:1px solid #cfd8e3;background:#fff;border-radius:4px}.table-tools{margin:8px 0 12px}.table-tools input{width:100%;padding:11px;border:1px solid #ccd5df;border-radius:4px}.table-wrap{width:100%;overflow:auto;border:1px solid var(--line);background:#fff}table{border-collapse:collapse;width:100%;min-width:960px}th,td{border-bottom:1px solid #e6ebf0;border-right:1px solid #eef1f4;padding:9px 10px;text-align:left;white-space:nowrap;font-size:13px}th{background:#f8fafc;border-bottom:2px solid #222;font-weight:700}.reforma-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.mini-card strong{font-size:24px}.danfse-preview{background:#fff;border:1px solid #111;padding:10px;margin:0 auto 12px;font-family:'Microsoft Sans Serif',Arial,sans-serif;max-width:900px}.danfse-doc{border:1px solid #111;color:#000;background:#fff}.danfse-row{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #111}.danfse-cell{min-height:42px;padding:5px;border-right:1px solid #111;font-size:11px}.danfse-cell:last-child{border-right:0}.danfse-label{display:block;font-weight:700;text-transform:uppercase;font-size:9px;font-family:Arial,Helvetica,sans-serif}.danfse-head{display:grid;grid-template-columns:1.2fr 2fr 1.2fr;border-bottom:1px solid #111;background:#f2f2f2;align-items:center}.danfse-head div{padding:8px;text-align:center;border-right:1px solid #111}.danfse-head div:last-child{border-right:0}.danfse-title{font-weight:700;font-size:15px}.danfse-block-title{background:#f2f2f2;border-bottom:1px solid #111;padding:4px 6px;font-size:10px;font-weight:700;text-transform:uppercase}.seo-content{max-width:1040px;margin:36px auto 20px}.seo-content h2{font-size:25px;margin-bottom:6px}.seo-content h3{font-size:20px;margin-bottom:4px}.seo-content p{color:#1f2937}footer{margin-top:40px;text-align:center;color:#667085;border-top:1px solid #e5e7eb;padding:22px}@media(max-width:900px){.cards-grid{grid-template-columns:repeat(2,1fr)}.reforma-grid{grid-template-columns:repeat(2,1fr)}.topbar-inner{padding:0 16px}.page-title-box h1{font-size:24px}}@media(max-width:520px){.cards-grid,.reforma-grid{grid-template-columns:1fr}.hero-box{padding:18px 12px}.simple-upload{flex-direction:column}.file-button,.file-name{border-radius:4px;border:1px solid #cbd5df;width:100%;max-width:320px;justify-content:center}.file-name{border-top:0}.btn{width:100%}.action-row{width:100%}.danfse-row{grid-template-columns:1fr}.danfse-cell{border-right:0}.danfse-head{grid-template-columns:1fr}}@media print{body>*:not(main){display:none!important}.topbar,.ad-wrap,.seo-content,.action-row,.btn,#pageHome,#pageReport,#pageReforma{display:none!important}main{max-width:none;margin:0;padding:0}#pageDanfse{display:block!important}.page-title-box{display:none}.danfse-preview{border:0;margin:0;padding:0}.danfse-doc{page-break-inside:avoid}}
.drop-zone-large{
  width:100%;
  max-width:760px;
  min-height:210px;
  margin:18px auto 0;
  border:2px dashed #b8c3cf;
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#f8fafc);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:28px 24px;
  cursor:pointer;
  transition:.18s ease;
  color:#344054;
}
.drop-zone-large:hover,.drop-zone-large.dragover{
  border-color:var(--green);
  background:#effff9;
  box-shadow:0 8px 24px rgba(19,184,137,.12);
}
.drop-zone-large .drop-icon{
  width:58px;
  height:58px;
  border-radius:16px;
  background:#eef2f6;
  color:#374151;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  letter-spacing:.5px;
}
.drop-zone-large strong{font-size:21px;color:#111827}
.drop-zone-large span{font-size:14px;color:#667085}
.drop-zone-large em{font-style:normal;margin-top:5px;color:#111827;background:#fff;border:1px solid #d0d5dd;border-radius:999px;padding:6px 14px;font-size:13px}
@media(max-width:520px){.drop-zone-large{min-height:180px;padding:22px 14px}.drop-zone-large strong{font-size:18px}}

/* DANFSe - visual mais próximo do modelo oficial da NT 008 / DANFSe nacional */
#pageDanfse .page-title-box{max-width:1180px}.danfse-preview{border:0;background:#f3f4f6;padding:18px;max-width:100%;overflow:auto}.danfse-sheet{width:210mm;min-height:297mm;margin:0 auto;background:#fff;border:1pt solid #000;color:#000;font-family:'Microsoft Sans Serif',Arial,sans-serif;font-size:7pt;line-height:1.18;padding:3mm}.danfse-official-head{display:grid;grid-template-columns:42mm 1fr 52mm;border:0.5pt solid #000;background:#f2f2f2;min-height:12mm}.danfse-official-head>div{border-right:0.5pt solid #000;padding:2mm;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.danfse-official-head>div:last-child{border-right:0}.nfse-logo-box{font-size:6pt}.nfse-logo-mark{font-family:Arial,Helvetica,sans-serif;font-size:16pt;font-weight:800;color:#4d8c5d;line-height:1}.danfse-main-title strong{font-family:Arial,Helvetica,sans-serif;font-size:9pt}.danfse-main-title span{font-size:9pt;font-weight:700}.danfse-city-box b{font-size:8pt}.danfse-city-box span{font-size:6pt}.sem-validade{font-family:Arial,Helvetica,sans-serif;color:#f00;font-size:9pt;margin-top:1mm}.danfse-ident-grid{display:grid;grid-template-columns:1fr 42mm;border-left:0.5pt solid #000;border-right:0.5pt solid #000;border-bottom:0.5pt solid #000}.danfse-ident-fields .danfse-section{border:0}.danfse-ident-fields .danfse-section+.danfse-section{border-top:0}.danfse-qr-area{border-left:0.5pt solid #000;padding:2mm;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.qr-placeholder{width:17mm;height:17mm;border:1pt solid #000;display:flex;align-items:center;justify-content:center;font-weight:700;margin-bottom:1mm}.danfse-qr-area small{font-size:6pt;line-height:1.1}.qr-link{display:none}.danfse-section{border-left:0.5pt solid #000;border-right:0.5pt solid #000;border-bottom:0.5pt solid #000}.danfse-block-title{background:#f2f2f2;border-bottom:0.5pt solid #000;padding:1mm 1.5mm;font-family:Arial,Helvetica,sans-serif;font-size:7pt;font-weight:700;text-transform:uppercase}.danfse-grid{display:grid;border-bottom:0.5pt solid #000}.danfse-grid:last-child{border-bottom:0}.danfse-grid.cols-4{grid-template-columns:repeat(4,1fr)}.danfse-grid.cols-3{grid-template-columns:repeat(3,1fr)}.danfse-cell{min-height:8mm;padding:1mm 1.5mm;border-right:0.5pt solid #000;font-size:7pt;white-space:normal;overflow:hidden}.danfse-cell:last-child{border-right:0}.danfse-label{display:block;font-family:Arial,Helvetica,sans-serif;font-size:6pt;font-weight:700;text-transform:none;margin-bottom:.6mm}.danfse-cell b{font-weight:400;display:block}.danfse-cell.desc{min-height:20mm}.danfse-grid.cols-4 .span-2{grid-column:span 2}.danfse-grid.cols-4 .span-3{grid-column:span 3}.danfse-grid.cols-4 .span-4{grid-column:span 4}.danfse-grid.cols-3 .span-2{grid-column:span 2}.danfse-grid.cols-3 .span-3{grid-column:span 3}.danfse-message-block{border-left:0.5pt solid #000;border-right:0.5pt solid #000;border-bottom:0.5pt solid #000;min-height:9mm;display:flex;align-items:center;justify-content:center;font-family:Arial,Helvetica,sans-serif;font-size:7pt;font-weight:700;background:#fff}@media print{body{background:#fff}.danfse-preview{padding:0;background:#fff}.danfse-sheet{width:210mm;min-height:297mm;border:1pt solid #000;margin:0;padding:3mm;box-shadow:none}@page{size:A4 portrait;margin:0}}

/* Dropdown de outras ferramentas - preserva visual leve do cabeçalho */
.nav-dropdown{position:relative;display:inline-block}.nav-dropdown .nav-pill{padding:8px 6px}.dropdown-menu{display:none;position:absolute;top:34px;left:0;z-index:1000;min-width:270px;margin:0;padding:7px 0;list-style:none;background:#fff;border:1px solid #d9dee7;border-radius:6px;box-shadow:0 12px 24px rgba(16,24,40,.12);text-align:left}.nav-dropdown.open .dropdown-menu{display:block}.dropdown-item{display:block;padding:8px 14px;color:#263241;text-decoration:none;font-size:13px;white-space:nowrap}.dropdown-item:hover{background:#f6f8fb;color:#111}.dropdown-divider{margin:6px 0;border:0;border-top:1px solid #e5e7eb}@media(max-width:520px){.dropdown-menu{left:auto;right:0;min-width:250px}.topbar-inner{justify-content:space-between;gap:10px}}
