/* FISCAL SIMPLES — style.css v3.0 */
:root {
  --green:    #16a34a; --green-d:  #15803d; --green-xl: #14532d;
  --green-l:  #dcfce7; --green-hl: #f0fdf4;
  --blue:     #2563eb; --blue-l:   #dbeafe;
  --orange:   #ea580c; --orange-l: #ffedd5;
  --red:      #dc2626; --red-l:    #fee2e2;
  --purple:   #7c3aed; --purple-l: #ede9fe;
  --yellow:   #d97706; --yellow-l: #fef3c7;
  --teal:     #0d9488; --teal-l:   #ccfbf1;
  --g50:#f9fafb;--g100:#f3f4f6;--g200:#e5e7eb;--g300:#d1d5db;
  --g400:#9ca3af;--g500:#6b7280;--g600:#4b5563;--g700:#374151;
  --g800:#1f2937;--g900:#111827;
  --sw:240px; --swc:64px; --th:56px;
  --r:8px; --rl:12px;
  --shadow:0 1px 3px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.05);
  --shadow-md:0 4px 16px rgba(0,0,0,.10);
  --shadow-lg:0 8px 32px rgba(0,0,0,.14);
  --tr:.18s ease;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-font-smoothing:antialiased;scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;font-size:14px;color:var(--g800);background:var(--g100);display:flex;min-height:100vh}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
input,select,textarea,button{font-family:inherit;font-size:inherit}

/* ── SIDEBAR ──────────────────────────────────────── */
.sidebar{
  width:var(--sw);
  background:linear-gradient(175deg,#14532d 0%,#15803d 60%,#16a34a 100%);
  position:fixed;top:0;left:0;bottom:0;z-index:200;
  display:flex;flex-direction:column;
  transition:width var(--tr);overflow:hidden;
  box-shadow:2px 0 8px rgba(0,0,0,.15);
}
.sidebar.collapsed{width:var(--swc)}
.sidebar-header{
  display:flex;align-items:center;gap:10px;
  padding:16px 14px;border-bottom:1px solid rgba(255,255,255,.1);
  min-height:var(--th);white-space:nowrap;
}
.sidebar-logo{flex-shrink:0}
.sidebar-logo svg{width:34px;height:34px}
.sidebar-brand{font-size:15px;font-weight:700;color:#fff;letter-spacing:-.01em;overflow:hidden;transition:opacity var(--tr),width var(--tr)}
.sidebar-brand span{font-weight:300;opacity:.85}
.sidebar.collapsed .sidebar-brand{opacity:0;width:0}
.sidebar.collapsed .sidebar-header{justify-content:center;padding:16px 0}

.sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:8px}
.sidebar-nav::-webkit-scrollbar{width:3px}
.sidebar-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:3px}

.nav-group{margin-bottom:4px}
.nav-label{
  display:block;font-size:9px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:rgba(255,255,255,.38);
  padding:10px 10px 3px;white-space:nowrap;overflow:hidden;
  transition:opacity var(--tr);
}
.sidebar.collapsed .nav-label{opacity:0;height:0;padding:0}

