/* ===== NF-e Simples – tema local ===== */
.nfe-wrap{
  --txt:#0f172a; --muted:#6b7280; --panel:#ffffff; --bd:#e5e7eb; --soft:#f8fafc; --brand:#6a0dad;
  color:var(--txt);
}
html[data-theme="dark"] .nfe-wrap{
  --txt:#e6ebf5; --muted:#9fb0d1; --panel:#121a2a; --bd:#273248; --soft:#0f1624; --brand:#b58df0;
}
.nfe-wide{ max-width:980px; margin:22px auto; padding:0 12px; }
.nfe-form{
  background:var(--panel); border:1px solid var(--bd); border-radius:14px; padding:12px;
  box-shadow:0 2px 10px rgba(0,0,0,.06);
}
html[data-theme="dark"] .nfe-form{ box-shadow:0 2px 12px rgba(0,0,0,.45); }
.page-title{ margin:8px 0 14px; font-size:1.6rem; font-weight:900; }
.muted{ color:var(--muted); }

/* Bands */
.band{ background:var(--panel); border:1px solid color-mix(in srgb, var(--bd) 92%, transparent);
       box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--bd) 60%, transparent);
       border-radius:12px; padding:10px; }
.band + .band{ margin-top:10px; }
.band-head h3{ margin:0 0 6px; font-size:1.04rem; }

/* Grid */
.grid{ display:grid; gap:10px; }
.grid-4{ grid-template-columns:repeat(4,1fr); }
.grid-3{ grid-template-columns:repeat(3,1fr); }
.grid-2{ grid-template-columns:repeat(2,1fr); }
@media (max-width:1100px){ .grid-4{ grid-template-columns:repeat(2,1fr);} }
@media (max-width:900px){ .grid-3{ grid-template-columns:repeat(2,1fr);} }
@media (max-width:640px){ .grid-4,.grid-3,.grid-2{ grid-template-columns:1fr;} }

/* Campos */
.field{ display:flex; flex-direction:column; gap:4px; }
.label{ font-weight:700; color:var(--txt); font-size:.92rem; }
.input,.select,textarea{
  background: color-mix(in srgb, var(--panel) 96%, var(--soft));
  border:1px solid var(--bd); border-radius:10px; padding:8px 10px; min-height:40px;
  color:var(--txt);
}
.input-xs{ min-height:36px; padding:6px 8px; }
.select{ appearance:none; padding-right:34px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'><polyline points='6 9 12 15 18 9'/></svg>");
  background-repeat:no-repeat; background-position:right 10px center;
}
/* data/time escuros */
html[data-theme="dark"] .nfe-wrap input[type="date"],
html[data-theme="dark"] .nfe-wrap input[type="time"]{ color-scheme: dark; }

/* Tabela */
.table-wrap{ overflow:auto; border-radius:10px; }
.table{ width:100%; border-collapse:separate; border-spacing:0; }
.table thead th{
  background: color-mix(in srgb, var(--panel) 92%, var(--soft)); color:var(--txt);
  border-bottom:1px solid var(--bd); padding:10px; position:sticky; top:0; z-index:1;
}
html[data-theme="dark"] .table thead th{ background:#0f1624; }
.table td{ border-bottom:1px solid var(--bd); padding:10px; white-space:nowrap; }

/* Avançado */
.adv{ margin-top:8px; }
.adv-btn{ display:inline-block; cursor:pointer; padding:6px 10px; border-radius:999px;
          border:1px solid var(--bd); }
.adv[open] .adv-btn{ background: color-mix(in srgb, var(--panel) 90%, var(--soft)); }

/* Ações / Botões */
.actions{ display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; align-items:center; }
.inline{ display:inline; }
.btn{ background:var(--brand); color:#fff; border:none; padding:10px 14px; border-radius:10px;
      font-weight:800; cursor:pointer; text-decoration:none; display:inline-block; }
.btn:hover{ filter:brightness(.97); }
.btn-outline{ background:#fff; color:var(--brand); border:2px solid var(--brand); }
.btn-nfe{ display:inline-flex; align-items:center; gap:8px; background:var(--brand);
          border:2px solid var(--brand); color:#fff; padding:10px 16px; border-radius:10px;
          font-weight:700; box-shadow:0 6px 18px rgba(106,13,173,.2); }
.btn-nfe:hover{ filter:brightness(1.05); box-shadow:0 8px 22px rgba(106,13,173,.28); }

/* Prévia */
.payload{ white-space:pre-wrap; background:#111; color:#e5e7eb; padding:12px; border-radius:8px; overflow:auto; }

