:root{--bg:#071316;--panel:#102428;--line:rgba(255,255,255,.12);--text:#f5f8f8;--muted:#9eb2b4;--brand:#00f7c8;--brand2:#05898d;--blue:#168fe5;--danger:#ff7474}
*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#061013,#0a191d);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif}.app-shell{min-height:100vh}.topbar,main{width:min(1180px,calc(100% - 36px));margin:auto}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center}.brand-mark{width:92px;height:44px;display:grid;place-items:center}.brand-mark img{max-width:100%;max-height:100%;display:block}.brand strong,.brand span{display:block}.brand span{font-size:12px;color:var(--muted);margin-top:2px}.hero{padding:58px 0 34px;max-width:880px}.eyebrow{color:var(--brand);font-weight:800;font-size:12px;letter-spacing:.11em;text-transform:uppercase}.hero h1{font-size:clamp(36px,6vw,60px);letter-spacing:-.04em;line-height:1;margin:14px 0}.hero p{color:var(--muted);font-size:18px;line-height:1.6}.search-box{background:rgba(16,36,40,.9);border:1px solid var(--line);border-radius:18px;padding:20px;margin-top:26px;box-shadow:0 22px 60px rgba(0,0,0,.22)}.search-box label{display:block;font-size:13px;font-weight:800;margin-bottom:9px}.search-row{display:grid;grid-template-columns:1fr auto;gap:10px}.search-row input{height:54px;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:#071517;color:white;padding:0 16px;font-size:18px;outline:0}.search-row input:focus{border-color:var(--brand2);box-shadow:0 0 0 3px rgba(5,137,141,.16)}button{font:inherit;cursor:pointer}.primary-btn{height:54px;border:0;border-radius:12px;padding:0 24px;background:var(--brand);color:#041311;font-weight:900;min-width:145px}.primary-btn:disabled{opacity:.65}.spinner{display:none;width:17px;height:17px;border:2px solid rgba(0,0,0,.25);border-top-color:#000;border-radius:50%;animation:spin .7s linear infinite}.loading .btn-text{display:none}.loading .spinner{display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.input-meta{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-top:10px}.input-meta small{color:var(--muted);line-height:1.45}.link-btn,.danger-link{background:none;border:0;color:var(--brand);font-weight:800}.ghost-btn{border:1px solid var(--line);background:rgba(255,255,255,.035);color:var(--text);padding:10px 14px;border-radius:10px}.alert{margin-top:14px;border:1px solid rgba(255,116,116,.3);background:rgba(255,116,116,.08);color:#ffd6d6;padding:14px;border-radius:12px}.result{padding:10px 0 70px}.result-toolbar,.document-actions,.source-strip{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.result-toolbar{margin-bottom:16px}.view-tabs{display:flex;gap:7px;background:rgba(255,255,255,.04);padding:5px;border-radius:12px;border:1px solid var(--line)}.tab-btn{border:0;background:transparent;color:var(--muted);padding:10px 14px;border-radius:9px;font-weight:800}.tab-btn.active{background:var(--brand);color:#041311}.toolbar-actions{display:flex;gap:8px}.document-view{background:#eef1f3;border-radius:18px;padding:20px;color:#151515}.document-actions{padding:0 0 16px;color:#172025}.document-actions strong,.document-actions span{display:block}.document-actions span{font-size:12px;color:#657276;margin-top:3px}.print-btn{border:0;border-radius:9px;padding:11px 15px;background:#27a7df;color:white;font-weight:800}.cnpj-card{background:white;color:#111;border:1px solid #999;padding:22px;width:min(900px,100%);margin:0 auto;font-family:Arial,sans-serif}.official-header{display:grid;grid-template-columns:76px 1fr 76px;align-items:center;margin-bottom:14px}.seal-placeholder{width:76px;height:58px;display:grid;place-items:center;margin:auto}.seal-placeholder img{max-width:100%;max-height:100%;display:block}.official-title{text-align:center}.official-title h2{font-size:21px;margin:0 0 24px}.official-title h3{font-size:17px;margin:0}.field{border:1px solid #111;padding:5px 7px;min-height:48px}.field label{display:block;font-size:8px;color:#143568;margin-bottom:3px}.field strong,.multi-lines{font-size:13px;line-height:1.25}.field small{display:block;font-size:8px;color:#666;margin-top:4px}.full{margin-top:10px}.card-grid.top-identification{display:grid;grid-template-columns:1.25fr 2.4fr 1.1fr}.top-identification .field{margin-left:-1px}.top-identification .field:first-child{margin-left:0}.cnpj-field b{font-size:10px;display:block}.document-title{display:grid;place-items:center;text-align:center}.document-title strong{font-size:14px}.two-col{display:grid;grid-template-columns:4fr 1fr;margin-top:10px}.two-col .field+ .field{margin-left:-1px}.secondary-field{min-height:70px}.multi-lines div{margin-bottom:2px}.address-row-1{display:grid;grid-template-columns:2.2fr .55fr 1.5fr;margin-top:10px}.address-row-2{display:grid;grid-template-columns:.7fr 1.15fr 1.8fr .35fr;margin-top:10px}.address-row-1 .field+ .field,.address-row-2 .field+ .field{margin-left:-1px}.contact-row{grid-template-columns:1.4fr 1fr}.status-row{display:grid;grid-template-columns:3fr 1fr;margin-top:10px}.status-row .field+ .field{margin-left:-1px}.card-footer{margin-top:26px;font-size:11px;display:flex;justify-content:space-between;gap:20px;align-items:flex-end}.card-footer p{margin:0;max-width:70%}.qsa-document{background:white;color:#161616;padding:26px;width:min(1000px,100%);margin:0 auto;font-family:Arial,sans-serif;min-height:600px}.qsa-document h2{color:#168fe5;font-weight:400;font-size:24px;margin:0 0 24px}.qsa-company-box{background:#d2f0f7;border:1px solid #b1e5f0;border-radius:5px;padding:16px 22px;margin-bottom:38px}.qsa-company-box>div,.qsa-partner-box>div{display:grid;grid-template-columns:245px 1fr;gap:0;padding:3px 0}.qsa-company-box b{color:#006078}.qsa-intro{margin:0 0 32px}.qsa-partners{display:grid;gap:14px}.qsa-partner-box{background:#fff1c7;border:1px solid #ffe09b;border-radius:5px;padding:15px 20px;color:#986700}.qsa-partner-box b{font-weight:800}.partner-extra{font-size:12px;opacity:.85}.qsa-empty{padding:20px;border:1px dashed #bbb;text-align:center;color:#666}.qsa-note{margin-top:22px}.qsa-issued{font-size:11px}.source-strip{margin-top:13px;color:var(--muted);font-size:12px}.drawer{position:fixed;inset:0;pointer-events:none;z-index:20}.drawer.open{pointer-events:auto}.drawer-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.58);opacity:0;transition:.2s}.drawer.open .drawer-backdrop{opacity:1}.drawer-panel{position:absolute;right:0;top:0;height:100%;width:min(430px,92vw);background:#0d2024;padding:24px;transform:translateX(100%);transition:.25s;box-shadow:-20px 0 60px rgba(0,0,0,.3)}.drawer.open .drawer-panel{transform:none}.drawer-header{display:flex;justify-content:space-between;gap:15px}.drawer-header h2{margin:0}.drawer-header p{color:var(--muted)}.icon-btn{border:0;background:none;color:white;font-size:30px}.history-list{display:grid;gap:8px}.history-item{border:1px solid var(--line);background:rgba(255,255,255,.03);color:white;text-align:left;padding:13px;border-radius:10px}.history-item strong,.history-item span{display:block}.history-item span{font-size:11px;color:var(--muted);margin-top:4px}.danger-link{color:var(--danger);margin-top:20px}.empty{padding:18px;color:var(--muted);border:1px dashed var(--line);border-radius:10px}
@media(max-width:720px){.search-row{grid-template-columns:1fr}.primary-btn{width:100%}.result-toolbar{align-items:stretch}.view-tabs,.toolbar-actions{width:100%}.view-tabs{overflow:auto}.tab-btn{white-space:nowrap}.document-view{padding:10px}.cnpj-card{padding:10px;overflow:auto}.official-header{grid-template-columns:55px 1fr 20px}.official-title h2{font-size:16px;margin-bottom:14px}.official-title h3{font-size:13px}.card-grid.top-identification,.two-col,.address-row-1,.address-row-2,.status-row{grid-template-columns:1fr}.top-identification .field,.two-col .field+.field,.address-row-1 .field+.field,.address-row-2 .field+.field,.status-row .field+.field{margin-left:0;margin-top:-1px}.field{min-height:42px}.qsa-company-box>div,.qsa-partner-box>div{grid-template-columns:1fr}.qsa-company-box b,.qsa-partner-box b{margin-bottom:3px}.qsa-document{padding:18px}.qsa-document h2{font-size:20px}}
@media print{body{background:white!important;color:black!important}.no-print{display:none!important}.result{padding:0!important}.document-view{background:white!important;padding:0!important}.print-card #qsaView,.print-card .source-strip,.print-qsa #cardView,.print-qsa .source-strip{display:none!important}.print-card #cardView,.print-qsa #qsaView{display:block!important}.print-card .cnpj-card{border:0!important;width:100%!important;max-width:none!important;padding:0!important;margin:0!important}.print-qsa .qsa-document{width:100%!important;max-width:none!important;padding:0!important;margin:0!important}.card-footer{font-size:9px}@page{size:A4 portrait;margin:10mm}}

/* Simples Nacional / MEI - v3 */
.simples-action-group{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.official-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:9px;border:1px solid #5d8f44;background:#fff;color:#436f32;text-decoration:none;font-weight:800;font-size:13px}
.official-link:hover{background:#eff8ea}
.simples-document{background:#fff;color:#1d241c;padding:26px;width:min(1000px,100%);margin:0 auto;font-family:Arial,sans-serif;min-height:620px}
.simples-header{display:flex;align-items:center;gap:14px;border-bottom:2px solid #d9ead1;padding-bottom:14px;margin-bottom:26px}
.simples-logo-mark{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;font-size:30px;font-weight:900;font-style:italic;color:#fff;background:linear-gradient(135deg,#f7c914 0 45%,#2f9f44 46% 100%);box-shadow:inset 0 0 0 4px #fff,0 0 0 1px #c8d8c0}
.simples-kicker{font-size:12px;letter-spacing:.18em;font-weight:900;color:#2d8c3f}
.simples-header h2{margin:3px 0 0;color:#365f2e;font-size:23px;font-weight:500}
.simples-consulted{font-size:13px;margin:0 0 14px}
.simples-block{border:1px solid #d4e7cc;border-radius:5px;overflow:hidden;margin:0 0 17px}
.simples-block h3{margin:0;padding:10px 14px;background:#dff0d8;color:#3d7133;font-size:15px;font-weight:500}
.simples-block-body{padding:14px}
.simples-block-body p{margin:0 0 9px;font-size:14px}.simples-block-body p:last-child{margin-bottom:0}
.simples-block-body strong{color:#087019}.simples-hint{color:#777;font-size:12px!important}
.status-positive{color:#087019!important}.status-negative{color:#087019!important}.status-unknown{color:#8a6d1e!important}
.table-wrap{overflow-x:auto}.simples-table{width:100%;border-collapse:collapse;font-size:13px;min-width:650px}
.simples-table th{text-align:left;color:#087019;border-bottom:1px solid #cfd8ca;padding:8px}.simples-table td{padding:10px 8px;border-bottom:1px solid #e7ece4;vertical-align:top}
.simples-empty-note{margin:8px 0 0!important;color:#777}
.simples-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}
.simples-summary-card{border:1px solid #d4e7cc;border-radius:7px;padding:15px;background:#f8fcf6}
.simples-summary-card span,.simples-summary-card strong,.simples-summary-card small{display:block}.simples-summary-card span{font-size:12px;color:#64815a}.simples-summary-card strong{font-size:18px;color:#087019;margin:5px 0}.simples-summary-card small{color:#566154}
.simples-disclaimer{margin:24px 0 8px;padding:12px 14px;border-left:4px solid #75a95c;background:#f5faf2;font-size:12px;line-height:1.5;color:#5c6858}
.simples-updated{font-size:11px;color:#687066;margin:0}
@media(max-width:720px){.simples-document{padding:16px}.simples-summary-grid{grid-template-columns:1fr}.simples-action-group{width:100%}.official-link,.simples-action-group .print-btn{flex:1}.simples-header h2{font-size:20px}}
@media print{
  .print-card #qsaView,.print-card #simplesView,.print-qsa #cardView,.print-qsa #simplesView,.print-simples #cardView,.print-simples #qsaView{display:none!important}
  .print-card #cardView,.print-qsa #qsaView,.print-simples #simplesView{display:block!important}
  .print-simples .simples-document{width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
  .print-simples .simples-header{margin-bottom:18px}
  .print-simples .simples-block{break-inside:avoid}
  .print-simples .simples-summary-grid{break-inside:avoid}
}