.sidebar-nav a{
  display:flex;align-items:center;gap:10px;
  padding:9px 10px;border-radius:6px;
  color:rgba(255,255,255,.75);font-size:13px;font-weight:500;
  transition:background var(--tr),color var(--tr);
  white-space:nowrap;overflow:hidden;
}
.sidebar-nav a i{width:18px;text-align:center;font-size:14px;flex-shrink:0}
.sidebar-nav a span{overflow:hidden;transition:opacity var(--tr),width var(--tr)}
.sidebar.collapsed .sidebar-nav a{justify-content:center;padding:9px 0}
.sidebar.collapsed .sidebar-nav a span{opacity:0;width:0;overflow:hidden}
.sidebar-nav a:hover{background:rgba(255,255,255,.12);color:#fff}
.sidebar-nav a.active{background:rgba(255,255,255,.2);color:#fff;font-weight:600}
.sidebar-nav a.active i{color:#fff}

.sidebar-footer{
  padding:10px 8px;border-top:1px solid rgba(255,255,255,.1);
}
.sidebar-logout{
  display:flex;align-items:center;gap:10px;
  padding:9px 10px;border-radius:6px;
  color:rgba(255,255,255,.65);font-size:13px;font-weight:500;
  transition:background var(--tr);cursor:pointer;white-space:nowrap;overflow:hidden;
}
.sidebar.collapsed .sidebar-logout{justify-content:center}
.sidebar.collapsed .sidebar-logout span{display:none}
.sidebar-logout:hover{background:rgba(255,255,255,.12);color:#fff}
.sidebar-logout i{width:18px;text-align:center;flex-shrink:0}

/* ── MAIN WRAPPER ─────────────────────────────────── */
.main-wrapper{margin-left:var(--sw);display:flex;flex-direction:column;min-height:100vh;transition:margin-left var(--tr)}
.main-wrapper.collapsed{margin-left:var(--swc)}

/* ── TOPBAR ───────────────────────────────────────── */
.topbar{
  height:var(--th);background:#fff;border-bottom:1px solid var(--g200);
  display:flex;align-items:center;gap:12px;padding:0 20px;
  position:sticky;top:0;z-index:100;box-shadow:var(--shadow);
}
.topbar-toggle{
  width:32px;height:32px;border-radius:6px;border:none;background:none;
  color:var(--g600);cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:background var(--tr);
}
.topbar-toggle:hover{background:var(--g100)}
.topbar-center{flex:1;display:flex;align-items:center;gap:8px}

.empresa-selector{
  display:flex;align-items:center;gap:8px;cursor:pointer;
  padding:6px 12px;border-radius:6px;border:1px solid var(--g200);
  background:#fff;font-size:13px;font-weight:500;color:var(--g800);
  transition:border-color var(--tr),box-shadow var(--tr);position:relative;
}
.empresa-selector:hover{border-color:var(--g300);box-shadow:var(--shadow)}
.empresa-selector .amb-badge{
  font-size:10px;font-weight:700;padding:2px 6px;border-radius:20px;
  background:var(--yellow-l);color:var(--yellow);
}
.empresa-selector .amb-badge.prod{background:var(--green-l);color:var(--green-d)}

.topbar-right{display:flex;align-items:center;gap:8px;margin-left:auto}
.topbar-icon-btn{
  width:34px;height:34px;border-radius:6px;border:none;background:none;
  color:var(--g600);cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:background var(--tr);position:relative;
}
.topbar-icon-btn:hover{background:var(--g100);color:var(--g900)}
.notif-dot{
  position:absolute;top:4px;right:4px;width:8px;height:8px;
  background:var(--red);border-radius:50%;border:2px solid #fff;
}
.user-btn{
  display:flex;align-items:center;gap:8px;cursor:pointer;
  padding:4px 8px;border-radius:6px;border:none;background:none;
  transition:background var(--tr);
}
.user-btn:hover{background:var(--g100)}
.user-avatar{
  width:30px;height:30px;border-radius:50%;
  background:linear-gradient(135deg,var(--green-d),var(--green));
  display:flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:700;color:#fff;flex-shrink:0;
}
.user-info{font-size:12px;text-align:left}
.user-info strong{display:block;color:var(--g900);font-size:13px}
.user-info span{color:var(--g500)}

/* Dropdown */
.dropdown-menu{
  position:absolute;top:calc(100% + 6px);right:0;
  background:#fff;border:1px solid var(--g200);border-radius:var(--rl);
  box-shadow:var(--shadow-lg);min-width:180px;z-index:300;
  display:none;overflow:hidden;
}
.dropdown-menu.open{display:block}
.dropdown-menu a,.dropdown-menu button{
  display:flex;align-items:center;gap:8px;
  padding:10px 14px;font-size:13px;color:var(--g700);
  transition:background var(--tr);border:none;background:none;
  width:100%;cursor:pointer;text-align:left;
}
.dropdown-menu a:hover,.dropdown-menu button:hover{background:var(--g50);color:var(--g900)}
.dropdown-menu .divider{height:1px;background:var(--g200);margin:4px 0}

/* Dropdown empresas */
.empresa-dropdown{
  position:absolute;top:calc(100% + 6px);left:0;
  background:#fff;border:1px solid var(--g200);border-radius:var(--rl);
  box-shadow:var(--shadow-lg);min-width:280px;z-index:300;
  display:none;overflow:hidden;max-height:340px;overflow-y:auto;
}
.empresa-dropdown.open{display:block}
.empresa-dropdown-item{
  display:flex;align-items:center;gap:10px;
  padding:10px 14px;cursor:pointer;transition:background var(--tr);
  border-bottom:1px solid var(--g100);
}
.empresa-dropdown-item:hover{background:var(--g50)}
.empresa-dropdown-item.active{background:var(--green-hl)}
.empresa-dropdown-item .emp-ico{
  width:32px;height:32px;border-radius:6px;
  background:var(--green-hl);color:var(--green-d);
  display:flex;align-items:center;justify-content:center;font-size:13px;
}
.empresa-dropdown-item .emp-nome{font-size:13px;font-weight:600;color:var(--g900)}
.empresa-dropdown-item .emp-cnpj{font-size:11px;color:var(--g500)}
.empresa-dropdown-footer{padding:10px 14px;border-top:1px solid var(--g200)}

/* ── CONTENT ──────────────────────────────────────── */
.content{flex:1;padding:24px;max-width:100%}

/* ── PAGE HEADER ─────────────────────────────────── */
.page-header{
  display:flex;align-items:flex-start;justify-content:space-between;
  flex-wrap:wrap;gap:12px;margin-bottom:20px;
}
.page-title{font-size:20px;font-weight:700;color:var(--g900);letter-spacing:-.02em}
.page-subtitle{font-size:13px;color:var(--g500);margin-top:2px}
.page-actions{display:flex;gap:8px;flex-wrap:wrap}

/* ── FLASH ───────────────────────────────────────── */
.flash-msg{
  display:flex;align-items:center;gap:10px;
  padding:12px 16px;border-radius:var(--r);margin-bottom:16px;
  font-size:13px;font-weight:500;
}
.flash-msg a{text-decoration:underline;font-weight:700}
.flash-success{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}
.flash-error  {background:#fef2f2;color:#dc2626;border:1px solid #fecaca}
.flash-warning{background:#fffbeb;color:#d97706;border:1px solid #fde68a}
.flash-info   {background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}

/* ── CARDS ───────────────────────────────────────── */
.card{
  background:#fff;border-radius:var(--rl);border:1px solid var(--g200);
  box-shadow:var(--shadow);margin-bottom:20px;overflow:hidden;
}
.card-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 18px;border-bottom:1px solid var(--g100);
}
.card-title{font-size:14px;font-weight:600;color:var(--g900);display:flex;align-items:center;gap:8px}
.card-body{padding:18px}
.card-footer{padding:14px 18px;border-top:1px solid var(--g100);background:var(--g50)}

/* ── KPI GRID ────────────────────────────────────── */
.kpi-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
  gap:14px;margin-bottom:20px;
}
.kpi-card{
  background:#fff;border-radius:var(--rl);border:1px solid var(--g200);
  box-shadow:var(--shadow);padding:16px;
  display:flex;align-items:flex-start;gap:14px;
  transition:box-shadow var(--tr),transform var(--tr);
}
.kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}
.kpi-icon{
  width:42px;height:42px;border-radius:10px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;font-size:18px;
}
.kpi-icon.green {background:var(--green-l);color:var(--green-d)}
.kpi-icon.blue  {background:var(--blue-l); color:var(--blue)}
.kpi-icon.orange{background:var(--orange-l);color:var(--orange)}
.kpi-icon.red   {background:var(--red-l);  color:var(--red)}
.kpi-icon.purple{background:var(--purple-l);color:var(--purple)}
.kpi-icon.teal  {background:var(--teal-l); color:var(--teal)}
.kpi-icon.yellow{background:var(--yellow-l);color:var(--yellow)}
.kpi-body{flex:1;min-width:0}
.kpi-label{font-size:11px;font-weight:600;color:var(--g500);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}
.kpi-value{font-size:22px;font-weight:700;color:var(--g900);line-height:1.1;letter-spacing:-.02em}
.kpi-meta{font-size:12px;color:var(--g500);margin-top:4px}
.kpi-link{color:var(--green-d);font-weight:600;text-decoration:none}
.kpi-link:hover{text-decoration:underline}

/* ── DASH GRID ───────────────────────────────────── */
.dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:900px){.dash-grid{grid-template-columns:1fr}}

/* ── BUTTONS ─────────────────────────────────────── */
.btn{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 16px;border-radius:var(--r);font-size:13px;font-weight:600;
  border:1px solid transparent;cursor:pointer;
  transition:background var(--tr),box-shadow var(--tr),border-color var(--tr);
  text-decoration:none;white-space:nowrap;
}
.btn-primary{background:var(--green-d);color:#fff;border-color:var(--green-d)}
.btn-primary:hover{background:var(--green-xl);box-shadow:0 2px 8px rgba(21,128,61,.3)}
.btn-secondary{background:#fff;color:var(--g700);border-color:var(--g300)}
.btn-secondary:hover{background:var(--g50);border-color:var(--g400)}
.btn-danger{background:var(--red);color:#fff;border-color:var(--red)}
.btn-danger:hover{background:#b91c1c}
.btn-warning{background:var(--orange);color:#fff;border-color:var(--orange)}
.btn-warning:hover{background:#c2410c}
.btn-ghost{background:none;color:var(--g600);border-color:transparent}
.btn-ghost:hover{background:var(--g100);color:var(--g900)}
.btn-sm{padding:5px 11px;font-size:12px}
.btn-xs{padding:3px 8px;font-size:11px}
.btn-lg{padding:11px 22px;font-size:14px}
.btn-icon{width:32px;height:32px;padding:0;justify-content:center}

/* ── FORMS ───────────────────────────────────────── */
.form-grid{display:grid;gap:14px}
.form-grid.cols-2{grid-template-columns:1fr 1fr}
.form-grid.cols-3{grid-template-columns:1fr 1fr 1fr}
.form-grid.cols-4{grid-template-columns:1fr 1fr 1fr 1fr}
@media(max-width:640px){
  .form-grid.cols-2,.form-grid.cols-3,.form-grid.cols-4{grid-template-columns:1fr}
}
.form-group{display:flex;flex-direction:column;gap:4px}
.form-group label{font-size:12px;font-weight:600;color:var(--g600);letter-spacing:.02em}
.form-group .required::after{content:' *';color:var(--red)}
.form-group input,.form-group select,.form-group textarea{
  padding:9px 12px;border:1px solid var(--g300);border-radius:var(--r);
  font-size:13px;color:var(--g900);background:#fff;
  transition:border-color var(--tr),box-shadow var(--tr);outline:none;
}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{
  border-color:var(--green);box-shadow:0 0 0 3px rgba(22,163,74,.1);
}
.form-group input:disabled,.form-group select:disabled{background:var(--g100);color:var(--g500)}
.form-group textarea{resize:vertical;min-height:80px}
.form-hint{font-size:11px;color:var(--g500)}
.form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}

/* Checkbox / Radio */
.checkbox-group,.radio-group{display:flex;flex-wrap:wrap;gap:10px}
.check-item,.radio-item{
  display:flex;align-items:center;gap:6px;cursor:pointer;
  font-size:13px;color:var(--g700);
}
.check-item input,.radio-item input{
  width:16px;height:16px;accent-color:var(--green);cursor:pointer;
  padding:0;
}

/* ── TABLE ───────────────────────────────────────── */
.table-wrap{overflow-x:auto}
.data-table{width:100%;border-collapse:collapse;font-size:13px}
.data-table thead th{
  padding:10px 14px;text-align:left;font-size:11px;font-weight:700;
  color:var(--g500);text-transform:uppercase;letter-spacing:.06em;
  background:var(--g50);border-bottom:1px solid var(--g200);white-space:nowrap;
}
.data-table tbody tr{border-bottom:1px solid var(--g100);transition:background var(--tr)}
.data-table tbody tr:hover{background:#fafafa}
.data-table tbody tr:last-child{border-bottom:none}
.data-table td{padding:11px 14px;color:var(--g700);vertical-align:middle}
.data-table .value-col{font-weight:600;font-variant-numeric:tabular-nums;color:var(--g900)}
.data-table .actions-col{white-space:nowrap;text-align:right}

/* ── CHIPS/BADGES ────────────────────────────────── */
.chip{
  display:inline-flex;align-items:center;gap:4px;
  padding:3px 9px;border-radius:20px;font-size:11px;font-weight:700;
  letter-spacing:.02em;white-space:nowrap;
}
.chip-rascunho {background:var(--g100); color:var(--g600)}
.chip-pendente {background:var(--yellow-l);color:var(--yellow)}
.chip-emitida  {background:var(--green-l); color:var(--green-d)}
.chip-cancelada{background:var(--red-l);   color:var(--red)}
.chip-rejeitada{background:#fef3f2;color:#c0392b;border:1px solid #fecaca}
.chip-enviada  {background:var(--blue-l);  color:var(--blue)}

.badge{
  display:inline-block;padding:2px 8px;border-radius:4px;
  font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;
}
.badge.nfe  {background:#dbeafe;color:#1d4ed8}
.badge.nfce {background:#ede9fe;color:#6d28d9}
.badge.nfse {background:#ccfbf1;color:#0f766e}
.badge.cte  {background:#ffedd5;color:#c2410c}
.badge.mdfe {background:#fce7f3;color:#9d174d}
.badge.cfe  {background:#fef3c7;color:#92400e}
.badge.badge-gray{background:var(--g200);color:var(--g700)}

/* ── TABS ────────────────────────────────────────── */
.tabs{display:flex;gap:4px;border-bottom:2px solid var(--g200);margin-bottom:18px;overflow-x:auto}
.tab-btn{
  padding:9px 16px;font-size:13px;font-weight:600;color:var(--g500);
  border:none;background:none;cursor:pointer;white-space:nowrap;
  border-bottom:2px solid transparent;margin-bottom:-2px;
  transition:color var(--tr),border-color var(--tr);
  display:flex;align-items:center;gap:6px;
}
.tab-btn:hover{color:var(--g800)}
.tab-btn.active{color:var(--green-d);border-bottom-color:var(--green-d)}
.tab-pane{display:none}.tab-pane.active{display:block}

/* ── MODALS ──────────────────────────────────────── */
.modal-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:400;
  display:none;align-items:center;justify-content:center;padding:16px;
}
.modal-overlay.open{display:flex}
.modal{
  background:#fff;border-radius:var(--rl);width:100%;max-width:560px;
  box-shadow:var(--shadow-lg);overflow:hidden;max-height:92vh;display:flex;flex-direction:column;
}
.modal-lg{max-width:800px}
.modal-xl{max-width:1000px}
.modal-header{
  padding:16px 20px;border-bottom:1px solid var(--g200);
  display:flex;align-items:center;justify-content:space-between;
}
.modal-title{font-size:15px;font-weight:700;color:var(--g900)}
.modal-close{
  width:28px;height:28px;border-radius:6px;border:none;background:none;
  color:var(--g500);cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:background var(--tr);font-size:16px;
}
.modal-close:hover{background:var(--g100);color:var(--g900)}
.modal-body{padding:20px;overflow-y:auto;flex:1}
.modal-footer{padding:14px 20px;border-top:1px solid var(--g100);display:flex;gap:8px;justify-content:flex-end}

/* ── CENTRAL FISCAL CARDS ────────────────────────── */
.central-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}
.central-card{
  background:#fff;border-radius:var(--rl);border:1px solid var(--g200);
  padding:18px;cursor:pointer;text-align:center;
  transition:box-shadow var(--tr),transform var(--tr);box-shadow:var(--shadow);
}
.central-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.central-card i{font-size:28px;margin-bottom:10px;display:block}
.central-card h3{font-size:13px;font-weight:700;color:var(--g900);margin-bottom:4px}
.central-card p{font-size:12px;color:var(--g500)}

/* ── CERTIFICADO ─────────────────────────────────── */
.cert-upload-area{
  border:2px dashed var(--g300);border-radius:var(--rl);padding:32px;
  text-align:center;cursor:pointer;transition:border-color var(--tr),background var(--tr);
}
.cert-upload-area:hover{border-color:var(--green);background:var(--green-hl)}
.cert-upload-area i{font-size:36px;color:var(--g400);margin-bottom:10px;display:block}
.cert-upload-area p{font-size:13px;color:var(--g600)}
.cert-status-ok,.cert-status-err{
  display:flex;align-items:center;gap:14px;
  padding:14px 16px;border-radius:var(--r);
}
.cert-status-ok {background:var(--green-hl);border:1px solid #bbf7d0}
.cert-status-err{background:#fef2f2;border:1px solid #fecaca}

/* ── EMPTY STATE ─────────────────────────────────── */
.empty-state{
  text-align:center;padding:56px 24px;color:var(--g400);
}
.empty-state i{font-size:44px;display:block;margin-bottom:14px;opacity:.6}
.empty-state h3{font-size:15px;font-weight:600;color:var(--g600);margin-bottom:6px}
.empty-state p{font-size:13px;margin-bottom:16px}

/* ── SEARCH BAR ──────────────────────────────────── */
.search-bar{
  display:flex;align-items:center;gap:8px;
  background:#fff;border:1px solid var(--g200);border-radius:var(--r);
  padding:0 12px;height:36px;
}
.search-bar input{
  border:none;outline:none;font-size:13px;color:var(--g800);
  width:200px;background:transparent;
}
.search-bar i{color:var(--g400);font-size:13px}

/* ── FILTER BAR ──────────────────────────────────── */
.filter-bar{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  margin-bottom:16px;
}
.filter-bar select{
  padding:6px 10px;border:1px solid var(--g300);border-radius:6px;
  font-size:12px;color:var(--g700);background:#fff;cursor:pointer;outline:none;
}

/* ── PAGINATION ──────────────────────────────────── */
.pagination{
  display:flex;align-items:center;gap:4px;justify-content:center;
  margin-top:16px;
}
.pagination a,.pagination span{
  padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;
  border:1px solid var(--g200);background:#fff;color:var(--g700);
  cursor:pointer;transition:background var(--tr);
}
.pagination a:hover{background:var(--g100)}
.pagination .active{background:var(--green-d);color:#fff;border-color:var(--green-d)}

/* ── SECTION NOTA (emissao) ──────────────────────── */
.nota-section{margin-bottom:20px}
.nota-section-title{
  font-size:12px;font-weight:700;color:var(--g500);
  text-transform:uppercase;letter-spacing:.06em;
  padding-bottom:8px;border-bottom:1px solid var(--g200);margin-bottom:14px;
  display:flex;align-items:center;gap:6px;
}
.item-nota-row{
  display:grid;grid-template-columns:1fr 80px 110px 110px 34px;
  gap:8px;align-items:end;margin-bottom:8px;
}
@media(max-width:640px){.item-nota-row{grid-template-columns:1fr 1fr;gap:6px}}
.item-nota-total{
  display:flex;justify-content:flex-end;align-items:center;gap:16px;
  padding:12px 16px;background:var(--g50);border-radius:var(--r);
  font-size:13px;margin-top:4px;
}
.item-nota-total strong{font-size:18px;color:var(--green-d)}

/* ── TOOLTIP ─────────────────────────────────────── */
[data-tooltip]{position:relative;cursor:help}
[data-tooltip]::after{
  content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;
  transform:translateX(-50%);background:var(--g800);color:#fff;
  font-size:11px;padding:5px 9px;border-radius:5px;white-space:nowrap;
  pointer-events:none;opacity:0;transition:opacity .15s;z-index:99;
}
[data-tooltip]:hover::after{opacity:1}

/* ── RESPONSIVE ──────────────────────────────────── */
@media(max-width:768px){
  .sidebar{width:var(--swc)}
  .sidebar .sidebar-brand,.sidebar .nav-label,.sidebar-nav a span,.sidebar-logout span{display:none}
  .sidebar-nav a,.sidebar-logout{justify-content:center;padding:9px 0}
  .main-wrapper{margin-left:var(--swc)}
  .topbar{padding:0 14px}
  .content{padding:14px}
  .kpi-grid{grid-template-columns:repeat(2,1fr)}
  .empresa-selector span:not(.amb-badge){display:none}
  .user-info{display:none}
}
@media(max-width:480px){
  .kpi-grid{grid-template-columns:1fr}
  .form-grid.cols-2,.form-grid.cols-3,.form-grid.cols-4{grid-template-columns:1fr}
}
