/*
 * TatiRanquine — tema visual customizado sobre AdminLTE 3 / Bootstrap 4.
 * Carregar SEMPRE depois de adminlte.min.css.
 */

:root {
  --navy: #1e2a54;
  --navy-600: #263467;
  --navy-500: #3a4780;
  --navy-100: #eaecf3;

  --coral: #f0665c;
  --coral-600: #d9483f;
  --coral-100: #fce4e1;

  --cream: #f7f5f1;
  --surface: #ffffff;

  --ink: #23283a;
  --ink-soft: #6b7086;
  --line: #e6e2da;

  --success: #1e8f6f;
  --success-100: #e3f3ec;
  --danger: #d14b4b;
  --danger-100: #fbe7e7;
  --warning: #c97a1c;
  --warning-100: #fbeedd;
  --info: #2f6fa8;
  --info-100: #e5eef5;

  --radius: 8px;
  --radius-sm: 6px;
  --shadow-sm: 0 1px 2px rgba(23, 25, 42, 0.06);
  --shadow-md: 0 4px 16px rgba(23, 25, 42, 0.08);

  --font-display: "Archivo", "Segoe UI", sans-serif;
  --font-body: "Inter", "Segoe UI", sans-serif;
  --font-accent: "Fraunces", Georgia, serif;
}

/* ---------- Base ---------- */

body,
.content-wrapper {
  background: var(--cream);
  font-family: var(--font-body);
  color: var(--ink);
  font-feature-settings: "tnum" 1;
}

h1, h2, h3, h4, h5, h6,
.card-title,
.brand-text,
.info-box-text,
.small-box h3,
.btn {
  font-family: var(--font-display);
}

/* links de conteúdo (ex.: nome do cliente numa tabela) ficam discretos em navy por padrão;
   o coral da marca aparece no hover/foco, reservado para ações (botões, menu, filtros) */
a {
  color: var(--navy);
}
a:hover,
a:focus {
  color: var(--coral-600);
}

::selection {
  background: var(--coral-100);
  color: var(--navy);
}

*:focus-visible {
  outline: 2px solid var(--coral);
  outline-offset: 1px;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.001ms !important;
    transition-duration: 0.001ms !important;
  }
}

/* ---------- Topbar ---------- */

.main-header.navbar {
  background: var(--surface);
  border-bottom: 1px solid var(--line);
  box-shadow: none;
}

.main-header .nav-link {
  color: var(--ink);
}

.main-header .nav-link:hover {
  color: var(--coral-600);
}

/* ---------- Navegação no topo ---------- */
/* Layout AdminLTE "layout-top-nav": sem sidebar, tudo dentro de .main-header. */

.tati-topnav .container-fluid {
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
}

.navbar-brand.tati-brand {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.1rem;
  padding: 0;
  margin-right: 1.5rem;
}

.tati-brand .tati-logo-img {
  height: 20px;
  width: auto;
}

.tati-tagline {
  font-family: var(--font-accent);
  font-style: italic;
  font-weight: 500;
  font-size: 0.68rem;
  letter-spacing: 0.02em;
  color: var(--coral-600);
  white-space: nowrap;
  align-self: center;
}

@media (max-width: 767.98px) {
  .tati-tagline {
    display: none;
  }
}

/* Ícones + rótulos dos itens de menu, sempre no tom neutro por padrão */
.tati-topnav .navbar-nav > .nav-item > .nav-link {
  color: var(--ink-soft);
  font-weight: 600;
  font-size: 0.88rem;
  padding: 0.55rem 0.85rem;
}

.tati-topnav .navbar-nav > .nav-item > .nav-link:hover {
  color: var(--navy);
}

.tati-topnav .navbar-nav > .nav-item > .nav-link i {
  color: var(--ink-soft);
  margin-right: 0.35rem;
}

/* item/grupo ativo: sublinhado coral, sem depender só da cor do texto */
.tati-topnav .navbar-nav > .nav-item > .nav-link.active {
  color: var(--navy);
  box-shadow: inset 0 -2px 0 var(--coral);
}

.tati-topnav .navbar-nav > .nav-item > .nav-link.active i {
  color: var(--coral-600);
}

.tati-topnav .dropdown-menu {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-md);
  padding: 0.4rem;
  margin-top: 0.25rem;
}

.tati-topnav .dropdown-item {
  border-radius: var(--radius-sm);
  padding: 0.5rem 0.75rem;
  font-size: 0.88rem;
  font-weight: 500;
  color: var(--ink);
}

.tati-topnav .dropdown-item .nav-icon {
  width: 18px;
  color: var(--ink-soft);
  margin-right: 0.4rem;
}

.tati-topnav .dropdown-item:hover {
  background: var(--navy-100);
  color: var(--navy);
}

.tati-topnav .dropdown-item.active {
  background: var(--coral-100);
  color: var(--navy);
  font-weight: 700;
  box-shadow: inset 3px 0 0 var(--coral);
}

.tati-topnav .dropdown-item.active .nav-icon {
  color: var(--coral-600);
}

.tati-avatar {
  width: 26px;
  height: 26px;
  margin-right: 0.5rem;
  object-fit: cover;
}

.tati-user-nav .nav-link {
  color: var(--ink-soft);
  font-weight: 600;
  font-size: 0.85rem;
}

.tati-user-nav .nav-link:hover {
  color: var(--coral-600);
}

.navbar-toggler {
  border-color: var(--line);
}

.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(30, 42, 84, 0.75)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* ---------- Page sub-header bar (por página, dentro do content) ---------- */

.content-wrapper section.page-section-header .navbar.navbar-white {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--line) !important;
  border-radius: 0;
  padding: 0.5rem 0.25rem 0.75rem;
  margin-bottom: 1rem;
}

.content-wrapper section.page-section-header .navbar h6 {
  font-family: var(--font-display);
  font-weight: 700;
  color: var(--navy);
  letter-spacing: 0.01em;
  margin: 0;
}

.content-wrapper section.page-section-header .navbar .nav-link,
.content-wrapper section.page-section-header .navbar .dropdown-item {
  color: var(--ink-soft);
  font-weight: 500;
}

.content-wrapper section.page-section-header .navbar .nav-link:hover,
.content-wrapper section.page-section-header .navbar .dropdown-item:hover {
  color: var(--coral-600);
}

/* ---------- Cards ---------- */

.card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-sm);
}

/* normaliza as variantes coloridas (card-primary/yellow/green/light/default...) para um único padrão silencioso */
.card.card-primary,
.card.card-primary.card-outline,
.card.card-yellow,
.card.card-green,
.card.card-light,
.card.card-default {
  border: 1px solid var(--line);
  border-top: 1px solid var(--line);
}

/* "cartões sólidos" (card-yellow/card-green sem .card-outline) pintavam o header inteiro
   com a cor viva do Bootstrap; aqui viram o mesmo cartão silencioso, com o tom só no título */
.card-yellow:not(.card-outline) > .card-header,
.card-green:not(.card-outline) > .card-header {
  background: var(--surface) !important;
  border-top: 3px solid var(--warning);
  border-bottom: 1px solid var(--line);
}

.card-green:not(.card-outline) > .card-header {
  border-top-color: var(--success);
}

.card-yellow:not(.card-outline) > .card-header,
.card-yellow:not(.card-outline) > .card-header a,
.card-yellow:not(.card-outline) > .card-header .card-title {
  color: var(--warning);
}

.card-green:not(.card-outline) > .card-header,
.card-green:not(.card-outline) > .card-header a,
.card-green:not(.card-outline) > .card-header .card-title {
  color: var(--success);
}

.card-yellow:not(.card-outline) > .card-header .btn-tool,
.card-green:not(.card-outline) > .card-header .btn-tool {
  color: var(--ink-soft);
}

.card-header {
  background: var(--surface);
  border-bottom: 1px solid var(--line);
  border-top-left-radius: var(--radius);
  border-top-right-radius: var(--radius);
}

.card-header.bg-light,
.card-header.bg-info {
  background: var(--navy-100) !important;
  color: var(--navy);
  border-bottom: 1px solid var(--line);
}

.card-title {
  color: var(--navy);
  font-weight: 700;
  font-size: 1rem;
}

.card-title i {
  color: var(--coral);
}

.card-tools .btn-tool {
  color: var(--ink-soft);
}

.card-tools .btn-tool:hover {
  color: var(--coral-600);
}

.card.collapsed-card .card-header {
  border-bottom: none;
}

/* abas dentro de cartões (ex.: Produtos / Fornecedores / Marcas). O AdminLTE pinta
   .card-primary > .card-header inteiro de azul sólido quando não é .card-outline;
   aqui vira uma barra clara com a aba ativa marcada em navy, igual ao resto do sistema */
.card-primary:not(.card-outline) > .card-header {
  background: var(--surface) !important;
  border-bottom: 1px solid var(--line);
}

.card-primary:not(.card-outline) > .card-header,
.card-primary:not(.card-outline) > .card-header a {
  color: var(--ink-soft);
}

.nav-tabs {
  border-bottom-color: var(--line);
}

.nav-tabs .nav-link {
  color: var(--ink-soft);
  font-weight: 600;
  border-color: transparent;
}

.nav-tabs .nav-link:hover {
  color: var(--navy);
  border-color: var(--line) var(--line) var(--line);
}

.nav-tabs .nav-link.active,
.card-primary:not(.card-outline) > .card-header a.active {
  background: var(--surface) !important;
  color: var(--navy) !important;
  border-color: var(--line) var(--line) var(--surface) !important;
  box-shadow: inset 0 -2px 0 var(--coral);
}

/* ---------- Botões ---------- */

.btn {
  border-radius: var(--radius-sm);
  font-weight: 600;
  letter-spacing: 0.01em;
}

.btn-default {
  background: var(--surface);
  border-color: var(--line);
  color: var(--ink);
}

.btn-default:hover {
  background: var(--navy-100);
  border-color: var(--line);
  color: var(--navy);
}

.btn-primary {
  background: var(--navy);
  border-color: var(--navy);
}

.btn-primary:hover {
  background: var(--navy-600);
  border-color: var(--navy-600);
}

.btn-success {
  background: var(--success);
  border-color: var(--success);
}

.btn-success:hover {
  background: #187a5f;
  border-color: #187a5f;
}

.btn-danger {
  background: var(--danger);
  border-color: var(--danger);
}

.btn-danger:hover {
  background: #b93c3c;
  border-color: #b93c3c;
}

.btn-info {
  background: var(--info);
  border-color: var(--info);
}

/* ação primária de marca, uso pontual (ex.: enviar formulário principal) */
.btn-brand {
  background: var(--coral);
  border-color: var(--coral);
  color: #fff;
}

.btn-brand:hover {
  background: var(--coral-600);
  border-color: var(--coral-600);
  color: #fff;
}

/* ---------- Tabelas ---------- */

.table {
  color: var(--ink);
}

.table thead th {
  border-bottom: 2px solid var(--line);
  color: var(--ink-soft);
  font-family: var(--font-display);
  font-size: 0.72rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-weight: 700;
  white-space: nowrap;
}

.table td,
.table th {
  border-top: 1px solid var(--line);
  vertical-align: middle;
}

.table-striped tbody tr:nth-of-type(odd) {
  background: rgba(30, 42, 84, 0.02);
}

.table-hover tbody tr:hover {
  background: var(--coral-100);
}

.table-bordered,
.table-bordered td,
.table-bordered th {
  border-color: var(--line);
}

/* colunas monetárias: alinhamento tabular quando marcadas explicitamente */
.valor-monetario,
.text-nowrap td:last-child {
  font-feature-settings: "tnum" 1;
}

/* ---------- Badges / status ---------- */

.badge {
  font-weight: 600;
  font-size: 0.72rem;
  letter-spacing: 0.02em;
  padding: 0.32em 0.6em;
  border-radius: 999px;
}

.badge-success,
.bg-success {
  background: var(--success) !important;
}

.badge-danger,
.bg-danger {
  background: var(--danger) !important;
}

.badge-warning,
.bg-warning {
  background: var(--warning) !important;
  color: #fff !important;
}

.badge-info,
.bg-info {
  background: var(--info) !important;
}

.badge-secondary {
  background: var(--ink-soft) !important;
}

/* destaque de "linha atual" em tabelas (ex.: mês corrente na evolução financeira usa bg-yellow;
   itens concluídos usam bg-success): um tom leve com barra lateral, em vez do preenchimento
   sólido e vibrante do Bootstrap */
.table tr.bg-yellow,
.table tr.bg-success {
  box-shadow: inset 3px 0 0 var(--warning);
}
.table tr.bg-yellow > td,
.table tr.bg-yellow > th {
  background: var(--warning-100) !important;
  color: var(--ink) !important;
}
.table tr.bg-success {
  box-shadow: inset 3px 0 0 var(--success);
}
.table tr.bg-success > td,
.table tr.bg-success > th {
  background: var(--success-100) !important;
  color: var(--ink) !important;
}

/* ---------- Etiquetas de produto (cor / tamanho) ---------- */
/* remete a uma etiqueta de roupa pendurada: cantos levemente cortados e uma "casa" de costura */

.tag-chip {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding: 0.18em 0.65em 0.18em 0.85em;
  border: 1px solid var(--line);
  background: var(--cream);
  color: var(--ink);
  font-size: 0.78rem;
  font-weight: 600;
  text-transform: capitalize;
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}

.tag-chip::before {
  content: "";
  position: absolute;
  left: 6px;
  top: 50%;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--surface);
  border: 1px solid var(--ink-soft);
  transform: translateY(-50%);
}

.tag-chip-size {
  text-transform: uppercase;
  font-family: var(--font-display);
  letter-spacing: 0.02em;
}

/* ---------- info-box / small-box (indicadores) ---------- */

.info-box {
  background: var(--surface);
  border: 1px solid var(--line);
  border-left: 3px solid var(--navy);
  border-radius: var(--radius);
  box-shadow: var(--shadow-sm);
  position: relative;
}

.info-box.bg-light {
  background: var(--surface) !important;
}

.info-box::after {
  content: "";
  position: absolute;
  left: -3px;
  top: 14px;
  width: 6px;
  height: 6px;
  background: var(--coral);
  transform: rotate(45deg);
}

.info-box .info-box-icon {
  background: transparent !important;
  color: var(--navy);
  font-size: 1.6rem;
}

.info-box-text {
  color: var(--ink-soft);
  font-size: 0.72rem;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  font-weight: 700;
}

.info-box-number {
  font-family: var(--font-display);
  color: var(--ink) !important;
  font-weight: 800;
  font-size: 1.25rem;
  font-feature-settings: "tnum" 1;
}

.small-box {
  border-radius: var(--radius);
  box-shadow: var(--shadow-sm);
}

/* ---------- Formulários ---------- */

.form-control {
  border-color: var(--line);
  border-radius: var(--radius-sm);
  color: var(--ink);
}

.form-control:focus {
  border-color: var(--coral);
  box-shadow: 0 0 0 3px var(--coral-100);
}

.input-group-text {
  background: var(--navy-100);
  border-color: var(--line);
  color: var(--navy);
}

label {
  font-weight: 600;
  color: var(--navy);
  font-size: 0.85rem;
}

/* ---------- Modais ---------- */

.modal-content {
  border-radius: var(--radius);
  border: none;
  box-shadow: var(--shadow-md);
}

.modal-header {
  border-bottom: 1px solid var(--line);
}

.modal-header .modal-title {
  font-family: var(--font-display);
  color: var(--navy);
  font-weight: 700;
}

/* ---------- Rodapé ---------- */

.main-footer {
  background: var(--surface);
  border-top: 1px solid var(--line);
  color: var(--ink-soft);
  font-size: 0.8rem;
}

/* ---------- Login ---------- */

.login-page {
  background: var(--cream);
}

.login-box .card {
  border: 1px solid var(--line);
  box-shadow: var(--shadow-md);
  overflow: hidden;
}

.login-box .card-header {
  background: var(--surface);
  border-bottom: 1px dashed var(--line);
  padding-bottom: 0.9rem;
}

.login-box .card-header img {
  max-width: 220px;
}

.login-box .login-tagline {
  font-family: var(--font-accent);
  font-style: italic;
  font-weight: 500;
  color: var(--coral-600);
  font-size: 0.95rem;
  margin: 0.35rem 0 0;
}

.login-box .login-greeting {
  color: var(--ink-soft);
  font-size: 0.85rem;
  margin: 0.2rem 0 0;
}

.login-box .btn-default {
  background: var(--navy);
  border-color: var(--navy);
  color: #fff;
}

.login-box .btn-default:hover {
  background: var(--navy-600);
  border-color: var(--navy-600);
}

/* ---------- Utilitários de cor (remapeados para a paleta da marca) ---------- */

.text-muted { color: var(--ink-soft) !important; }

/* declaradas depois de .text-muted para vencer o empate de especificidade quando as duas
   classes aparecem juntas (ex.: "text-muted text-red" usado nos indicadores financeiros) */
.text-red { color: var(--danger) !important; }
.text-green { color: var(--success) !important; }
.text-blue { color: var(--navy) !important; }
.text-orange { color: var(--warning) !important; }

.bg-orange { background: var(--warning) !important; }
.bg-yellow { background: var(--warning) !important; color: #fff !important; }
.bg-green { background: var(--success) !important; }
.bg-red { background: var(--danger) !important; }
.bg-blue { background: var(--navy) !important; }

/* barra de página "border-purple / border-blue" herdada do AdminLTE: neutraliza para hairline */
.content-wrapper .navbar.border-purple,
.content-wrapper .navbar.border-blue {
  border-color: var(--line) !important;
}

/* ---------- Estado de estoque (badge) ---------- */

.stock-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 0.72rem;
  font-weight: 700;
  padding: 3px 9px;
  border-radius: 999px;
  white-space: nowrap;
}
.stock-badge .sdot { width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0; }
.stock-ok { background: var(--success-100); color: var(--success); }
.stock-ok .sdot { background: var(--success); }
.stock-low { background: var(--warning-100); color: var(--warning); }
.stock-low .sdot { background: var(--warning); }
.stock-crit { background: var(--danger-100); color: var(--danger); }
.stock-crit .sdot { background: var(--danger); }
.stock-out { background: var(--navy-100); color: var(--ink-soft); }
.stock-out .sdot { background: var(--ink-soft); }

/* ---------- Indicador com variação (dashboard) ---------- */

.kpi-delta {
  font-size: 0.76rem;
  font-weight: 600;
  margin-top: 4px;
  display: flex;
  align-items: center;
  gap: 4px;
}
.kpi-delta.is-up { color: var(--success); }
.kpi-delta.is-down { color: var(--danger); }
.kpi-delta.is-flat { color: var(--ink-soft); }

/* ==========================================================
   Modernização 2026 — navegação superior e workspace amplo
   ========================================================== */
body.layout-top-nav .wrapper .content-wrapper { margin-left: 0; }
.content-wrapper { min-height: calc(100vh - 112px); }
.content-wrapper > .content { padding: 20px 24px 32px; }
.content-wrapper .container, .content-wrapper .container-fluid { max-width: none; }

/* Barra principal escura: libera a lateral e aproxima o sistema do conceito SaaS/retail. */
.main-header.navbar.tati-topnav {
  min-height: 62px;
  background: #111c39;
  border: 0;
  box-shadow: 0 2px 12px rgba(17, 28, 57, .14);
  padding: 0 18px;
}
.tati-topnav .container-fluid { padding-top: 0; padding-bottom: 0; }
.navbar-brand.tati-brand { min-width: 178px; margin-right: 20px; justify-content:center; }
.tati-brand .tati-logo-img { height: 27px; filter: brightness(0) invert(1); }
.tati-tagline { display:none; }
.tati-topnav .navbar-nav > .nav-item > .nav-link,
.tati-user-nav .nav-link { color: rgba(255,255,255,.78); padding: 21px 14px 19px; font-size:.82rem; }
.tati-topnav .navbar-nav > .nav-item > .nav-link i { color: rgba(255,255,255,.58); }
.tati-topnav .navbar-nav > .nav-item > .nav-link:hover,
.tati-user-nav .nav-link:hover { color:#fff; background:rgba(255,255,255,.04); }
.tati-topnav .navbar-nav > .nav-item > .nav-link.active { color:#fff; box-shadow: inset 0 -3px 0 var(--coral); background:rgba(255,255,255,.035); }
.tati-topnav .navbar-nav > .nav-item > .nav-link.active i { color:var(--coral); }
.tati-topnav .dropdown-menu { margin-top: 0; border:0; border-radius:10px; min-width:220px; padding:8px; box-shadow:0 14px 34px rgba(17,28,57,.18); }
.tati-topnav .dropdown-item { padding:.65rem .75rem; }
.tati-topnav .tati-avatar { border:2px solid rgba(255,255,255,.28); }
.tati-topnav .navbar-toggler { border-color:rgba(255,255,255,.28); }
.tati-topnav .navbar-toggler-icon { filter:brightness(0) invert(1); }

/* Cabeçalhos das páginas: deixam de parecer uma segunda navbar. */
.content-wrapper section.page-section-header { padding:0; margin:0 0 16px; }
.content-wrapper section.page-section-header .navbar.navbar-white {
  min-height:58px; background:transparent!important; border:0!important; padding:4px 0 12px; margin:0;
}
.content-wrapper section.page-section-header .navbar h6 { font-size:1.35rem; color:var(--ink); letter-spacing:-.02em; }
.content-wrapper section.page-section-header .navbar h6 i,
.content-wrapper section.page-section-header .navbar h6 span { color:var(--coral); margin-right:7px; }
.content-wrapper section.page-section-header .navbar .nav-link { border:1px solid var(--line); background:#fff; border-radius:7px; padding:.48rem .72rem; margin-left:7px; color:var(--ink); }
.content-wrapper section.page-section-header .navbar .nav-link:hover { border-color:#d8d2c8; background:#fff; box-shadow:var(--shadow-sm); }
.content-wrapper section.page-section-header .navbar .nav-item:last-child .nav-link { background:var(--coral); border-color:var(--coral); color:#fff; }
.content-wrapper section.page-section-header .navbar .nav-item:last-child .nav-link i { color:#fff; }

/* Superfícies mais limpas e densidade adequada para desktop. */
.card { border-radius:10px; box-shadow:0 1px 3px rgba(17,28,57,.045); }
.card-header { padding:.85rem 1rem; }
.card-body { padding:1rem; }
.card-tabs > .card-header { padding:0 14px!important; }
.nav-tabs .nav-link { padding:.85rem .95rem; font-size:.84rem; }
.table { margin-bottom:0; }
.table thead th { background:#fbfaf8; border-bottom:1px solid var(--line); padding:.7rem .75rem; }
.table td { padding:.66rem .75rem; }
.table-bordered { border-left:0; border-right:0; }
.table-bordered td, .table-bordered th { border-left:0; border-right:0; }
.table-striped tbody tr:nth-of-type(odd) { background:rgba(247,245,241,.55); }
.table-hover tbody tr:hover { background:#fff7f5; }

/* CTAs no padrão do conceito visual. */
.btn-brand, .page-section-header .btn-brand { box-shadow:0 2px 6px rgba(240,102,92,.18); }
.btn-success[type="submit"] { background:var(--coral); border-color:var(--coral); }
.btn-success[type="submit"]:hover { background:var(--coral-600); border-color:var(--coral-600); }

/* Dashboard */
.dashboard-hero { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin:4px 0 18px; }
.dashboard-hero h1 { margin:0 0 4px; font-size:1.55rem; letter-spacing:-.03em; color:var(--ink); }
.dashboard-hero p { margin:0; color:var(--ink-soft); font-size:.88rem; }
.dashboard-actions { display:flex; gap:8px; flex-wrap:wrap; }
.dashboard-actions .btn { padding:.55rem .85rem; }
.info-box { border:1px solid var(--line); border-left:1px solid var(--line); min-height:100px; }
.info-box::after { display:none; }
.info-box-content { padding:14px 16px; }
.info-box-number { font-size:1.32rem; margin-top:7px; }

/* Formulários e modais mais editoriais. */
.form-control { min-height:38px; background:#fff; }
.modal-content { border-radius:12px; overflow:hidden; }
.modal-header { padding:1rem 1.15rem; }
.modal-body { background:#fcfbf9; }
.modal-body .card { background:#fff; }
.modal-footer, .card-footer { border-top:1px solid var(--line); background:#fff; }

@media (max-width: 991.98px) {
  .main-header.navbar.tati-topnav { padding:0 12px; }
  .navbar-brand.tati-brand { min-width:0; margin-right:auto; }
  .tati-topnav .navbar-collapse { padding:8px 0 12px; }
  .tati-topnav .navbar-nav > .nav-item > .nav-link { padding:10px 12px; border-radius:6px; }
  .tati-topnav .navbar-nav > .nav-item > .nav-link.active { box-shadow:inset 3px 0 0 var(--coral); }
  .content-wrapper > .content { padding:16px 14px 24px; }
  .dashboard-hero { align-items:flex-start; flex-direction:column; }
}

/* === Modernização 2026 · fase 2: telas de negócio === */
.page-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:4px 0 8px}.page-hero h1{margin:2px 0 4px;font-size:1.6rem;letter-spacing:-.035em;color:var(--ink)}.page-hero p{margin:0;color:var(--ink-soft);font-size:.88rem}.page-kicker{text-transform:uppercase;letter-spacing:.11em;font-size:.67rem;font-weight:700;color:var(--coral)}.page-actions{display:flex;gap:8px;flex-wrap:wrap}.btn-brand{background:var(--coral);border:1px solid var(--coral);color:#fff!important}.btn-brand:hover{background:var(--coral-600);border-color:var(--coral-600)}
.metric-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.metric-strip>div{background:#fff;border:1px solid var(--line);border-radius:10px;padding:13px 15px}.metric-strip span{display:block;color:var(--ink-soft);font-size:.73rem}.metric-strip strong{display:block;color:var(--ink);font-size:1rem;margin-top:3px}.modern-list-card{overflow:hidden}.modern-table td,.modern-table th{vertical-align:middle}.customer-cell{display:flex;align-items:center;gap:10px;color:var(--ink)!important}.customer-cell>span:last-child{display:flex;flex-direction:column}.customer-cell small{color:var(--ink-soft);font-size:.7rem;margin-top:2px}.customer-avatar{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f2e7e2;color:var(--navy);font-family:Archivo,sans-serif;font-weight:700;flex:0 0 auto}.customer-avatar-sm{width:34px;height:34px;font-size:.78rem}.row-arrow{color:#a3a6b0;padding:8px 10px}.row-arrow:hover{color:var(--coral)}
.sales-open-list{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:11px;overflow:hidden}.sale-open-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto 24px;align-items:center;gap:13px;padding:15px 17px;border-bottom:1px solid var(--line);color:var(--ink)!important;transition:.15s ease}.sale-open-card:last-child{border-bottom:0}.sale-open-card:hover{background:#fff9f7;transform:translateX(2px)}.sale-open-main{display:flex;flex-direction:column}.sale-open-main strong{font-size:.91rem}.sale-open-main span{font-size:.75rem;color:var(--ink-soft);margin-top:2px}.sale-open-date{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:3px}.sale-open-date small{color:var(--ink-soft);font-size:.7rem}.sale-age{font-size:.71rem;font-weight:700}.sale-age.is-fresh{color:var(--success)}.sale-age.is-warn{color:var(--warning)}.sale-age.is-late{color:var(--danger)}.sale-open-arrow{color:#b5b6bd;font-size:.75rem}.empty-state{text-align:center;padding:58px 20px;background:#fff}.empty-state-icon{width:54px;height:54px;border-radius:50%;background:#fff1ed;color:var(--coral);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-size:1.2rem}.empty-state h3{font-size:1rem;color:var(--ink)}.empty-state p{max-width:430px;margin:0 auto 18px;color:var(--ink-soft);font-size:.82rem}
@media(max-width:767.98px){.page-hero{align-items:flex-start;flex-direction:column}.page-actions{width:100%}.page-actions .btn{flex:1}.metric-strip{grid-template-columns:1fr}.modern-table thead{display:none}.modern-table,.modern-table tbody,.modern-table tr,.modern-table td{display:block;width:100%}.modern-table tr{padding:12px 14px;border-bottom:1px solid var(--line)}.modern-table td{border:0!important;padding:4px 0!important}.modern-table td:not(:first-child):not(:last-child){padding-left:44px!important;font-size:.76rem;color:var(--ink-soft)}.modern-table td:last-child{position:absolute;right:20px;margin-top:-42px}.sale-open-card{grid-template-columns:40px minmax(0,1fr) 18px}.sale-open-date{grid-column:2;text-align:left;align-items:flex-start}.sale-open-arrow{grid-column:3;grid-row:1/3}}
.catalog-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0 0 14px}.catalog-summary>div{background:#fff;border:1px solid var(--line);border-radius:9px;padding:11px 14px}.catalog-summary span{font-size:.7rem;color:var(--ink-soft);display:block}.catalog-summary strong{font-size:1.05rem;color:var(--ink);display:block;margin-top:2px}.product-cell{display:flex;align-items:center;gap:10px;min-width:220px}.product-cell>div:last-child{display:flex;flex-direction:column}.product-cell small,.cost-note{display:block;color:var(--ink-soft);font-size:.68rem;margin-top:2px;font-weight:400}.product-thumb{width:38px;height:44px;border-radius:7px;background:#f5eee9;color:#b77967;display:flex;align-items:center;justify-content:center;font-size:1rem}.grade-chips{display:flex;gap:4px;align-items:center}.grade-chips span,.grade-chips b{font-size:.67rem;border:1px solid var(--line);border-radius:5px;padding:3px 6px;background:#fff;font-weight:600}.grade-chips span{max-width:80px;overflow:hidden;text-overflow:ellipsis}.product-table td{height:62px}.card-tabs{border:1px solid var(--line)}
@media(max-width:767.98px){.catalog-summary{grid-template-columns:repeat(2,1fr)}.product-table td:not(:first-child):not(:last-child){padding-left:48px!important}.product-table td:nth-child(2):before{content:'Categoria: ';font-weight:600}.product-table td:nth-child(3):before{content:'Variação: ';font-weight:600}.product-table td:nth-child(4):before{content:'Estoque: ';font-weight:600}.product-table td:nth-child(5):before{content:'Preço: ';font-weight:600}.product-table td:nth-child(6):before{content:'Status: ';font-weight:600}}

/* === Modernização 2026 · fase 3: workspace de venda === */
.sale-workspace-hero .page-actions{align-items:center}.sale-workspace-hero .btn-default{background:#fff;border:1px solid var(--line);color:var(--ink)}.sale-workspace-hero .btn-default:hover{border-color:#d7d1c8;box-shadow:var(--shadow-sm)}.sale-workspace-hero .btn-group>.btn{min-height:38px}.card-subtitle-modern{clear:both;padding-top:4px;color:var(--ink-soft);font-size:.75rem}.sale-workspace-hero .dropdown-menu{border:0;border-radius:10px;box-shadow:0 14px 34px rgba(17,28,57,.14);padding:8px}.sale-workspace-hero .dropdown-item{border-radius:6px;padding:.62rem .72rem}.sale-workspace-hero .dropdown-item:hover{background:#fff5f2}.sale-workspace-hero .dropdown-item.text-green,.sale-workspace-hero .dropdown-item.text-blue{color:var(--ink)!important}.sale-workspace-hero .dropdown-item.text-red{color:var(--danger)!important}

/* Fase 4 — workspace de venda / PDV */
.sale-workspace{padding:0 7.5px 24px}.sale-items-panel,.sale-summary-card{border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:14px;overflow:hidden}.sale-items-panel .card-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;background:#fff}.sale-item-list{display:flex;flex-direction:column;gap:10px}.sale-item-card{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff;transition:.18s ease}.sale-item-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.sale-item-main{display:flex;align-items:center;min-width:0;gap:12px}.sale-item-icon{width:46px;height:54px;border-radius:9px;background:var(--cream,#f7f5f1);display:flex;align-items:center;justify-content:center;color:var(--navy,#1e2a54);font-size:1.15rem;flex:0 0 auto}.sale-item-copy{display:flex;flex-direction:column;min-width:0}.sale-item-copy strong{color:var(--ink);font-size:.9rem}.sale-item-copy span,.sale-item-copy small{color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sale-item-meta{display:flex;align-items:center;gap:18px;flex:0 0 auto}.sale-item-meta>div:not(.dropdown):not(.sale-discount-badge){display:flex;flex-direction:column;min-width:64px}.sale-item-meta span{font-size:.66rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft)}.sale-item-meta strong{font-size:.82rem;color:var(--ink)}.sale-discount-badge{font-size:.7rem;font-weight:700;color:var(--success);background:rgba(30,143,111,.09);border-radius:20px;padding:5px 8px}.sale-more{border-radius:8px}.sticky-sale-summary{position:sticky;top:82px}.sale-summary-card .card-body{padding:20px}.sale-customer{display:flex;align-items:center;gap:11px}.sale-customer>div:last-child{display:flex;flex-direction:column}.sale-customer span{font-size:.68rem;text-transform:uppercase;color:var(--ink-soft)}.sale-customer strong{color:var(--ink)}.sale-summary-line{display:flex;justify-content:space-between;align-items:center;padding:7px 0;color:var(--ink-soft);font-size:.84rem}.sale-summary-line strong{color:var(--ink)}.sale-total{display:flex;justify-content:space-between;align-items:flex-end;margin-top:12px;padding-top:16px;border-top:1px solid var(--line)}.sale-total span{font-weight:600;color:var(--ink)}.sale-total strong{font-size:1.45rem;color:var(--navy,#1e2a54)}.sale-credit-note{margin-top:14px;padding:10px 12px;border-radius:9px;background:rgba(30,143,111,.08);font-size:.75rem;color:var(--success)}.empty-state-modern{text-align:center;padding:42px 20px;color:var(--ink-soft)}.empty-state-modern>i{font-size:2rem;margin-bottom:12px;color:#c9c3ba}.empty-state-modern h4{color:var(--ink);font-size:1rem}.avatar-modern{width:38px;height:38px;border-radius:50%;display:flex!important;align-items:center;justify-content:center;background:var(--navy,#1e2a54);color:#fff;font-weight:700}
@media(max-width:991.98px){.sticky-sale-summary{position:static}.sale-item-card{align-items:flex-start}.sale-item-meta{gap:10px;flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:767.98px){.sale-items-panel .card-header{align-items:flex-start;gap:12px;flex-direction:column}.sale-item-card{flex-direction:column}.sale-item-meta{width:100%;justify-content:space-between}.sale-item-meta>div:not(.dropdown):not(.sale-discount-badge){min-width:auto}.sale-workspace{padding-left:0;padding-right:0}}

/* Fase 6 — cadastro de produto orientado a moda */
.product-create-modal .modal-dialog{max-width:1120px}.product-modal-header{background:#fff;border-bottom:1px solid var(--line);align-items:flex-start}.product-modal-header h4{font-family:Archivo,sans-serif;color:var(--ink);font-size:1.35rem;margin:2px 0}.product-modal-header p{margin:0;color:var(--ink-soft);font-size:.78rem}.product-form-body{padding:0;background:#f8f6f2}.product-form-grid{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:0}.product-form-main{padding:20px}.form-section-modern{background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px 18px;margin-bottom:13px}.form-section-modern:last-child{margin-bottom:0}.form-section-title{display:flex;align-items:center;gap:10px;margin-bottom:15px}.form-section-title>span{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff0ed;color:var(--coral);font-size:.68rem;font-weight:800}.form-section-title>div{display:flex;flex-direction:column}.form-section-title strong{font-size:.86rem;color:var(--ink)}.form-section-title small{font-size:.68rem;color:var(--ink-soft);margin-top:1px}.form-section-modern label{font-size:.72rem;color:var(--ink);margin-bottom:5px}.form-section-modern .form-group{margin-bottom:12px}.grade-preview-modern{display:flex;align-items:center;justify-content:space-between;border-top:1px dashed var(--line);padding-top:12px;color:var(--ink-soft);font-size:.7rem}.grade-preview-modern>div{display:flex;gap:7px;align-items:center}.grade-preview-modern b,.grade-preview-modern strong{border:1px solid var(--line);background:#fff;border-radius:6px;padding:4px 7px;color:var(--ink);font-size:.7rem}.product-form-summary{border-left:1px solid var(--line);background:#fff;padding:22px;position:relative}.product-visual-placeholder{height:190px;border-radius:13px;background:linear-gradient(145deg,#f6eee9,#fbf8f4);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#b98b7c;margin-bottom:22px}.product-visual-placeholder i{font-size:2.4rem;margin-bottom:9px}.product-visual-placeholder span{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}.summary-label{display:block;text-transform:uppercase;letter-spacing:.09em;color:var(--coral);font-weight:700;font-size:.62rem}.product-form-summary h5{font-size:1rem;color:var(--ink);margin:5px 0 16px}.summary-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f0ede8;font-size:.76rem}.summary-row span{color:var(--ink-soft)}.summary-row strong{color:var(--ink)}.margin-card{background:var(--navy);border-radius:10px;padding:13px 14px;margin-top:15px;color:#fff}.margin-card span,.margin-card small{display:block;opacity:.72;font-size:.66rem}.margin-card strong{display:block;font-size:1.25rem;margin:3px 0}.summary-help{font-size:.69rem;color:var(--ink-soft);line-height:1.5;margin:16px 0 0}.summary-help i{color:var(--coral);margin-right:4px}.product-modal-footer{background:#fff;justify-content:flex-end}.product-modal-footer .btn{min-width:130px}.optional-sale-section{border-left:3px solid #e7dfd7}
@media(max-width:991.98px){.product-create-modal .modal-dialog{max-width:94vw}.product-form-grid{grid-template-columns:1fr}.product-form-summary{border-left:0;border-top:1px solid var(--line)}.product-visual-placeholder{height:120px}}

/* Fase 7 — catálogo por modelo + grade de variações */
.product-catalog-list{display:flex;flex-direction:column;gap:10px;padding:14px;background:#f8f6f2}.product-family-card{background:#fff;border:1px solid var(--line);border-radius:13px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;overflow:hidden;transition:.18s ease}.product-family-card:hover{border-color:#dcd5cb;box-shadow:var(--shadow-sm)}.product-family-main{display:flex;align-items:center;gap:13px;padding:15px 17px;min-width:0}.product-family-thumb{width:54px;height:62px;flex:0 0 auto;border-radius:10px;background:linear-gradient(145deg,#f5ece7,#faf7f3);display:flex;align-items:center;justify-content:center;color:#b77967;font-size:1.25rem}.product-family-copy{min-width:0;flex:1}.product-family-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.product-family-title-row>div{display:flex;flex-direction:column;min-width:0}.product-family-title-row strong{font-size:.91rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-family-title-row small{font-size:.67rem;color:var(--ink-soft);margin-top:2px}.product-family-tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:9px}.product-family-tags span{display:inline-flex;align-items:center;gap:5px;background:#faf8f5;border:1px solid #eee9e2;border-radius:20px;padding:4px 8px;font-size:.65rem;color:var(--ink-soft)}.product-family-tags i{font-size:.62rem;color:#a49b91}.product-family-commercial{display:flex;align-items:center;gap:20px;padding:15px 17px;border-left:1px solid var(--line)}.product-family-commercial>div{display:flex;flex-direction:column;min-width:78px}.product-family-commercial>div:nth-child(2){min-width:145px}.product-family-commercial span{font-size:.62rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft)}.product-family-commercial strong{font-size:.8rem;color:var(--ink);margin-top:2px}.product-variants-toggle{white-space:nowrap;border-radius:8px}.product-variants-panel{grid-column:1/-1;border-top:1px solid var(--line);background:#fcfbf9}.product-variants-header{display:flex;align-items:center;justify-content:space-between;padding:13px 17px 8px}.product-variants-header>div{display:flex;flex-direction:column}.product-variants-header strong{font-size:.78rem;color:var(--ink)}.product-variants-header small{font-size:.65rem;color:var(--ink-soft);margin-top:2px}.product-variants-header>span{font-size:.65rem;color:var(--ink-soft);background:#f1ede8;border-radius:20px;padding:4px 8px}.product-variants-table{background:#fff}.product-variants-table th{font-size:.62rem!important}.product-variants-table td{font-size:.73rem;vertical-align:middle!important}.variant-color-chip,.variant-size-chip{display:inline-flex;align-items:center;border:1px solid var(--line);background:#fff;border-radius:6px;padding:4px 7px;font-size:.68rem;color:var(--ink)}.variant-size-chip{min-width:30px;justify-content:center;font-weight:700}.product-variants-panel.show+.x{display:none}
@media(max-width:991.98px){.product-family-card{grid-template-columns:1fr}.product-family-commercial{border-left:0;border-top:1px solid var(--line);justify-content:space-between;padding:11px 17px}.product-family-commercial>div:nth-child(2){min-width:120px}}
@media(max-width:575.98px){.product-catalog-list{padding:9px}.product-family-main{padding:13px}.product-family-thumb{width:44px;height:52px}.product-family-title-row{display:block}.product-family-title-row .badge{display:inline-block;margin-top:6px}.product-family-commercial{display:grid;grid-template-columns:1fr 1fr;padding:11px 13px;gap:10px}.product-family-commercial .product-variants-toggle{grid-column:1/-1;width:100%}.product-family-commercial>div:nth-child(2){min-width:0}.product-variants-header{align-items:flex-start;gap:8px}.product-variants-table{min-width:650px}}

/* Fase 8 — perfil 360° da cliente */
.customer-profile-hero{align-items:center}.customer-profile-identity{display:flex;align-items:center;gap:13px;min-width:0}.customer-back{width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:#fff;display:flex;align-items:center;justify-content:center;color:var(--ink-soft)}.customer-back:hover{color:var(--coral);border-color:#e7c5bd}.customer-profile-avatar{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#f4ddd6,#faeee9);color:var(--navy);font-family:Archivo,sans-serif;font-weight:800;font-size:1rem;flex:0 0 auto}.customer-profile-identity h1{margin:2px 0!important}.customer-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:4px 0 16px}.customer-kpi{background:#fff;border:1px solid var(--line);border-radius:11px;padding:14px 15px;display:flex;flex-direction:column}.customer-kpi span{font-size:.67rem;text-transform:uppercase;letter-spacing:.055em;color:var(--ink-soft)}.customer-kpi strong{font-size:1.05rem;color:var(--ink);margin:5px 0 1px}.customer-kpi small{font-size:.65rem;color:#9a9ca6}.customer-kpi-credit{background:#f5faf7;border-color:#dcebe2}.customer-kpi-credit strong{color:var(--success)}.customer-profile-header+.col-12 #clienteTabs{background:#fff;border:1px solid var(--line);border-radius:10px 10px 0 0;padding:0 8px}.customer-profile-header+.col-12 #clienteTabs .nav-link{border:0;border-bottom:2px solid transparent;color:var(--ink-soft)}.customer-profile-header+.col-12 #clienteTabs .nav-link.active{color:var(--navy);background:transparent;border-bottom-color:var(--coral);font-weight:700}.customer-finance-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:16px 18px;margin-bottom:12px}.customer-finance-intro h3{font-size:.95rem;color:var(--ink);margin:3px 0}.customer-finance-intro p{font-size:.72rem;color:var(--ink-soft);margin:0}.customer-profile-header+.col-12 .tab-content>.tab-pane>.card{border:1px solid var(--line);box-shadow:none}.customer-profile-header+.col-12 .tab-content .card-header{background:#fff!important}.customer-profile-header+.col-12 .tab-content .card-title{font-size:.84rem;color:var(--ink)}
@media(max-width:991.98px){.customer-profile-hero{align-items:flex-start}.customer-profile-identity{width:100%}}
@media(max-width:575.98px){.customer-profile-identity{align-items:flex-start}.customer-profile-avatar{width:46px;height:46px}.customer-kpi-grid{grid-template-columns:1fr 1fr}.customer-kpi{padding:12px}.customer-kpi strong{font-size:.88rem}.customer-finance-intro{align-items:flex-start;flex-direction:column}.customer-finance-intro .btn{width:100%}#clienteTabs{overflow-x:auto;flex-wrap:nowrap;white-space:nowrap}}

/* Fase 9 — paginação do catálogo */
.catalog-pagination-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.25rem 1.25rem;
  border-top: 1px solid var(--border, #e6e2da);
  background: #fff;
}
.catalog-pagination-info { color: #6b7086; font-size: .875rem; }
.catalog-pagination-bar .page-link { color: #1e2a54; border-color: #e6e2da; min-width: 34px; text-align: center; }
.catalog-pagination-bar .page-item.active .page-link { background: #1e2a54; border-color: #1e2a54; color: #fff; }
@media (max-width: 767.98px) {
  .catalog-pagination-bar { align-items: flex-start; flex-direction: column; }
  .catalog-pagination-bar nav { width: 100%; overflow-x: auto; }
}


/* Fase 11 — central financeira */
.finance-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:5px 0 15px}.finance-kpi{background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px 16px;position:relative;overflow:hidden}.finance-kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#d8d5cf}.finance-kpi.is-income:before{background:var(--success)}.finance-kpi.is-expense:before{background:var(--danger)}.finance-kpi.is-result:before{background:var(--navy)}.finance-kpi.is-pending:before{background:var(--warning)}.finance-kpi span{display:block;font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft)}.finance-kpi strong{display:block;font-size:1.15rem;color:var(--ink);margin:5px 0 2px}.finance-kpi small{font-size:.66rem;color:#989aa4}.finance-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:12px}.finance-panel{border:1px solid var(--line);box-shadow:none}.finance-panel-header{display:flex;align-items:center;justify-content:space-between;background:#fff!important}.finance-panel-header h3{font-size:.9rem;color:var(--ink);margin:2px 0}.finance-panel-header p{font-size:.69rem;color:var(--ink-soft);margin:3px 0 0}.finance-bar-row{margin-bottom:19px}.finance-bar-row>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:.73rem;margin-bottom:7px}.finance-bar-row span{color:var(--ink-soft)}.finance-bar-row strong{color:var(--ink)}.finance-bar{height:8px;border-radius:20px;background:#f0eee9;overflow:hidden}.finance-bar i{display:block;height:100%;border-radius:20px;background:var(--success)}.finance-bar-row.expense .finance-bar i{background:var(--danger)}.finance-forecast{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:15px}.finance-forecast>i{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#f2f0f7;color:var(--navy)}.finance-forecast>div{display:flex;flex-direction:column}.finance-forecast span,.finance-forecast small{font-size:.66rem;color:var(--ink-soft)}.finance-forecast strong{font-size:1rem;color:var(--ink);margin:2px 0}.finance-status-list{display:flex;flex-direction:column}.finance-status-list a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-top:1px solid var(--line);color:var(--ink)!important;font-size:.73rem}.finance-status-list a:hover{background:#fff9f7}.finance-status-list i{font-size:.48rem;margin-right:7px}.finance-status-list strong{font-size:.75rem}.finance-history-table td{font-size:.75rem}.finance-result{display:inline-flex;border-radius:20px;padding:4px 8px;font-size:.69rem;font-weight:700}.finance-result.positive{background:#edf8f3;color:var(--success)}.finance-result.negative{background:#fff0ef;color:var(--danger)}
@media(max-width:991.98px){.finance-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-grid{grid-template-columns:1fr}}
@media(max-width:575.98px){.finance-kpi-grid{grid-template-columns:1fr 1fr}.finance-kpi{padding:12px}.finance-kpi strong{font-size:.9rem}.finance-history-table{min-width:720px}}

/* Fase 12 — contas a pagar e receber */
.finance-account-header .page-hero{margin-bottom:12px}.finance-account-kpis{margin-bottom:0}.finance-account-card,.finance-receivable-client{border:1px solid var(--line);box-shadow:none;border-radius:12px;overflow:hidden}.finance-account-card .card-header,.finance-receivable-client .card-header{padding:14px 16px}.finance-account-card .card-title,.finance-receivable-client .card-title{font-weight:700}.finance-account-card table thead th,.finance-receivable-client table thead th{background:#faf9f7;color:var(--ink-soft);font-size:.64rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line)}.finance-account-card table td,.finance-receivable-client table td{vertical-align:middle;font-size:.73rem}.finance-receivable-client{margin-bottom:12px}.finance-receivable-client .card-tools .page-link{border-radius:7px;margin-left:5px;color:var(--navy);border-color:var(--line)}.finance-table-total td{background:#f5f8f7!important;color:var(--ink)!important;font-weight:700;border-top:1px solid #dcebe5!important}.finance-account-card input[type=checkbox]{width:17px;height:17px;accent-color:var(--navy)}
@media(max-width:767.98px){.finance-account-header .page-hero-actions{width:100%}.finance-account-header .page-hero-actions .btn{flex:1 1 auto}.finance-account-card table,.finance-receivable-client table{min-width:980px}}

/* Financeiro: ações de cabeçalho alinhadas à direita */
.finance-panel-header{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:14px;width:100%}
.finance-panel-header>.card-title,.finance-panel-header>div:first-child{min-width:0}
.finance-panel-actions{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:7px;flex:0 0 auto}
.finance-panel-actions .btn{white-space:nowrap;margin:0!important}
@media (max-width:767.98px){.finance-panel-header{align-items:flex-start!important;flex-direction:column}.finance-panel-actions{margin-left:0;width:100%;justify-content:flex-start;flex-wrap:wrap}.finance-panel-actions .btn{flex:1 1 auto}}

/* Fase 13 — entregas e campanhas */
.delivery-summary-grid,.campaign-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:4px 0 14px}.delivery-summary,.campaign-summary{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px}.delivery-summary span,.campaign-summary span{display:block;font-size:.66rem;text-transform:uppercase;letter-spacing:.055em;color:var(--ink-soft)}.delivery-summary strong,.campaign-summary strong{display:block;font-size:1.15rem;color:var(--ink);margin:4px 0}.delivery-summary small,.campaign-summary small{font-size:.66rem;color:#989aa4}.delivery-summary.is-alert{border-color:#f0c6c3;background:#fffafa}.delivery-summary.is-alert strong{color:var(--danger)}
.delivery-route-list{display:flex;flex-direction:column;gap:10px}.delivery-route-card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.delivery-route-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 16px}.delivery-route-date,.delivery-route-actions{display:flex;align-items:center;gap:10px}.delivery-date-icon{width:40px;height:40px;border-radius:10px;background:#f6f3ef;color:var(--coral);display:flex;align-items:center;justify-content:center}.delivery-route-date small{display:block;font-size:.63rem;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em}.delivery-route-date h3{font-size:.9rem;margin:2px 0;color:var(--ink)}.delivery-status{font-size:.63rem;font-weight:700;border-radius:20px;padding:4px 8px}.delivery-status.is-late{background:#fff0ef;color:var(--danger)}.delivery-status.is-today{background:#fff5e7;color:var(--warning)}.delivery-status.is-next{background:#eef5fb;color:var(--info)}.delivery-status.is-scheduled{background:#f2f1ef;color:var(--ink-soft)}.delivery-client-count{font-size:.69rem;color:var(--ink-soft)}.delivery-client-list{border-top:1px solid var(--line)}.delivery-client-row{display:grid;grid-template-columns:38px minmax(240px,1fr) minmax(180px,.55fr) 34px;gap:11px;align-items:center;padding:12px 16px;border-top:1px solid #f0eee9}.delivery-client-row:first-child{border-top:0}.delivery-avatar{width:36px;height:36px;border-radius:50%;background:#faeee9;color:var(--navy);font-weight:800;display:flex;align-items:center;justify-content:center}.delivery-client-main{display:flex;flex-direction:column}.delivery-client-main strong{font-size:.75rem;color:var(--ink)}.delivery-client-main span,.delivery-client-main small,.delivery-note{font-size:.67rem;color:var(--ink-soft)}.delivery-empty{display:flex;align-items:center;gap:12px;padding:20px;color:var(--ink-soft)}.delivery-empty>i{font-size:1.3rem}.delivery-empty div{display:flex;flex-direction:column}.delivery-empty strong{font-size:.75rem;color:var(--ink)}.delivery-empty span{font-size:.68rem}
.campaign-workspace{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.campaign-tabs{border-bottom:1px solid var(--line);padding:7px 10px}.campaign-tabs .nav-link{color:var(--ink-soft);font-size:.73rem;border:0;border-radius:8px;background:transparent}.campaign-tabs .nav-link span{margin-left:5px;font-size:.62rem;background:#f0eee9;padding:2px 6px;border-radius:10px}.campaign-tabs .nav-link.active{background:var(--navy);color:#fff}.campaign-explainer{display:flex;align-items:center;gap:12px;margin:14px;padding:13px 15px;border-radius:10px;background:#f7f5f1}.campaign-explainer>i{color:var(--coral);font-size:1.1rem}.campaign-explainer div{display:flex;flex-direction:column}.campaign-explainer strong{font-size:.75rem;color:var(--ink)}.campaign-explainer span{font-size:.67rem;color:var(--ink-soft)}.campaign-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;padding:0 14px 14px}.campaign-card{border:1px solid var(--line);border-radius:11px;padding:14px;min-width:0}.campaign-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.campaign-type{font-size:.64rem;color:var(--ink-soft)}.campaign-status{font-size:.6rem;font-weight:700;padding:3px 7px;border-radius:20px}.campaign-status.is-active{background:#edf8f3;color:var(--success)}.campaign-status.is-inactive{background:#f2f1ef;color:var(--ink-soft)}.campaign-card-value{font-family:Archivo,sans-serif;font-size:1.5rem;font-weight:800;color:var(--navy);margin:15px 0 2px}.campaign-card-value small{font-size:.58rem;color:var(--coral)}.campaign-card h3{font-size:.84rem;color:var(--ink);margin:0 0 12px}.campaign-meta{display:flex;flex-direction:column;gap:6px;min-height:42px}.campaign-meta span{font-size:.65rem;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.campaign-meta i{width:18px;color:#aaa}.campaign-card-footer{display:flex;justify-content:flex-end;border-top:1px solid var(--line);margin-top:13px;padding-top:11px}.campaign-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:45px 20px;color:var(--ink-soft)}.campaign-empty i{font-size:1.7rem;margin-bottom:10px}.campaign-empty strong{font-size:.8rem;color:var(--ink)}.campaign-empty span{font-size:.68rem;margin-top:3px}
@media(max-width:991.98px){.campaign-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.delivery-route-head{align-items:flex-start}.delivery-route-actions{flex-wrap:wrap;justify-content:flex-end}.delivery-client-row{grid-template-columns:38px 1fr 34px}.delivery-note{grid-column:2/3}}
@media(max-width:575.98px){.delivery-summary-grid,.campaign-summary-grid{grid-template-columns:1fr 1fr}.delivery-summary-grid>*:last-child,.campaign-summary-grid>*:last-child{grid-column:1/-1}.delivery-route-head{flex-direction:column}.delivery-route-actions{width:100%;justify-content:flex-start}.delivery-client-count{margin-right:auto}.delivery-client-row{grid-template-columns:34px 1fr 30px;padding:11px}.campaign-card-grid{grid-template-columns:1fr;padding:0 10px 10px}.campaign-explainer{margin:10px}}

/* Fase 13.1 — correção do menu de ações das rotas de entrega.
   O card usava overflow:hidden, recortando o dropdown mesmo com z-index alto. */
.delivery-route-card { overflow: visible; position: relative; }
.delivery-route-head { position: relative; z-index: 2; border-radius: 12px; }
.delivery-route-actions { position: relative; z-index: 3; }
.delivery-route-actions .dropdown { position: relative; }
.delivery-route-actions .dropdown-menu {
  z-index: 1060;
  min-width: 190px;
  margin-top: 6px;
  box-shadow: 0 10px 28px rgba(30, 42, 84, .14);
}
.delivery-route-card .delivery-client-list { border-radius: 0 0 12px 12px; overflow: hidden; }


/* Fase 14 — relatórios, perfis e permissões */
.report-catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:0 0 14px}.report-type-card{display:grid;grid-template-columns:42px 1fr 20px;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;color:var(--ink)!important;transition:.16s ease}.report-type-card:hover{border-color:#d9c8c0;box-shadow:0 8px 24px rgba(30,42,84,.07);transform:translateY(-1px)}.report-type-card>i:first-child{width:42px;height:42px;border-radius:10px;background:#faeee9;color:var(--coral);display:flex;align-items:center;justify-content:center}.report-type-card>i:last-child{color:#b1b2ba}.report-type-card div{display:flex;flex-direction:column;min-width:0}.report-type-card strong{font-size:.79rem}.report-type-card span{font-size:.67rem;color:var(--ink-soft);margin-top:3px}.report-filter-panel{display:flex;align-items:center;justify-content:space-between;gap:25px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;margin-bottom:15px}.report-filter-panel h2{font-size:1rem;margin:2px 0 4px}.report-filter-panel p{font-size:.68rem;color:var(--ink-soft);margin:0}.report-filter-form{display:flex;align-items:center;gap:8px;min-width:420px}.report-filter-form select{min-width:260px}.report-result .report-result-card{border:1px solid var(--line);border-radius:12px;box-shadow:none;overflow:hidden}.report-result-card .card-header{background:#fff;border-bottom:1px solid var(--line);padding:13px 15px}.report-result-card table thead th{background:#faf9f7;color:var(--ink-soft);font-size:.62rem;text-transform:uppercase;letter-spacing:.035em}.report-result-card table td{font-size:.7rem;vertical-align:middle}
.access-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 14px}.access-summary{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px}.access-summary span{display:block;font-size:.64rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft)}.access-summary strong{display:block;font-size:1.08rem;color:var(--ink);margin:4px 0}.access-summary small{font-size:.65rem;color:#999ba5}.access-card{border:1px solid var(--line);border-radius:12px;box-shadow:none;overflow:visible}.access-card>.card-header{display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);padding:13px 15px}.access-card .card-title{font-size:.84rem;font-weight:700;margin:2px 0 0}.access-card table thead th{background:#faf9f7;color:var(--ink-soft);font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line)}.access-card table td{font-size:.72rem;vertical-align:middle}.access-card .dropdown-menu{z-index:1060;box-shadow:0 10px 28px rgba(30,42,84,.12)}
@media(max-width:767.98px){.report-catalog-grid{grid-template-columns:1fr}.report-filter-panel{align-items:flex-start;flex-direction:column}.report-filter-form{min-width:0;width:100%;flex-direction:column;align-items:stretch}.report-filter-form select{min-width:0}.access-summary-grid{grid-template-columns:1fr 1fr}.access-summary-grid>*:last-child{grid-column:1/-1}.access-hero .page-hero-actions{width:100%}.access-hero .page-hero-actions .btn{flex:1 1 auto}.access-card table{min-width:650px}}

/* Central de relatórios e visão de inadimplência */
.report-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.report-type-card{min-height:88px;padding:17px}.report-type-card strong{font-size:.82rem}.report-type-card span{line-height:1.45}.report-type-card.is-critical>i:first-child{background:#fff0ee;color:#c94d48}.report-title-block{display:flex;align-items:center;gap:12px;min-width:0}.report-title-block h3{font-size:1rem;margin:1px 0 2px}.report-title-block p{color:var(--ink-soft);font-size:.68rem;margin:0}.report-title-icon{align-items:center;background:#fff0ee;border-radius:11px;color:#c94d48;display:flex;flex:0 0 42px;height:42px;justify-content:center}.report-header-actions{display:flex;gap:8px;margin-left:auto}.overdue-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border-bottom:1px solid var(--line)}.overdue-summary-grid article{align-items:center;background:#fff;display:flex;gap:11px;padding:17px}.overdue-summary-grid article>span{align-items:center;background:#f5f3f1;border-radius:10px;color:var(--ink-soft);display:flex;flex:0 0 38px;height:38px;justify-content:center}.overdue-summary-grid article.is-money>span{background:#fff0ee;color:#c94d48}.overdue-summary-grid article div{display:flex;flex-direction:column;min-width:0}.overdue-summary-grid small{color:var(--ink-soft);font-size:.61rem;text-transform:uppercase;letter-spacing:.04em}.overdue-summary-grid strong{font-size:1rem;line-height:1.25}.overdue-summary-grid p{color:var(--ink-soft);font-size:.61rem;margin:2px 0 0}.overdue-table{min-width:1020px}.overdue-table td{vertical-align:middle!important}.overdue-customer{align-items:center;color:var(--ink)!important;display:flex;gap:9px}.overdue-customer>span{align-items:center;background:#faeee9;border-radius:50%;color:var(--coral);display:flex;flex:0 0 32px;font-size:.7rem;font-weight:700;height:32px;justify-content:center}.overdue-count{background:#fff0ee;border-radius:999px;color:#b83e3a;display:inline-flex;font-size:.65rem;font-weight:700;min-width:28px;padding:4px 8px;justify-content:center}.report-empty-state{align-items:center;color:var(--ink-soft);display:flex;flex-direction:column;gap:5px;justify-content:center;padding:46px}.report-empty-state i{color:#4f9d76;font-size:1.5rem}.report-empty-state strong{color:var(--ink);font-size:.85rem}.report-empty-state span{font-size:.68rem}
@media(max-width:1199.98px){.report-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overdue-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767.98px){.report-catalog-grid,.overdue-summary-grid{grid-template-columns:1fr}.report-result-card .finance-panel-header{align-items:flex-start;flex-direction:column}.report-header-actions{margin-left:0;width:100%}.report-header-actions .btn{flex:1}.report-title-block{align-items:flex-start}}

.report-intelligence-section{margin:0 0 16px}.report-intelligence-section>header,.report-catalog-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:10px}.report-intelligence-section h2,.report-catalog-heading h2{font-size:1rem;margin:2px 0 0}.report-intelligence-section>header>small,.report-catalog-heading>small{color:var(--ink-soft);font-size:.64rem}.report-executive-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.report-executive-card{position:relative;display:flex;flex-direction:column;min-height:112px;padding:17px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink)!important;overflow:hidden}.report-executive-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#969aa6}.report-executive-card.is-positive:before{background:#29966b}.report-executive-card.is-negative:before,.report-executive-card.is-alert:before{background:#cf5b55}.report-executive-card.is-result:before{background:#4675ac}.report-executive-card>span{color:var(--ink-soft);font-size:.64rem;text-transform:uppercase;letter-spacing:.04em}.report-executive-card>strong{font-size:1.18rem;margin:8px 0}.report-executive-card>small{color:var(--ink-soft);font-size:.63rem;margin-top:auto}.report-intelligence-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:14px;margin-bottom:14px}.report-secondary-insights{grid-template-columns:1fr 1fr}.report-insight-card{border:1px solid var(--line);border-radius:14px;box-shadow:none;margin:0;overflow:hidden}.report-insight-card>header{display:flex;align-items:center;justify-content:space-between;padding:15px 17px;border-bottom:1px solid var(--line)}.report-insight-card h3{font-size:.86rem;margin:2px 0 0}.report-insight-card>header>a{font-size:.65rem;font-weight:700}.report-trend-list{display:grid;gap:9px;padding:15px 17px}.report-trend-list>div{display:grid;grid-template-columns:42px 1fr 82px;align-items:center;gap:10px;font-size:.64rem}.report-trend-list>div>strong{text-align:right}.report-trend-bars{display:flex;flex-direction:column;gap:3px}.report-trend-bars i{display:block;height:5px;border-radius:5px}.report-trend-bars .is-income,.report-insight-card footer .is-income{background:#42a47d}.report-trend-bars .is-expense,.report-insight-card footer .is-expense{background:#dc7770}.report-insight-card>footer{display:flex;gap:15px;padding:0 17px 13px;color:var(--ink-soft);font-size:.6rem}.report-insight-card>footer i{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:3px}.report-forecast-list{padding:7px 17px}.report-forecast-list article{display:grid;grid-template-columns:48px 1fr 1fr 90px;align-items:center;gap:9px;padding:11px 0;border-bottom:1px solid #f0eeeb;font-size:.66rem}.report-forecast-list article:last-child{border:0}.report-forecast-list article>span{font-weight:700}.report-forecast-list article div{display:flex;flex-direction:column}.report-forecast-list small,.report-stock-summary small,.report-profit-list small{color:var(--ink-soft);font-size:.57rem}.report-forecast-list b{text-align:right}.report-segment-grid,.report-stock-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.report-segment-grid>div,.report-stock-summary>div{display:flex;flex-direction:column;align-items:center;background:#fff;padding:15px 8px}.report-segment-grid strong{font-size:1.05rem}.report-segment-grid span{color:var(--ink-soft);font-size:.61rem}.report-segment-grid .is-alert strong{color:#c94d48}.report-recommendation{display:flex;align-items:center;gap:10px;padding:13px 16px;background:#fffbef}.report-recommendation>i{color:#c7952d}.report-recommendation p{font-size:.63rem;margin:0}.report-recommendation strong{display:block}.report-stock-summary{grid-template-columns:repeat(2,1fr);height:calc(100% - 65px)}.report-stock-summary>div{align-items:flex-start;justify-content:center;padding:15px}.report-stock-summary strong{font-size:.86rem}.report-profit-card{margin-bottom:18px}.report-profit-list article{display:grid;grid-template-columns:28px 1.3fr 1fr 1fr 55px;align-items:center;gap:10px;padding:11px 17px;border-bottom:1px solid #f0eeeb;font-size:.67rem}.report-profit-list article:last-child{border:0}.report-profit-list article>span{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#f5f3f1;font-weight:700}.report-profit-list article div{display:flex;flex-direction:column}.report-profit-list article>b{text-align:right;color:#29966b}.report-catalog-heading{margin-top:20px}.report-type-card{position:relative}.report-favorite-button{position:absolute;right:36px;top:9px;border:0;background:transparent;color:#c59a40;padding:5px;z-index:2}
@media(max-width:991.98px){.report-executive-grid{grid-template-columns:repeat(2,1fr)}.report-intelligence-layout,.report-secondary-insights{grid-template-columns:1fr}}
@media(max-width:575.98px){.report-executive-grid{grid-template-columns:1fr}.report-intelligence-section>header,.report-catalog-heading{align-items:flex-start;flex-direction:column;gap:4px}.report-forecast-list article{grid-template-columns:42px 1fr 1fr}.report-forecast-list article>b{grid-column:2/-1}.report-profit-list article{grid-template-columns:25px 1fr 55px}.report-profit-list article div{display:none}}
.report-alert-center{margin:18px 0}.report-alert-center h2{font-size:1rem;margin:2px 0 10px}.report-alert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.report-alert-grid>a{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:10px;padding:14px;border:1px solid #eadfd9;border-radius:13px;background:#fffaf8;color:var(--ink)!important}.report-alert-grid>a>i{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:#ffe9e4;color:#c7544e}.report-alert-grid strong{display:block;font-size:.73rem}.report-alert-grid span{display:block;color:var(--ink-soft);font-size:.61rem;line-height:1.4;margin-top:2px}.report-alert-grid b{color:var(--coral);font-size:.61rem;white-space:nowrap}.report-abc-card{margin-bottom:14px}.report-abc-list{display:grid;grid-template-columns:repeat(2,1fr)}.report-abc-list>a{display:grid;grid-template-columns:28px 1fr auto auto;align-items:center;gap:9px;padding:10px 16px;border-bottom:1px solid #f0eeeb;color:var(--ink)!important;font-size:.66rem}.report-abc-list>a:nth-child(odd){border-right:1px solid #f0eeeb}.report-abc-list>a>span{display:flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:7px;font-weight:800}.report-abc-list .is-class-a{background:#e5f5ed;color:#21815d}.report-abc-list .is-class-b{background:#fff3d9;color:#9b6b0b}.report-abc-list .is-class-c{background:#f2f0ee;color:#777}.report-abc-list small{color:var(--ink-soft)}.report-abc-list b{text-align:right}@media(max-width:991.98px){.report-alert-grid{grid-template-columns:1fr}}@media(max-width:767.98px){.report-abc-list{grid-template-columns:1fr}.report-abc-list>a:nth-child(odd){border-right:0}}

/* Central de prioridades dos relatórios */
.report-alert-center{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:none}.report-alert-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border-bottom:1px solid var(--line)}.report-alert-center .report-alert-header h2{margin:3px 0 4px;font-size:1rem}.report-alert-header p{margin:0;color:var(--ink-soft);font-size:.66rem}.report-alert-count{display:flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #e8e4df;border-radius:10px;background:#faf9f7;color:var(--ink-soft);font-size:.62rem;white-space:nowrap}.report-alert-count strong{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:7px;background:var(--ink);color:#fff;font-size:.7rem}.report-alert-grid{grid-template-columns:1fr;gap:0;padding:0}.report-alert-grid>a{position:relative;grid-template-columns:28px 40px minmax(0,1fr) auto;gap:12px;padding:15px 20px;border:0;border-bottom:1px solid #f0eeeb;border-radius:0;background:#fff;transition:background .18s ease,transform .18s ease}.report-alert-grid>a:last-child{border-bottom:0}.report-alert-grid>a:hover{background:#fcfbfa;transform:translateX(2px)}.report-alert-grid .report-alert-rank{margin:0;color:#aaa39b;font-size:.58rem;font-weight:800;letter-spacing:.08em}.report-alert-grid>a>i{width:40px;height:40px;border-radius:11px}.report-alert-grid>a>div>small{display:block;margin-bottom:3px;color:#9b7770;font-size:.54rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.report-alert-grid strong{font-size:.76rem}.report-alert-grid span{font-size:.62rem}.report-alert-grid b{display:flex;align-items:center;gap:7px;padding:7px 9px;border-radius:8px;background:#f7f5f3;font-size:.6rem}.report-alert-grid b i{font-size:.55rem}.report-alert-grid>a.is-warning>i{background:#fff3dc;color:#a56b16}.report-alert-grid>a.is-warning>div>small,.report-alert-grid>a.is-warning>b{color:#956111}.report-alert-grid>a.is-opportunity>i{background:#e8f3fb;color:#3e7398}.report-alert-grid>a.is-opportunity>div>small,.report-alert-grid>a.is-opportunity>b{color:#3e7398}@media(max-width:575.98px){.report-alert-header{align-items:flex-start;flex-direction:column}.report-alert-grid>a{grid-template-columns:25px 36px 1fr;padding:14px}.report-alert-grid>a>i{width:36px;height:36px}.report-alert-grid b{grid-column:3;justify-self:start}}
.report-hero{position:relative;overflow:hidden;min-height:168px;display:flex;align-items:center;padding:27px 30px;margin-bottom:16px;background:linear-gradient(135deg,#fff 0%,#fbf7f3 62%,#f7ece7 100%);border:1px solid #eadfd8;border-radius:16px}.report-hero:after{content:"";position:absolute;right:-45px;top:-85px;width:230px;height:230px;border-radius:50%;border:42px solid rgba(202,111,91,.08)}.report-hero>div{position:relative;z-index:1}.report-hero h1{margin:3px 0 7px;font-size:1.55rem}.report-hero p{max-width:680px;margin:0;color:var(--ink-soft);font-size:.74rem}.report-hero-context{display:inline-flex;align-items:center;gap:8px;margin-top:16px;padding:8px 11px;border:1px solid #eadfd8;border-radius:9px;background:rgba(255,255,255,.72);color:var(--ink-soft);font-size:.64rem}.report-hero-context i{color:var(--coral)}.report-hero-context strong{color:var(--ink);margin-right:5px}.report-intelligence-section{margin-top:0}.report-trend-list>div{grid-template-columns:64px minmax(120px,1fr) 82px}.report-trend-list>div>span{white-space:nowrap;font-variant-numeric:tabular-nums}.report-title-icon-expense{background:#fff1ef;color:#c6534d}.accounts-payable-summary article.is-paid>span{background:#e8f5ee;color:#26805d}.accounts-payable-summary article.is-money>span{background:#fff3df;color:#a66a13}
@media(max-width:575.98px){.report-hero{min-height:0;padding:21px}.report-hero-context{align-items:flex-start}.report-trend-list>div{grid-template-columns:58px minmax(80px,1fr) 72px}}

/* Fase 15 — acabamento transversal e telas legadas */
.modern-panel{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:none;overflow:visible}.modern-panel-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px;border-bottom:1px solid var(--line)}.modern-panel-header h2{font-size:.95rem;color:var(--ink);margin:2px 0 3px}.modern-panel-header p{font-size:.68rem;color:var(--ink-soft);margin:0}.credit-search-wrap{position:relative;min-width:300px}.credit-search-wrap>i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#a4a5ad;font-size:.75rem}.credit-search-wrap .form-control{padding-left:34px}.modern-table thead th{background:#faf9f7;color:var(--ink-soft);font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;border-top:0;border-bottom:1px solid var(--line)}.modern-table td{font-size:.72rem;vertical-align:middle;border-color:#f0eee9}.finance-status-value{display:inline-flex;align-items:center;font-weight:700}.finance-status-value.is-positive{color:var(--success)}.modal-header-danger{background:#fff6f5;border-bottom:1px solid #f1d1ce;color:var(--danger)}
.password-reset-shell{max-width:520px;margin:34px auto}.password-reset-card{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-sm);overflow:hidden}.password-reset-head{padding:22px 24px 14px;text-align:center;border-bottom:1px solid var(--line)}.password-reset-head .password-icon{width:44px;height:44px;border-radius:12px;background:#faeee9;color:var(--coral);display:flex;align-items:center;justify-content:center;margin:0 auto 10px}.password-reset-head h1{font-size:1.05rem;color:var(--ink);margin:0}.password-reset-head p{font-size:.7rem;color:var(--ink-soft);margin:5px 0 0}.password-reset-card .card-body{padding:22px 24px}.required-note{font-size:.68rem;color:var(--warning);background:#fff8ed;border-radius:8px;padding:9px 10px;margin-bottom:16px}
@media(max-width:767.98px){.modern-panel-header{align-items:flex-start;flex-direction:column}.credit-search-wrap{min-width:0;width:100%}.modern-table{min-width:620px}.password-reset-shell{margin:15px 0}}
.finance-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:15px}.finance-mini-kpi{border:1px solid var(--line);border-radius:10px;padding:12px 13px;background:#fff}.finance-mini-kpi span{display:block;font-size:.62rem;text-transform:uppercase;letter-spacing:.045em;color:var(--ink-soft)}.finance-mini-kpi strong{display:block;font-size:.92rem;color:var(--ink);margin:4px 0}.finance-mini-kpi small{font-size:.61rem;color:#999ba5}.finance-mini-kpi.is-total{background:#f7f5f1}.finance-total-row td{background:#f2f8f5!important;color:var(--success);font-weight:700;border-top:1px solid #d9ece4!important}@media(max-width:767.98px){.finance-mini-grid{grid-template-columns:1fr}.report-result-card table{min-width:620px}}

/* Fase 15.1 — correção do alinhamento da topbar e preservação da identidade da marca */
.main-header.navbar.tati-topnav {
  height: 64px;
  min-height: 64px;
  display: flex;
  align-items: center;
}
.tati-topnav > .container-fluid {
  height: 100%;
  display: flex;
  align-items: center;
}
.navbar-brand.tati-brand {
  height: 100%;
  min-width: 178px;
  margin-right: 20px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.tati-brand .tati-logo-img {
  display: block;
  width: auto;
  height: 34px;
  max-width: 190px;
  object-fit: contain;
  filter: none !important;
}
.tati-topnav .navbar-collapse,
.tati-topnav .tati-main-menu,
.tati-topnav .tati-user-nav {
  height: 100%;
  align-items: center;
}
.tati-topnav .navbar-nav > .nav-item,
.tati-user-nav > .nav-item {
  height: 100%;
  display: flex;
  align-items: center;
}
.tati-topnav .navbar-nav > .nav-item > .nav-link,
.tati-user-nav .nav-link {
  height: 100%;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 0 14px;
  line-height: 1.2;
}
.tati-user-nav .nav-link .tati-avatar { flex: 0 0 auto; }

@media (max-width: 991.98px) {
  .main-header.navbar.tati-topnav { height: auto; min-height: 64px; }
  .tati-topnav > .container-fluid { min-height: 64px; height: auto; }
  .navbar-brand.tati-brand { height: 64px; }
  .tati-brand .tati-logo-img { height: 30px; max-width: 170px; }
  .tati-topnav .navbar-collapse { height: auto; align-items: stretch; }
  .tati-topnav .tati-main-menu { height: auto; align-items: stretch; }
  .tati-topnav .navbar-nav > .nav-item { height: auto; display: block; }
  .tati-topnav .navbar-nav > .nav-item > .nav-link { height: auto; padding: 11px 12px; }
  .tati-user-nav { height: 64px; }
}

/* Fase 15.2 — contraste da marca e centralização óptica da logo */
.main-header.navbar.tati-topnav {
  background: #34323f;
  box-shadow: 0 2px 12px rgba(35, 34, 43, .16);
}
.navbar-brand.tati-brand {
  align-self: stretch;
  justify-content: center;
  flex-direction: row;
  line-height: 0;
}
.tati-brand .tati-logo-img {
  margin: 0;
  position: static;
  align-self: center;
  vertical-align: middle;
}

/* Fase 15.3 — topbar clara para preservar contraste da marca */
.main-header.navbar.tati-topnav {
  background: #faf9f6;
  border-bottom: 1px solid #e6e2da;
  box-shadow: 0 2px 10px rgba(30, 42, 84, .07);
}
.tati-topnav .navbar-nav > .nav-item > .nav-link,
.tati-user-nav .nav-link {
  color: #1e2a54 !important;
}
.tati-topnav .navbar-nav > .nav-item > .nav-link:hover,
.tati-user-nav .nav-link:hover {
  color: #f0665c !important;
  background: #f3f0ea;
}
.tati-topnav .navbar-nav > .nav-item > .nav-link.active,
.tati-topnav .navbar-nav > .nav-item.show > .nav-link {
  color: #f0665c !important;
  background: #fff;
  box-shadow: inset 0 -3px 0 #f0665c;
}
.tati-topnav .navbar-toggler {
  color: #1e2a54;
  border-color: #d9d5cc;
}
.tati-topnav .navbar-toggler-icon { filter: none; }
.navbar-brand.tati-brand {
  height: 64px;
  align-self: center;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.tati-brand .tati-logo-img {
  height: 36px;
  width: auto;
  max-height: 44px;
  max-width: 190px;
  object-fit: contain;
  object-position: center;
  align-self: center;
  margin: auto 0;
  filter: none !important;
}
.tati-topnav .dropdown-menu {
  background: #fff;
  border: 1px solid #e6e2da;
  box-shadow: 0 12px 30px rgba(30, 42, 84, .12);
}
.tati-topnav .dropdown-item { color: #23283a; }
.tati-topnav .dropdown-item:hover,
.tati-topnav .dropdown-item:focus { background: #f7f5f1; color: #1e2a54; }
@media (max-width: 991.98px) {
  .navbar-brand.tati-brand { height: 64px; }
  .tati-brand .tati-logo-img { height: 34px; }
}


/* Fase 15.4 — contraste dos ícones da topbar */
.tati-topnav .nav-link > i,
.tati-topnav .dropdown-item .nav-icon,
.tati-user-nav .nav-link > i {
  color: #17203f !important;
  opacity: 1 !important;
}
.tati-topnav .navbar-nav > .nav-item > .nav-link:hover > i,
.tati-user-nav .nav-link:hover > i,
.tati-topnav .navbar-nav > .nav-item > .nav-link.active > i,
.tati-topnav .navbar-nav > .nav-item.show > .nav-link > i {
  color: #d94f47 !important;
}
.tati-topnav .dropdown-item:hover .nav-icon,
.tati-topnav .dropdown-item:focus .nav-icon,
.tati-topnav .dropdown-item.active .nav-icon {
  color: #1e2a54 !important;
}
.tati-topnav .nav-link > i { margin-right: 6px; }
.tati-topnav .dropdown-item .nav-icon { width: 20px; margin-right: 8px; text-align: center; }

/* Fase 16 — acabamento transversal: dashboard e detalhe de fatura */
.dashboard-kpis .finance-kpi strong{font-size:1.22rem}
.invoice-hero{margin-bottom:14px}
.invoice-panel{border:1px solid var(--line);border-radius:12px;box-shadow:none;overflow:visible}
.invoice-panel>.card-header{background:#fff;border-bottom:1px solid var(--line);padding:13px 15px}
.invoice-panel>.card-header .card-title{font-size:.86rem;font-weight:700;color:var(--ink)}
.invoice-panel table thead th{background:#faf9f7;color:var(--ink-soft);font-size:.63rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line)}
.invoice-panel table td{font-size:.72rem;vertical-align:middle}
.status-chip{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:.65rem;font-weight:700;line-height:1}
.status-chip.is-paid{background:#edf8f3;color:var(--success)}
.status-chip.is-pending{background:#fff1ef;color:var(--danger)}
.modal-header-danger{background:#fff4f2;border-bottom:1px solid #f2d2cd;color:var(--danger)}
.modal-header-success{background:#eef8f4;border-bottom:1px solid #d5ebe2;color:var(--success)}
@media(max-width:767.98px){.invoice-hero .page-actions{width:100%}.invoice-hero .page-actions .btn{flex:1 1 46%}.invoice-panel table{min-width:720px}}

/* Fase 17 — refinamento do PDV e modais de venda */
.modal-header-modern,
.checkout-section-header {
  background: #f7f5f1;
  color: #1e2a54;
  border-bottom: 1px solid #e6e2da;
}
.modal-header-modern .modal-title,
.checkout-section-header .card-title {
  font-family: 'Archivo', sans-serif;
  font-weight: 700;
  color: #1e2a54;
}
.checkout-section-header { padding: 1rem 1.15rem; }
.checkout-total-row td {
  background: #fff3ef !important;
  color: #1e2a54;
  font-weight: 800;
  border-top: 2px solid #f0665c !important;
  border-bottom: 2px solid #f0665c !important;
}
#fecharCarrinho .modal-content { border: 0; border-radius: 18px; overflow: hidden; }
#fecharCarrinho .card { border: 1px solid #e6e2da; box-shadow: none; border-radius: 14px; overflow: hidden; }
#fecharCarrinho .modal-footer { border-top: 1px solid #e6e2da; padding: 1rem 1.25rem; }
#buscarProduto .modal-content,
#editarCarrinho .modal-content,
#aplicarDesconto .modal-content,
#desfazerDesconto .modal-content,
#deletarNoCarrinho .modal-content,
#deletarItemNoCarrinho .modal-content { border: 0; border-radius: 16px; overflow: hidden; }


/* Fase 17.2 — correcoes definitivas do workspace e checkout */
.sale-workspace-hero { overflow: visible; }
.sale-workspace-hero .page-actions { position: relative; min-width: 0; }
.sale-workspace-hero .btn-group { position: relative; }
.sale-workspace-hero .btn-group .dropdown-menu { right: 0; left: auto !important; z-index: 1080; min-width: 220px; }
.sale-items-panel { overflow: visible !important; }
.sale-items-panel > .card-body { overflow: visible !important; }
.sale-items-header { display:flex !important; flex-direction:row !important; align-items:center !important; justify-content:space-between !important; gap:16px; width:100%; min-height:72px; }
.sale-items-heading { display:flex; flex-direction:column; min-width:0; flex:1 1 auto; }
.sale-items-heading .card-title { float:none !important; margin:0 !important; line-height:1.25; }
.sale-items-actions { margin-left:auto !important; flex:0 0 auto; display:flex !important; align-items:center !important; justify-content:flex-end !important; align-self:center !important; }
.sale-items-actions .btn { white-space:nowrap; margin:0 !important; position:static !important; }
.sale-item-card { position:relative; overflow:visible; }
.sale-item-card .dropdown { position:relative; }
.sale-item-card .dropdown-menu { z-index:1080; right:0; left:auto !important; }

#fecharCarrinho .modal-dialog { width:auto; max-width:min(1320px, calc(100vw - 32px)); margin:16px auto; }
#fecharCarrinho .modal-content { display:flex; flex-direction:column; max-height:calc(100vh - 32px); overflow:hidden; }
#fecharCarrinho .modal-header { flex:0 0 auto; }
#fecharCarrinho .modal-body { flex:1 1 auto; min-height:0; overflow-y:auto; overflow-x:hidden; padding:18px !important; }
#fecharCarrinho .modal-footer { flex:0 0 auto; margin:0; background:#fff !important; justify-content:flex-end; }
#fecharCarrinho .checkout-grid { display:grid; grid-template-columns:minmax(0, 1.35fr) minmax(320px, .65fr); gap:16px; align-items:start; }
#fecharCarrinho .checkout-grid > * { min-width:0; }
#fecharCarrinho .checkout-card { margin:0; }
#fecharCarrinho .checkout-table-wrap { width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
#fecharCarrinho .checkout-table-wrap table { margin:0; min-width:700px; }
#fecharCarrinho .checkout-payment .row { margin-left:-7.5px; margin-right:-7.5px; }
#fecharCarrinho .checkout-payment [class*="col-"] { padding-left:7.5px; padding-right:7.5px; }
#fecharCarrinho input, #fecharCarrinho select { max-width:100%; }
@media (max-width: 991.98px) {
  #fecharCarrinho .checkout-grid { grid-template-columns:1fr; }
  #fecharCarrinho .modal-dialog { max-width:calc(100vw - 20px); margin:10px auto; }
  #fecharCarrinho .modal-content { max-height:calc(100vh - 20px); }
}
@media (max-width:767.98px) {
  .sale-items-header { align-items:stretch !important; flex-direction:column !important; }
  .sale-items-actions { margin-left:0 !important; width:100%; justify-content:stretch !important; }
  .sale-items-actions .btn { width:100%; }
  #fecharCarrinho .modal-body { padding:12px !important; }
  #fecharCarrinho .modal-footer .btn { width:100%; }
}

/* Checkout V3 — pagamento primeiro, resumo financeiro destacado e produtos recolhidos */
#fecharCarrinho .modal-dialog { max-width:min(1040px, calc(100vw - 32px)); }
#fecharCarrinho .checkout-payment { margin:0; }
#fecharCarrinho .checkout-payment-summary {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:10px;
  padding:14px;
  border:1px solid var(--border, #E6E2DA);
  border-radius:14px;
  background:#F9F8F5;
}
#fecharCarrinho .checkout-summary-item {
  min-width:0;
  padding:12px 14px;
  border-radius:11px;
  background:#fff;
  border:1px solid rgba(30,42,84,.08);
  display:flex;
  flex-direction:column;
  gap:4px;
}
#fecharCarrinho .checkout-summary-item span { color:#6B7086; font-size:.78rem; font-weight:600; }
#fecharCarrinho .checkout-summary-item strong { color:#23283A; font-size:1rem; line-height:1.2; }
#fecharCarrinho .checkout-summary-total { background:#1E2A54; border-color:#1E2A54; }
#fecharCarrinho .checkout-summary-total span { color:rgba(255,255,255,.72); }
#fecharCarrinho .checkout-summary-total strong { color:#fff; font-size:1.2rem; }
#fecharCarrinho .checkout-products-collapsed { overflow:hidden; border:1px solid var(--border, #E6E2DA); }
#fecharCarrinho .checkout-products-toggle {
  width:100%; border:0; background:#fff; padding:15px 18px; color:#23283A;
  display:flex; align-items:center; justify-content:space-between; gap:16px; text-align:left; font-weight:700;
}
#fecharCarrinho .checkout-products-toggle:hover { background:#FAF9F6; }
#fecharCarrinho .checkout-products-toggle small { margin-left:8px; color:#6B7086; font-weight:500; }
#fecharCarrinho .checkout-products-toggle[aria-expanded="true"] .checkout-toggle-icon { transform:rotate(180deg); }
#fecharCarrinho .checkout-toggle-icon { transition:transform .2s ease; color:#6B7086; }
#fecharCarrinho .checkout-products-collapsed .checkout-table-wrap { border-top:1px solid var(--border, #E6E2DA); }
@media (max-width: 767.98px) {
  #fecharCarrinho .checkout-payment-summary { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  #fecharCarrinho .checkout-summary-total { grid-column:span 2; }
}
@media (max-width: 479.98px) {
  #fecharCarrinho .checkout-payment-summary { grid-template-columns:1fr; }
  #fecharCarrinho .checkout-summary-total { grid-column:auto; }
}

/* Fase 17 V3.1 — dropdown dos itens da venda acima dos cards irmãos */
.sale-item-list { position:relative; overflow:visible !important; }
.sale-item-card { position:relative; z-index:1; overflow:visible !important; }
.sale-item-card:hover { z-index:2; transform:none; }
.sale-item-card:focus-within { z-index:1200; }
.sale-item-card .dropdown { position:relative; z-index:3; }
.sale-item-card .dropdown.show { z-index:1210; }
.sale-item-card .dropdown-menu { z-index:1220 !important; }

/* Fase 18 — refinamento do fluxo de venda e seletor de produtos */
#abrirProdutos .modal-dialog { max-width:min(1180px, calc(100vw - 32px)); margin:16px auto; }
#abrirProdutos .modal-content { max-height:calc(100vh - 32px); overflow:hidden; display:flex; flex-direction:column; }
#abrirProdutos .product-picker-body { padding:0 !important; overflow-y:auto; overflow-x:hidden; min-height:0; }
.product-picker-toolbar { position:sticky; top:0; z-index:20; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:16px 18px; background:#fff; border-bottom:1px solid #E6E2DA; }
.product-picker-toolbar h5 { color:#23283A; font-weight:700; }
.product-picker-search { position:relative; padding:14px 18px; background:#FAF9F6; border-bottom:1px solid #E6E2DA; }
.product-picker-search > i { position:absolute; left:32px; top:50%; transform:translateY(-50%); color:#6B7086; z-index:2; }
.product-picker-search .form-control { padding-left:40px; background:#fff; }
.product-picker-table { width:100%; overflow-x:auto; }
.product-picker-table table { margin:0; min-width:980px; }
.product-picker-table thead th { position:sticky; top:0; z-index:5; background:#1E2A54 !important; color:#fff; border:0; white-space:nowrap; }
.product-picker-table tbody td { vertical-align:middle; }
.product-picker-table tbody tr:hover { background:#FAF9F6; }
.product-picker-table input[type="number"] { min-width:84px; }
.product-picker-table input[type="date"] { min-width:145px; }
#buscarCarrinho .modal-body, #novoCarrinho .modal-body { padding:18px !important; }
#buscarCarrinho .modal-footer, #novoCarrinho .modal-footer { background:#fff; border-top:1px solid #E6E2DA; }
@media (max-width:767.98px) {
  #abrirProdutos .modal-dialog { max-width:calc(100vw - 16px); margin:8px auto; }
  #abrirProdutos .modal-content { max-height:calc(100vh - 16px); }
  .product-picker-toolbar { align-items:stretch; flex-direction:column; }
  .product-picker-toolbar .btn { width:100%; }
}

/* Fase 19 - seletor visual de produtos no PDV */
.product-picker-status{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 18px;border-bottom:1px solid #E6E2DA;background:#fff;font-size:.86rem;color:#34384A}
.product-picker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px 18px 20px;background:#F7F5F1}
.product-picker-card{position:relative;background:#fff;border:1px solid #E6E2DA;border-radius:12px;padding:14px;box-shadow:0 2px 8px rgba(30,42,84,.04);transition:border-color .16s ease,box-shadow .16s ease}
.product-picker-card:hover{border-color:#C9C4BB;box-shadow:0 5px 16px rgba(30,42,84,.08)}
.product-picker-card.is-selected{border-color:#F0665C;box-shadow:0 0 0 2px rgba(240,102,92,.12)}
.product-picker-card-head{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:start}
.product-picker-title{min-width:0;display:flex;flex-direction:column;gap:2px}.product-picker-title strong{font-family:Archivo,sans-serif;font-size:.92rem;color:#23283A;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-picker-title small{font-size:.72rem;color:#6B7086}
.product-picker-price{font-weight:800;color:#1E2A54;white-space:nowrap}
.product-picker-check{margin:1px 0 0;cursor:pointer}.product-picker-check input{position:absolute;opacity:0;pointer-events:none}.product-picker-check span{display:block;width:22px;height:22px;border:2px solid #C9C4BB;border-radius:6px;background:#fff;position:relative}.product-picker-check input:checked+span{background:#F0665C;border-color:#F0665C}.product-picker-check input:checked+span:after{content:'✓';position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:.78rem;font-weight:800}
.product-picker-tags{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.product-picker-tags span{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:#F7F5F1;color:#4E5367;font-size:.72rem}.product-picker-tags span.is-low{background:#FFF2E5;color:#A65D0A}.product-picker-tags i{font-size:.68rem}
.product-picker-meta{display:flex;justify-content:space-between;gap:12px;padding-top:9px;border-top:1px solid #F0EDE8;color:#777B8C;font-size:.72rem}.product-picker-meta span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.product-picker-fields{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid #F0EDE8}.product-picker-fields label{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:#6B7086;margin-bottom:4px}.product-picker-fields .form-control:disabled{background:#F5F3EF;color:#A2A4AD;cursor:not-allowed}
.product-picker-empty{grid-column:1/-1;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#6B7086;gap:7px}.product-picker-empty[hidden]{display:none!important}.product-picker-empty i{font-size:1.7rem;color:#B7B3AB}.product-picker-empty strong{color:#34384A}
@media(max-width:991.98px){.product-picker-grid{grid-template-columns:1fr}}
@media(max-width:575.98px){.product-picker-status{align-items:flex-start;flex-direction:column;gap:3px}.product-picker-grid{padding:12px}.product-picker-card-head{grid-template-columns:28px minmax(0,1fr)}.product-picker-price{grid-column:2}.product-picker-fields{grid-template-columns:1fr}.product-picker-meta{flex-direction:column;gap:3px}}

/* ===== FASE 20 · LOGIN EDITORIAL / MODA ===== */
body.login-page.fashion-login-page {
  min-height: 100vh;
  background: #f7f5f1;
  color: #23283a;
  font-family: 'Inter', sans-serif;
  display: block;
  padding: 0;
}
.fashion-login-shell { min-height:100vh; display:grid; grid-template-columns:minmax(360px, .92fr) minmax(520px, 1.35fr); }
.fashion-login-panel { display:flex; align-items:center; justify-content:center; padding:56px clamp(32px,6vw,88px); background:#fff; position:relative; z-index:2; }
.fashion-login-inner { width:100%; max-width:430px; }
.fashion-login-brand { display:flex; align-items:center; margin-bottom:54px; }
.fashion-login-brand img { display:block; width:auto; max-width:235px; max-height:76px; object-fit:contain; }
.fashion-login-eyebrow { color:#f0665c; font-family:'Archivo',sans-serif; font-size:.74rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; margin-bottom:10px; }
.fashion-login-title { font-family:'Archivo',sans-serif; font-size:clamp(2rem,3vw,2.7rem); line-height:1.06; font-weight:800; color:#1e2a54; letter-spacing:-.04em; margin:0 0 12px; }
.fashion-login-copy { color:#6b7086; font-size:.98rem; line-height:1.65; margin:0 0 34px; max-width:390px; }
.fashion-login-message { margin-bottom:20px; }
.fashion-field { margin-bottom:18px; }
.fashion-field label { display:block; font-size:.78rem; font-weight:700; color:#34394c; margin:0 0 8px; }
.fashion-input-wrap { position:relative; }
.fashion-input-wrap .form-control { height:52px; border:1px solid #dedbe0; border-radius:12px; padding:0 46px 0 15px; background:#fbfaf8; box-shadow:none; color:#23283a; transition:.2s ease; }
.fashion-input-wrap .form-control:focus { background:#fff; border-color:#1e2a54; box-shadow:0 0 0 3px rgba(30,42,84,.08); }
.fashion-input-icon { position:absolute; right:16px; top:50%; transform:translateY(-50%); color:#70758b; pointer-events:none; }
.fashion-login-submit { height:52px; border:0; border-radius:12px; background:#f0665c; color:#fff; font-family:'Archivo',sans-serif; font-weight:800; box-shadow:0 10px 24px rgba(240,102,92,.22); transition:.2s ease; }
.fashion-login-submit:hover,.fashion-login-submit:focus { background:#d9483f; color:#fff; transform:translateY(-1px); box-shadow:0 13px 28px rgba(217,72,63,.25); }
.fashion-login-secondary { height:50px; border-radius:12px; border:1px solid #dedbe0; background:#fff; color:#1e2a54; font-weight:700; }
.fashion-login-secondary:hover { background:#f7f5f1; color:#1e2a54; }
.fashion-login-links { display:flex; justify-content:flex-end; margin-top:18px; }
.fashion-login-links a { color:#1e2a54; font-size:.88rem; font-weight:700; text-decoration:none; }
.fashion-login-links a:hover { color:#f0665c; }
.fashion-login-aside { position:relative; overflow:hidden; background:linear-gradient(145deg,#f0ebe3 0%,#f7f2eb 46%,#e8e5e5 100%); display:flex; align-items:flex-end; padding:clamp(44px,6vw,84px); }
.fashion-login-aside::before { content:""; position:absolute; width:56%; aspect-ratio:1/1.3; right:8%; top:-10%; border-radius:48% 48% 18% 18%; background:linear-gradient(150deg,#1e2a54 0 48%,#f0665c 48% 65%,#d8b8a3 65% 100%); transform:rotate(8deg); opacity:.96; box-shadow:0 40px 80px rgba(30,42,84,.14); }
.fashion-login-aside::after { content:""; position:absolute; width:38%; aspect-ratio:1/1.45; left:5%; bottom:-17%; border-radius:50% 50% 12% 12%; background:linear-gradient(165deg,#d6a589,#e7c8b6); transform:rotate(-13deg); opacity:.85; }
.fashion-editorial { position:relative; z-index:2; max-width:610px; padding:30px 34px; border:1px solid rgba(255,255,255,.72); border-radius:22px; background:rgba(255,255,255,.72); backdrop-filter:blur(16px); box-shadow:0 24px 60px rgba(30,42,84,.10); }
.fashion-editorial-kicker { color:#f0665c; font-size:.72rem; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.fashion-editorial h2 { font-family:'Fraunces',serif; color:#1e2a54; font-size:clamp(2rem,3.5vw,3.4rem); font-weight:600; line-height:1.05; margin:10px 0 14px; }
.fashion-editorial p { color:#51566a; font-size:.95rem; line-height:1.65; margin:0; max-width:510px; }
.fashion-login-footer { margin-top:38px; color:#9a9dad; font-size:.72rem; }
@media (max-width: 991.98px) { .fashion-login-shell{grid-template-columns:1fr;} .fashion-login-aside{display:none;} .fashion-login-panel{min-height:100vh;padding:40px 24px;} .fashion-login-brand{margin-bottom:42px;} }
@media (max-width: 575.98px) { .fashion-login-panel{align-items:flex-start;padding-top:34px;} .fashion-login-title{font-size:2rem;} .fashion-login-brand img{max-width:200px;max-height:66px;} }

/* ===== FASE 20.3 · LOGIN EDITORIAL RESTAURADO SOBRE FLUXO FUNCIONAL ===== */
.fashion-login-page .fashion-login-form .input-group { margin-bottom: 16px !important; }
.fashion-login-page .fashion-login-form .form-control {
  height: 52px; border: 1px solid #dedbe0; border-radius: 12px 0 0 12px;
  background: #fbfaf8; color: #23283a; padding-left: 15px; box-shadow: none;
}
.fashion-login-page .fashion-login-form .form-control:focus {
  background: #fff; border-color: #1e2a54; box-shadow: 0 0 0 3px rgba(30,42,84,.08); z-index: 3;
}
.fashion-login-page .fashion-login-form .input-group-append .input-group-text {
  min-width: 52px; justify-content: center; border: 1px solid #dedbe0; border-left: 0;
  border-radius: 0 12px 12px 0; background: #fbfaf8; color: #17203f;
}
.fashion-login-page .fashion-login-form .btn-default[type="submit"],
.fashion-login-page .fashion-login-form .btn-primary[type="submit"] {
  min-height: 52px; border: 0; border-radius: 12px; background: #f0665c; color: #fff;
  font-family: 'Archivo', sans-serif; font-weight: 800; box-shadow: 0 10px 24px rgba(240,102,92,.22);
}
.fashion-login-page .fashion-login-form .btn-default[type="submit"]:hover,
.fashion-login-page .fashion-login-form .btn-primary[type="submit"]:hover { background:#d9483f; color:#fff; }
.fashion-login-page .fashion-login-form .btn-default:not([type="submit"]) {
  min-height: 48px; border-radius: 12px; border: 1px solid #dedbe0; background: #fff; color:#1e2a54; font-weight:700;
}
.fashion-login-page .fashion-login-form p.mb-1 { margin: 18px 0 0 !important; text-align: right; }
.fashion-login-page .fashion-login-form a { color:#1e2a54; font-weight:700; text-decoration:none; }
.fashion-login-page .fashion-login-form a:hover { color:#f0665c; }
.fashion-login-page .fashion-login-message:empty { display:none; }


/* ===== FASE 21 · ACABAMENTO DE RELATÓRIOS E LINGUAGEM COMERCIAL ===== */
.report-result-card .btn-outline-secondary i{color:var(--navy)!important;}
.report-result-card .modal-footer .btn-default{border-color:var(--line);color:var(--navy);background:#fff;}
.report-result-card .modal-footer .btn-default:hover{background:#f7f5f1;}
.report-result-card .table-responsive{scrollbar-width:thin;}
.report-result-card .table-responsive::-webkit-scrollbar{height:7px;}
.report-result-card .table-responsive::-webkit-scrollbar-thumb{background:#d9d6d0;border-radius:999px;}


/* ===== FASE 22 — remoção final de legado visual ===== */
.page-section-header{padding:0;margin:0 0 16px}
.modern-card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:none;overflow:visible}
.modern-card>.card-header{background:#fff;border-bottom:1px solid var(--line);padding:14px 16px}
.modern-card>.card-body{padding:16px}
.text-danger-modern{color:var(--danger)!important}
.text-success-modern{color:var(--success)!important}
.text-brand{color:var(--navy)!important}
.detail-value{margin-left:auto;display:inline-flex;align-items:center;justify-content:flex-end;max-width:65%;white-space:normal;text-align:right;background:#f5f3ef;color:var(--ink);font-weight:600;border-radius:999px;padding:3px 8px}
.footer-meta{margin-left:auto;text-align:right}
.modal-header-danger{background:#fff5f3!important;border-bottom:1px solid #f0d1cd!important;color:var(--danger)!important}
.modal-header-danger .close{color:var(--danger);opacity:.75}
.page-section-header .btn-brand{box-shadow:0 2px 6px rgba(240,102,92,.18)}
.legacy-card-tabs.card-tabs>.card-header{padding:0}
/* neutraliza visuais residuais do AdminLTE sem quebrar widgets Bootstrap */
.card>.card-header>.card-title{font-family:Archivo,Inter,sans-serif;color:var(--ink)}
.btn-default{background:#fff;border-color:var(--line);color:var(--ink)}
.btn-default:hover{background:#faf9f7;border-color:#d9d4cc;color:var(--ink)}
.dropdown-item.text-danger-modern{color:var(--danger)!important}
.dropdown-item.text-success-modern{color:var(--success)!important}

.state-row-success>td,.state-row-success>th{background:var(--success-100)!important;color:var(--ink)!important}.state-row-success{box-shadow:inset 3px 0 0 var(--success)}
.login-editorial .btn-default[type="submit"],.login-editorial .btn-brand{background:var(--coral);border-color:var(--coral);color:#fff}.login-editorial .btn-default[type="submit"]:hover{background:var(--coral-600);border-color:var(--coral-600)}
.account-user-card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:none;overflow:hidden}.account-user-card .card-footer{background:#faf9f7;border-top:1px solid var(--line)}.account-user-card .lead{font-family:Archivo,Inter,sans-serif;color:var(--ink);font-size:1rem}.text-warning-modern{color:var(--warning)!important}
.customer-contact-card{border:1px solid var(--line);border-radius:12px;box-shadow:none;overflow:hidden}.customer-contact-card>.card-header{background:#fff;border-bottom:1px solid var(--line)}
.customer-contact-card>.card-body{padding:16px!important}.customer-contact-card .nav-pills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.customer-contact-card .nav-pills .nav-item{min-width:0}.customer-contact-card .nav-pills .nav-link{height:100%;padding:14px 15px;background:#faf9f7;border:1px solid #eeeae5;border-radius:10px;color:var(--ink-soft);font-size:.68rem;text-transform:uppercase;letter-spacing:.04em}.customer-contact-card .nav-pills .nav-link:hover{background:#fff}.customer-contact-card .nav-pills .nav-link i{width:19px;color:var(--coral)}.customer-contact-card .detail-value{display:block;max-width:100%;margin:7px 0 0;padding:0;background:transparent;color:var(--ink);font-size:.85rem;text-transform:none;letter-spacing:0;text-align:left}.customer-contact-card .nav-pills .nav-item:first-child .nav-link{background:#f4f1ed}@media(max-width:575.98px){.customer-contact-card .nav-pills{grid-template-columns:1fr}}
.customer-purchase-list>.card{border:1px solid var(--line);border-radius:12px;box-shadow:none;overflow:hidden}.customer-purchase-list>.card>.card-header{padding:14px 16px;background:#fff}.customer-purchase-list>.card>.card-header .card-title{font-size:.82rem}.customer-purchase-list>.card>.card-body{padding:12px 16px}.customer-purchase-list .table thead th{background:#faf9f7;color:var(--ink-soft);font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;border-top:0}.customer-purchase-list .table td{font-size:.72rem;vertical-align:middle}.customer-purchase-list .state-row-success td{font-weight:700}
.customer-purchase-actions{display:flex;align-items:center;gap:12px}.customer-purchase-actions>a{font-size:.72rem;font-weight:600;color:var(--navy)}.customer-purchase-actions .btn-tool{margin:0;padding:4px 7px;font-size:.72rem}@media(max-width:767.98px){.customer-purchase-actions{width:100%;margin-top:10px;flex-wrap:wrap}.customer-purchase-list>.card>.card-header{align-items:flex-start;flex-direction:column}}
.customer-kpi-shopping{padding:12px 13px;background:linear-gradient(145deg,#fff,#faf7f3);border-color:#e9e1da}.customer-kpi-shopping-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:9px;border-bottom:1px solid #ebe6e0}.customer-kpi-shopping-head span{display:flex;align-items:center;gap:6px}.customer-kpi-shopping-head i{color:var(--coral)}.customer-kpi-shopping-head strong{margin:0;font-size:1.15rem}.customer-kpi-shopping-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding-top:9px}.customer-kpi-shopping-details>div{min-width:0}.customer-kpi-shopping-details small{display:block;color:var(--ink-soft);font-size:.56rem;line-height:1.15}.customer-kpi-shopping-details b{display:block;margin-top:3px;color:var(--navy);font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.customer-kpi-shopping-details b i{margin-right:3px;color:var(--coral);font-size:.66rem}


/* ===== FASE 23 — CONSOLIDAÇÃO, ACESSIBILIDADE E RESILIÊNCIA ===== */
.skip-link{position:fixed;left:16px;top:-64px;z-index:9999;padding:10px 14px;border-radius:10px;background:var(--navy);color:#fff;font-weight:700;box-shadow:0 8px 24px rgba(30,42,84,.18);transition:top .15s ease}.skip-link:focus{top:12px;color:#fff}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid rgba(240,102,92,.42)!important;outline-offset:2px!important;box-shadow:none}
.btn:focus-visible,.nav-link:focus-visible,.dropdown-item:focus-visible{border-radius:8px}
.modal-content{border-radius:16px;border:1px solid var(--line);box-shadow:0 24px 70px rgba(30,42,84,.16)}
.modal-header{align-items:center}.modal-header .close{margin:-.5rem -.5rem -.5rem auto;border-radius:8px}
.table-responsive{-webkit-overflow-scrolling:touch}
.table-responsive:focus{outline:3px solid rgba(240,102,92,.28);outline-offset:2px}
.form-control::placeholder{color:#9a9dab;opacity:1}
.form-control:disabled,.form-control[readonly]{opacity:1}
.dropdown-menu{max-width:min(340px,calc(100vw - 24px))}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media (max-width:575.98px){.page-hero-actions,.finance-panel-actions{width:100%}.page-hero-actions .btn,.finance-panel-actions .btn{flex:1 1 auto}.modal-dialog{margin:.5rem}.modal-content{max-height:calc(100vh - 1rem)}}

/* ===== FASE 24 — CONSISTÊNCIA SEMÂNTICA, DASHBOARD E ESTADOS ===== */
.status-chip.is-active{background:#edf8f3;color:var(--success)}
.status-chip.is-inactive{background:#f2f1ef;color:var(--ink-soft)}
.status-chip.is-planned{background:#edf3fb;color:#2f6fa8}
.status-chip.is-unplanned{background:#fff6e8;color:var(--warning)}
.status-chip .status-dot{width:6px;height:6px;border-radius:50%;background:currentColor;margin-right:5px;opacity:.75}
.dashboard-subcard{margin-bottom:0}
.dashboard-subcard>.card-header .card-title{font-size:.95rem}
.dashboard-chart-note{font-size:.8rem;margin:10px 0 0;color:var(--ink-soft)}
.dashboard-empty{display:flex;align-items:center;gap:12px;padding:18px;color:var(--ink-soft)}
.dashboard-empty i{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#f5f3ef;color:var(--navy)}
.dashboard-empty strong{display:block;color:var(--ink);font-size:.76rem}
.dashboard-empty span{display:block;font-size:.68rem;margin-top:2px}
.finance-bar>i{width:var(--bar-width,0%)}
.empty-state-inline{display:flex;align-items:center;gap:12px;padding:18px;border:1px dashed var(--line);border-radius:12px;background:#fcfbf9;color:var(--ink-soft)}
.empty-state-inline>i{font-size:1.1rem;color:var(--navy)}
.empty-state-inline strong{display:block;color:var(--ink);font-size:.76rem}
.empty-state-inline span{display:block;font-size:.67rem;margin-top:2px}
/* ===== FASE 25 · FEEDBACK OPERACIONAL E FORMULÁRIOS ===== */
.app-submit-spinner {
  width: 1rem;
  height: 1rem;
  display: inline-block;
  margin-right: .5rem;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  vertical-align: -.15rem;
  animation: app-submit-spin .65s linear infinite;
}
@keyframes app-submit-spin { to { transform: rotate(360deg); } }

form.is-submitting .submit-locked {
  pointer-events: none;
  cursor: wait;
}
form.is-submitting .submit-locked:not(.is-loading) {
  opacity: .58;
}
button.is-loading,
input.is-loading {
  cursor: wait !important;
  pointer-events: none;
}

/* Campos com leitura mais consistente em todas as telas modernizadas. */
.modern-card .form-control,
.modal-content .form-control,
.modern-card .custom-select,
.modal-content .custom-select {
  min-height: 42px;
}
.modern-card textarea.form-control,
.modal-content textarea.form-control {
  min-height: 92px;
  resize: vertical;
}
.form-control:disabled,
.form-control[readonly] {
  background-color: #f4f2ee;
  color: #686d7d;
  opacity: 1;
}

/* O corpo rola; cabeçalho/rodapé continuam acessíveis em modais altos. */
@media (min-width: 576px) {
  .modal-dialog {
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
  }
  .modal-content {
    max-height: calc(100vh - 2.5rem);
  }
  .modal-body {
    overflow-y: auto;
    overscroll-behavior: contain;
  }
}
@media (max-width: 575.98px) {
  .modal-dialog {
    margin: .5rem;
  }
  .modal-content {
    max-height: calc(100vh - 1rem);
  }
  .modal-body {
    overflow-y: auto;
  }
  .modal-footer {
    flex-wrap: wrap;
  }
  .modal-footer > .btn {
    flex: 1 1 auto;
    min-width: 130px;
  }
}

/* Toasts alinhados ao design system, quando usados pelas telas/controllers. */
#toast-container > .toast {
  border-radius: 12px;
  box-shadow: 0 14px 35px rgba(30,42,84,.14);
  opacity: .98;
}
#toast-container > .toast-success { background-color: #1e8f6f; }
#toast-container > .toast-error { background-color: #d14b4b; }
#toast-container > .toast-warning { background-color: #c97a1c; }
#toast-container > .toast-info { background-color: #2f6fa8; }

@media (prefers-reduced-motion: reduce) {
  .app-submit-spinner { animation-duration: 1.4s; }
}

/* ===== FASE 26 · HOME COMERCIAL / DASHBOARD EXECUTIVO ===== */
.home-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:10px 0 22px}.home-hero-copy{max-width:760px}.home-eyebrow,.home-section-kicker{display:block;margin-bottom:7px;color:var(--coral);font:800 .66rem/1 Archivo,Inter,sans-serif;letter-spacing:.12em;text-transform:uppercase}.home-hero h1{margin:0;color:var(--ink);font:700 clamp(1.65rem,2.4vw,2.2rem)/1.12 Archivo,Inter,sans-serif;letter-spacing:-.045em}.home-hero p{max-width:700px;margin:8px 0 0;color:var(--ink-soft);font-size:.86rem;line-height:1.55}.home-hero-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.home-hero-actions .btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center}
.home-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.home-kpi-card{position:relative;display:flex;align-items:flex-start;gap:13px;min-width:0;padding:17px;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.home-kpi-card:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#d8d5cf}.home-kpi-card.is-result:after{background:var(--navy)}.home-kpi-card.is-income:after,.home-kpi-card.is-received:after{background:var(--success)}.home-kpi-card.is-pending:after{background:var(--warning)}.home-kpi-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:11px;background:#f5f3ef;color:var(--navy)}.home-kpi-card.is-income .home-kpi-icon,.home-kpi-card.is-received .home-kpi-icon{background:#edf8f3;color:var(--success)}.home-kpi-card.is-pending .home-kpi-icon{background:#fff6e8;color:var(--warning)}.home-kpi-copy{min-width:0}.home-kpi-copy>span{display:block;color:var(--ink-soft);font-size:.67rem;text-transform:uppercase;letter-spacing:.055em}.home-kpi-copy>strong{display:block;margin:5px 0 3px;color:var(--ink);font:700 1.16rem/1.15 Archivo,Inter,sans-serif;white-space:nowrap}.home-kpi-copy small{display:block;color:#9194a0;font-size:.65rem;line-height:1.35}
.home-main-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-bottom:14px}.home-finance-panel,.home-attention-panel,.home-trend-panel{margin:0;overflow:hidden}.home-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:17px 18px;border-bottom:1px solid var(--line)}.home-section-header.is-compact{padding-bottom:14px}.home-section-header h2{margin:0;color:var(--ink);font:700 .98rem/1.2 Archivo,Inter,sans-serif}.home-section-header p{margin:4px 0 0;color:var(--ink-soft);font-size:.69rem}.home-section-kicker{margin-bottom:5px;font-size:.6rem}.home-text-link{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;margin-top:3px;color:var(--navy)!important;font-size:.68rem;font-weight:800}.home-text-link:hover{color:var(--coral)!important}.home-finance-body{padding:18px}.home-progress-block+.home-progress-block{margin-top:19px}.home-progress-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:8px}.home-progress-head>div{display:flex;align-items:baseline;gap:9px}.home-progress-head span{color:var(--ink-soft);font-size:.7rem}.home-progress-head strong{color:var(--ink);font-size:.85rem}.home-progress-head small{color:#989aa4;font-size:.64rem}.home-progress{height:8px;overflow:hidden;background:#f0eee9;border-radius:999px}.home-progress i{display:block;width:var(--home-progress,0%);height:100%;border-radius:inherit;background:var(--success);transition:width .25s ease}.home-progress i.is-expense{background:var(--danger)}.home-progress-caption{display:block;margin-top:5px;color:#9699a4;font-size:.62rem;text-align:right}.home-finance-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.home-finance-summary>div{padding:11px 12px;border-radius:10px;background:#faf9f7}.home-finance-summary span{display:block;color:var(--ink-soft);font-size:.64rem}.home-finance-summary strong{display:block;margin-top:4px;color:var(--ink);font-size:.83rem}.home-finance-summary strong.is-positive{color:var(--success)}.home-finance-summary strong.is-negative{color:var(--danger)}.home-forecast{display:flex;align-items:center;gap:14px;margin-top:16px;padding:16px 18px;border-radius:12px;background:#edf8f3}.home-forecast.is-negative{background:#fff0ef}.home-forecast-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:11px;background:#fff;color:var(--success);font-size:1.05rem;box-shadow:0 1px 2px rgba(20,20,30,.06)}.home-forecast.is-negative .home-forecast-icon{color:var(--danger)}.home-forecast-copy{min-width:0}.home-forecast-copy>span{display:block;max-width:52ch;color:var(--ink-soft);font-size:.7rem;line-height:1.45}.home-forecast-copy>strong{display:block;margin:7px 0 5px;color:var(--ink);font:700 1.4rem/1.15 Archivo,Inter,sans-serif;letter-spacing:-.02em}.home-forecast-copy small{display:block;color:#8b8e99;font-size:.63rem}.home-forecast-copy small strong{color:#767a87;font-size:.63rem;font-weight:800}
.home-attention-list{display:flex;flex-direction:column}.home-attention-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px 16px;border-top:1px solid #f0ede8;color:var(--ink)!important}.home-attention-item:first-child{border-top:0}.home-attention-item:hover{background:#fffaf8}.home-attention-item>.fa-chevron-right{color:#b3b5be;font-size:.62rem}.home-attention-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#f4f2ee;color:var(--navy)}.home-attention-icon.is-warning{background:#fff6e8;color:var(--warning)}.home-attention-icon.is-danger{background:#fff0ef;color:var(--danger)}.home-attention-icon.is-stock{background:#edf3fb;color:#2f6fa8}.home-attention-copy{min-width:0}.home-attention-copy strong{display:block;color:var(--ink);font-size:.71rem}.home-attention-copy small{display:block;margin-top:2px;color:var(--ink-soft);font-size:.63rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-trend-body{padding:18px}

@media(max-width:1199.98px){.home-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:991.98px){.home-hero{align-items:flex-start;flex-direction:column}.home-hero-actions{justify-content:flex-start}.home-main-grid{grid-template-columns:1fr}}
@media(max-width:575.98px){.home-hero{padding-top:2px}.home-hero-actions{width:100%}.home-hero-actions .btn{flex:1 1 calc(50% - 4px)}.home-hero-actions .btn-brand{flex-basis:100%}.home-kpi-grid{grid-template-columns:1fr}.home-kpi-card{padding:14px}.home-section-header{align-items:flex-start;flex-direction:column}.home-text-link{margin-top:0}.home-progress-head{align-items:flex-start;flex-direction:column;gap:3px}.home-progress-head>div{justify-content:space-between;width:100%}.home-finance-summary{grid-template-columns:1fr}}

/* ===== FASE 27 — RODAPÉ INSTITUCIONAL ===== */
.app-footer.main-footer{
  margin:0;
  padding:0;
  background:#fbfaf7;
  border-top:1px solid var(--line);
  color:var(--ink-soft);
  box-shadow:0 -1px 0 rgba(30,42,84,.02);
}
.app-footer-inner{
  width:100%;
  max-width:1600px;
  min-height:92px;
  margin:0 auto;
  padding:20px 28px;
  display:grid;
  grid-template-columns:minmax(250px,1.1fr) auto minmax(250px,1fr);
  align-items:center;
  gap:28px;
}
.app-footer-brand{
  display:flex;
  align-items:center;
  min-width:0;
  gap:14px;
}
.app-footer-logo-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.app-footer-logo{
  display:block;
  width:auto;
  height:38px;
  max-width:150px;
  object-fit:contain;
  filter:none!important;
}
.app-footer-brand-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:2px;
}
.app-footer-brand-copy strong{
  font-family:var(--font-display);
  color:var(--navy);
  font-size:.92rem;
  line-height:1.2;
}
.app-footer-brand-copy span{
  color:var(--ink-soft);
  font-size:.74rem;
  line-height:1.35;
}
.app-footer-nav{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:5px 8px;
}
.app-footer-nav a{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 9px;
  border-radius:8px;
  color:var(--navy);
  font-family:var(--font-display);
  font-size:.75rem;
  font-weight:700;
  text-decoration:none;
  transition:background-color .15s ease,color .15s ease;
}
.app-footer-nav a:hover,
.app-footer-nav a:focus-visible{
  background:rgba(240,102,92,.09);
  color:var(--coral-600);
  text-decoration:none;
}
.app-footer-meta{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  justify-content:center;
  gap:5px;
  text-align:right;
  color:var(--ink-soft);
  font-size:.7rem;
  line-height:1.35;
}
.app-footer-version{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 8px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  color:var(--navy);
  font-weight:700;
}
.app-footer-version i{color:var(--coral);font-size:.68rem}
@media (max-width:1199.98px){
  .app-footer-inner{grid-template-columns:1fr 1fr;gap:18px 24px}
  .app-footer-nav{grid-column:1/-1;grid-row:2;justify-content:flex-start;padding-top:12px;border-top:1px solid var(--line)}
}
@media (max-width:767.98px){
  .app-footer-inner{display:flex;flex-direction:column;align-items:flex-start;min-height:0;padding:22px 18px;gap:16px}
  .app-footer-brand{width:100%}
  .app-footer-logo{height:34px;max-width:135px}
  .app-footer-nav{width:100%;justify-content:flex-start;padding-top:14px;border-top:1px solid var(--line)}
  .app-footer-nav a{padding-left:0;padding-right:14px}
  .app-footer-meta{width:100%;align-items:flex-start;text-align:left;padding-top:12px;border-top:1px solid var(--line)}
}

@media (max-width:767.98px){.home-trend-body{padding-left:14px;padding-right:14px}}


/* ===== FASE 34 — HOME: 13 MESES COM MAIS ÁREA ÚTIL ===== */
@media (min-width: 992px) {
  .home-trend-body {
    padding-left: 14px;
    padding-right: 14px;
  }
}

/* Fase 35 — filtro temporal da Home */
.home-hero-side{display:flex;flex-direction:column;align-items:flex-end;gap:10px;min-width:min(100%,470px)}
.home-period-filter{display:flex;align-items:center;justify-content:flex-end;gap:7px;padding:7px 8px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 6px 18px rgba(30,42,84,.05)}
.home-period-filter label{display:flex;align-items:center;gap:8px;margin:0;padding:0 3px;color:var(--ink-soft);font-size:.62rem;font-weight:800;white-space:nowrap}
.home-period-filter label>span{text-transform:uppercase;letter-spacing:.055em}
.home-period-filter input[type="month"]{width:142px;min-height:34px;padding:5px 8px;border:1px solid var(--line);border-radius:8px;background:#faf9f7;color:var(--navy);font-size:.72rem;font-weight:800;outline:0}
.home-period-filter input[type="month"]:focus{border-color:rgba(240,102,92,.7);box-shadow:0 0 0 3px rgba(240,102,92,.12)}
.home-period-nav{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--navy)!important;transition:background .18s ease,border-color .18s ease,color .18s ease}
.home-period-nav:hover{border-color:rgba(240,102,92,.35);background:#fff8f6;color:var(--coral)!important}
.home-period-today{padding:0 6px;color:var(--coral)!important;font-size:.62rem;font-weight:800;white-space:nowrap}
.home-period-today:hover{text-decoration:underline!important}
.home-evolution-block+.home-evolution-block{margin-top:20px}
.home-evolution-title{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0;color:var(--ink);font:700 .78rem/1.2 Archivo,Inter,sans-serif;cursor:pointer;list-style:none}
.home-evolution-title::-webkit-details-marker{display:none}
.home-evolution-title::before{content:"\f105";font-family:"Font Awesome 6 Free";font-weight:900;color:var(--ink-soft);font-size:.66rem;transition:transform .15s ease}
.home-evolution-block[open]>.home-evolution-title::before{transform:rotate(90deg)}
.home-evolution-title:hover{color:var(--coral)}
.home-evolution-title i{color:var(--coral);font-size:.72rem}
.home-evolution-summary{margin-left:auto;color:var(--ink-soft);font-weight:600;font-size:.68rem}
.home-evolution-block[open]>.home-evolution-title{margin-bottom:9px}
.home-evolution-block[open]>.home-evolution-title .home-evolution-summary{display:none}
.home-evolution-table{margin:0;font-size:.72rem}
.home-evolution-table th{color:var(--ink-soft);font-size:.64rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700;white-space:nowrap}
.home-evolution-table td a{color:var(--navy)!important;font-weight:700}
.home-evolution-row.is-selected{background:#fff2f0!important}
.home-evolution-row.is-selected td{font-weight:800}
.home-evolution-row.is-selected td a{color:var(--coral)!important}
.home-evolution-today-tag{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;background:var(--navy);color:#fff;font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}

@media(max-width:991.98px){.home-hero-side{align-items:flex-start;min-width:0;width:100%}.home-period-filter{justify-content:flex-start;max-width:100%}.home-hero-actions{width:100%}}
@media(max-width:575.98px){.home-period-filter{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;width:100%}.home-period-filter label{justify-content:center}.home-period-filter label>span{display:none}.home-period-filter input[type="month"]{width:100%}.home-period-today{grid-column:1/-1;text-align:center;padding:4px 0 0}}

/* Fase 37 — gestão de foto de modelos existentes */
.product-family-thumb{overflow:hidden}.product-family-thumb img{width:100%;height:100%;object-fit:cover;display:block}.product-family-commercial{flex-wrap:wrap}.product-photo-manage{white-space:nowrap;border-radius:8px}.product-photo-editor{display:grid;grid-template-columns:180px minmax(0,1fr);gap:22px;align-items:center}.product-photo-current{width:180px;height:220px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#f8f5f1;display:flex;align-items:center;justify-content:center}.product-photo-current img{width:100%;height:100%;object-fit:cover}.product-photo-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--ink-soft)}.product-photo-placeholder i{font-size:2rem;color:#b8afa5}.product-photo-placeholder span{font-size:.75rem}.product-photo-fields{display:flex;flex-direction:column;gap:8px;min-width:0}.product-photo-fields>strong{font-family:'Archivo',sans-serif;color:var(--ink);font-size:1rem}.product-photo-fields>span,.product-photo-fields>small{color:var(--ink-soft);font-size:.72rem}.product-photo-fields label{margin:12px 0 0;font-size:.75rem;color:var(--ink)}.product-photo-actions{display:flex;align-items:center;gap:10px}.product-photo-actions .gap-2{gap:8px}.product-photo-note{display:flex;align-items:flex-start;gap:10px;border:1px solid #eee7de;background:#faf8f5;border-radius:10px;padding:11px 12px;color:var(--ink-soft)}.product-photo-note>i{color:var(--coral);margin-top:2px}.product-photo-note>div{display:flex;flex-direction:column;gap:2px}.product-photo-note strong{font-size:.74rem;color:var(--ink)}.product-photo-note span{font-size:.68rem;line-height:1.45}
@media(max-width:767.98px){.product-photo-editor{grid-template-columns:1fr}.product-photo-current{width:100%;max-width:260px;height:300px;margin:0 auto}.product-photo-actions{align-items:stretch;flex-direction:column}.product-photo-actions .ml-auto{margin-left:0!important;width:100%;display:grid!important;grid-template-columns:1fr 1fr}.product-photo-actions>.btn{width:100%}.product-family-commercial .product-photo-manage{flex:1}}

/* Fase 38 — coerência semântica dos indicadores financeiros da Home */
.home-help-icon{margin-left:4px;color:#a2a5af;font-size:.64rem;cursor:help;vertical-align:middle}.home-help-icon:hover{color:var(--coral)}
.home-finance-summary>div small{display:block;margin-top:4px;color:#9699a4;font-size:.58rem;line-height:1.35}
.home-kpi-definition{margin-top:5px!important;padding-top:5px;border-top:1px dashed #ece8e2;color:#8a8e9a!important;font-size:.58rem!important}


/* Fase 39 — fotos individuais por variação de produto */
.variant-photo-thumb{width:42px;height:52px;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#f8f5f1;display:flex;align-items:center;justify-content:center;color:#b8afa5}
.variant-photo-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.edit-product-photo-block{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:12px;background:#faf9f7}
.edit-product-photo-preview{width:120px;height:150px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;display:flex;align-items:center;justify-content:center}
.edit-product-photo-preview img{width:100%;height:100%;object-fit:cover;display:block}
.edit-product-photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--ink-soft);font-size:.7rem}
.edit-product-photo-placeholder i{font-size:1.6rem;color:#b8afa5}
.edit-product-photo-fields{display:flex;flex-direction:column;gap:7px;min-width:0}
.edit-product-photo-fields>label{margin:0;color:var(--ink);font-family:'Archivo',sans-serif;font-size:.78rem;font-weight:800}
.edit-product-photo-fields>small{color:var(--ink-soft);font-size:.68rem;line-height:1.45}
@media(max-width:575.98px){.edit-product-photo-block{grid-template-columns:1fr}.edit-product-photo-preview{width:100%;max-width:220px;height:260px;margin:0 auto}}

/* Fase 40 — Home financeira explícita e catálogo com menor consumo de memória */
@media (min-width:1400px){.home-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
.home-kpi-card.is-expense:after{background:var(--danger,#d14b4b)}
.home-kpi-card.is-expense .home-kpi-icon{background:#fff0ef;color:var(--danger,#d14b4b)}
.home-expense-overview{margin-top:18px;padding:15px;border:1px solid #f0d9d6;border-radius:13px;background:linear-gradient(145deg,#fff,#fff8f7)}.home-expense-overview-head{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:center}.home-expense-overview-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#fff0ef;color:var(--danger)}.home-expense-overview-head span,.home-expense-overview-values span{display:block;color:var(--ink-soft);font-size:.63rem}.home-expense-overview-head strong{display:block;margin-top:2px;color:var(--ink);font-size:1rem}.home-expense-overview-head small{display:block;color:#9b9694;font-size:.57rem}.home-expense-overview-head>b{padding:4px 8px;border-radius:999px;background:#fbe7e4;color:var(--danger);font-size:.61rem}.home-expense-overview-values{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:13px 0 10px}.home-expense-overview-values>div{padding:9px 10px;border:1px solid #eee9e5;border-radius:9px;background:#fff}.home-expense-overview-values span i{margin-right:4px}.home-expense-overview-values>div:first-child span i{color:var(--success)}.home-expense-overview-values>div:last-child span i{color:var(--warning)}.home-expense-overview-values strong{display:block;margin-top:4px;color:var(--navy);font-size:.76rem}.home-finance-summary-result{grid-template-columns:1fr!important;margin-top:12px;padding-top:12px}@media(max-width:575.98px){.home-expense-overview-head{grid-template-columns:38px 1fr}.home-expense-overview-head>b{grid-column:2;justify-self:start}.home-expense-overview-values{grid-template-columns:1fr}}
.home-finance-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:991.98px){.home-finance-summary{grid-template-columns:1fr}}
.home-expense-overview-head .kpi-delta{display:inline-flex;margin:3px 0 2px;font-weight:700}
.home-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.home-revenue-overview{background:linear-gradient(145deg,#fff,#f5fbf8);border-color:#dbece4}.home-revenue-overview-copy{width:100%}.home-revenue-overview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.home-revenue-overview-head>div>span{display:block;color:var(--ink-soft);font-size:.67rem;text-transform:uppercase;letter-spacing:.055em}.home-revenue-overview-head>div>strong{display:block;margin:5px 0 3px;color:var(--ink);font:700 1.16rem/1.15 Archivo,Inter,sans-serif}.home-revenue-overview-head>b{flex:0 0 auto;padding:4px 8px;border-radius:999px;background:#e4f5ec;color:var(--success);font-size:.6rem}.home-revenue-received{margin:12px 0 10px;padding:9px 10px;border:1px solid #dfebe5;border-radius:9px;background:#fff}.home-revenue-received>span{display:block;color:var(--ink-soft);font-size:.62rem}.home-revenue-received>span i{margin-right:4px;color:var(--success)}.home-revenue-received>strong{display:block;margin:4px 0 2px;color:var(--navy);font-size:.8rem}.home-revenue-received .kpi-delta{font-size:.59rem}@media(max-width:991.98px){.home-kpi-grid{grid-template-columns:1fr 1fr}}@media(max-width:575.98px){.home-kpi-grid{grid-template-columns:1fr}.home-revenue-overview-head{flex-direction:column}.home-revenue-overview-head>b{align-self:flex-start}}
.home-kpi-grid .home-expense-overview{display:block;margin-top:0}
.home-revenue-values{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 10px}.home-revenue-values .home-revenue-received{margin:0}.home-revenue-pending{padding:9px 10px;border:1px solid #efe6d5;border-radius:9px;background:#fff}.home-revenue-pending>span{display:block;color:var(--ink-soft);font-size:.62rem}.home-revenue-pending>span i{margin-right:4px;color:var(--warning)}.home-revenue-pending>strong{display:block;margin:4px 0 2px;color:var(--navy);font-size:.8rem}.home-revenue-pending>small{display:block;color:#9699a4;font-size:.59rem}@media(max-width:575.98px){.home-revenue-values{grid-template-columns:1fr}}
.home-kpi-grid .home-forecast{height:100%;margin-top:0;padding:17px}.home-kpi-grid .home-forecast-copy>span{font-size:.66rem}.home-kpi-grid .home-forecast-copy>strong{font-size:1.18rem}.home-kpi-grid .home-forecast-copy small{font-size:.58rem}
.home-main-grid-full{grid-template-columns:minmax(0,1fr)}
.collection-guide{margin:14px;padding:16px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(135deg,#fff 0%,#faf8f5 100%)}.collection-guide-intro{display:flex;align-items:flex-start;gap:13px}.collection-guide-intro>i{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:#fff0ec;color:var(--coral);font-size:1rem}.collection-guide-intro span{color:var(--coral);font-size:.61rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.collection-guide-intro h3{margin:2px 0 4px;color:var(--ink);font:700 .92rem/1.3 Archivo,Inter,sans-serif}.collection-guide-intro p{margin:0;color:var(--ink-soft);font-size:.69rem;line-height:1.5}.collection-guide-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:14px}.collection-guide-grid article{display:flex;align-items:flex-start;gap:9px;padding:11px;border:1px solid #ece7e0;border-radius:10px;background:#fff}.collection-guide-grid article>i{margin-top:2px;color:var(--coral);font-size:.75rem}.collection-guide-grid article div{display:flex;min-width:0;flex-direction:column;gap:2px}.collection-guide-grid strong{color:var(--ink);font-size:.69rem}.collection-guide-grid span{color:var(--ink-soft);font-size:.63rem;line-height:1.45}.collection-guide-note{display:flex;align-items:flex-start;gap:7px;margin:11px 0 0;padding-top:10px;border-top:1px solid #ebe6df;color:var(--ink-soft);font-size:.62rem;line-height:1.5}.collection-guide-note i{margin-top:2px;color:var(--info)}@media(max-width:991.98px){.collection-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:575.98px){.collection-guide{margin:10px;padding:13px}.collection-guide-grid{grid-template-columns:1fr}}
.campaign-card-footer{align-items:center;gap:8px}.campaign-card-footer form{margin:0}
/* Perfil do usuario */
.profile-account-page{width:100%;max-width:none;margin:0;padding:24px 20px 40px}.profile-account-hero{position:relative;display:flex;align-items:center;gap:20px;padding:28px 30px;margin-bottom:18px;border-radius:22px;color:#fff;background:linear-gradient(120deg,#2c1648 0%,#63348d 58%,#a55389 100%);box-shadow:0 18px 38px rgba(52,27,77,.18);overflow:hidden}.profile-account-hero:after{content:"";position:absolute;width:260px;height:260px;right:-80px;top:-130px;border-radius:50%;background:rgba(255,255,255,.09)}.profile-account-avatar{width:74px;height:74px;display:grid;place-items:center;flex:0 0 74px;border:1px solid rgba(255,255,255,.35);border-radius:22px;background:rgba(255,255,255,.17);font-size:25px;font-weight:800}.profile-account-identity{position:relative;z-index:1}.profile-account-eyebrow,.profile-section-kicker{display:block;margin-bottom:4px;font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.profile-account-eyebrow{color:#efdff7}.profile-account-identity h1{margin:0 0 5px;font-size:28px;font-weight:750}.profile-account-identity p{margin:0;color:rgba(255,255,255,.78)}.profile-account-identity p i{margin-right:8px}.profile-account-status{position:relative;z-index:1;margin-left:auto;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.14);font-size:12px;font-weight:700}.profile-account-status i{margin-right:7px;font-size:7px}.profile-account-status.is-active i{color:#6ee7a8}.profile-account-status.is-inactive i{color:#ff9e9e}.profile-insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.profile-insight-card{display:flex;align-items:center;gap:14px;min-height:112px;padding:20px;border:1px solid #eee8f2;border-radius:17px;background:#fff;box-shadow:0 8px 24px rgba(38,24,52,.06)}.profile-insight-icon{width:46px;height:46px;display:grid;place-items:center;flex:0 0 46px;border-radius:14px;font-size:18px}.profile-insight-icon.icon-access{color:#6a36a0;background:#f1e9fa}.profile-insight-icon.icon-clock{color:#a15d13;background:#fff1dd}.profile-insight-icon.icon-activity{color:#168467;background:#dcf6ed}.profile-insight-card small{display:block;color:#82788b;font-weight:600}.profile-insight-card strong{display:block;margin:2px 0;font-size:18px;color:#30263a}.profile-insight-card p{margin:0;color:#938a9a;font-size:12px}.profile-account-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr);gap:18px;align-items:start}.profile-account-page .modern-card{border:1px solid #eee8f2;border-radius:18px;box-shadow:0 9px 28px rgba(38,24,52,.06);overflow:hidden}.profile-account-page .card-header{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid #f0ebf3;background:#fff}.profile-account-page .card-title{float:none;margin:0;color:#32283b;font-size:18px;font-weight:750}.profile-section-kicker{color:#9063aa}.profile-required-note{color:#918797;font-size:12px}.profile-editor-card .card-body{padding:22px}.profile-editor-card label{color:#4f4457;font-size:13px;font-weight:700}.profile-editor-card .form-control{height:45px;border-color:#e2dbe7;border-radius:10px;box-shadow:none}.profile-editor-card .form-control:focus{border-color:#8855a5;box-shadow:0 0 0 3px rgba(136,85,165,.1)}.profile-input-wrap{position:relative}.profile-input-wrap i{position:absolute;z-index:1;left:14px;top:15px;color:#9b8fa4}.profile-input-wrap .form-control{padding-left:40px}.profile-password-heading{display:flex;align-items:center;justify-content:space-between;margin:24px 0 15px;padding:14px 16px;border-radius:12px;background:#f8f5fa}.profile-password-heading h4{margin:0 0 3px;font-size:15px;font-weight:750;color:#43364d}.profile-password-heading p{margin:0;color:#8b8191;font-size:12px}.profile-password-heading>i{color:#8a58a5}.profile-current-password small{display:block;margin-top:7px;color:#8d8394}.profile-current-password small i{margin-right:5px;color:#9063aa}.profile-editor-card .card-footer{display:flex;justify-content:flex-end;padding:15px 22px;background:#fbfafc;border-top:1px solid #f0ebf3}.profile-editor-card .btn{padding:10px 18px;border-radius:10px;font-weight:700}.profile-editor-card .btn i{margin-right:7px}.profile-account-sidebar{display:grid;gap:18px}.profile-access-card .card-header>i,.profile-activity-card .card-header>i{color:#9b72af}.profile-access-card .card-body,.profile-activity-card .card-body{padding:20px}.profile-chips{display:flex;flex-wrap:wrap;gap:8px}.profile-chip{padding:7px 10px;border-radius:9px;color:#60387a;background:#f2eafb;font-size:12px;font-weight:700}.profile-chip i{margin-right:6px}.profile-chip.is-muted{color:#82798a;background:#f2eff4}.profile-access-numbers{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.profile-access-numbers>div{padding:13px;border-radius:12px;background:#faf8fb}.profile-access-numbers strong,.profile-access-numbers span{display:block}.profile-access-numbers strong{font-size:20px;color:#3d3047}.profile-access-numbers span{font-size:11px;color:#8f8595}.profile-access-help{margin:0;color:#807587;font-size:12px;line-height:1.55}.profile-timeline-item{position:relative;display:flex;gap:12px;padding:0 0 18px 2px}.profile-timeline-item:not(:last-child):before{content:"";position:absolute;left:6px;top:12px;bottom:0;width:1px;background:#e6ddec}.profile-timeline-dot{position:relative;z-index:1;width:9px;height:9px;flex:0 0 9px;margin-top:5px;border:2px solid #fff;border-radius:50%;background:#8653a3;box-shadow:0 0 0 2px #dac9e4}.profile-timeline-item strong,.profile-timeline-item small{display:block}.profile-timeline-item strong{color:#473a50;font-size:13px}.profile-timeline-item small{margin-top:3px;color:#958b9b;font-size:11px}.profile-empty-activity{text-align:center;padding:14px;color:#928899}.profile-empty-activity p{margin:8px 0 0;font-size:12px}@media(max-width:900px){.profile-account-layout{grid-template-columns:1fr}.profile-insight-grid{grid-template-columns:1fr}.profile-insight-card{min-height:auto}.profile-account-status{margin-left:0}}@media(max-width:600px){.profile-account-page{padding:14px 12px 30px}.profile-account-hero{align-items:flex-start;flex-wrap:wrap;padding:22px}.profile-account-identity h1{font-size:22px}.profile-required-note{display:none}.profile-access-numbers{grid-template-columns:1fr}}
.profile-photo-editor{position:relative;z-index:2;flex:0 0 74px}.profile-account-avatar{display:block;object-fit:cover}.profile-photo-form{position:absolute;right:-5px;bottom:-5px}.profile-photo-trigger{display:grid;width:29px;height:29px;margin:0;place-items:center;border:2px solid #fff;border-radius:50%;color:#63348d;background:#fff;box-shadow:0 3px 10px rgba(30,20,40,.25);cursor:pointer;font-size:11px}.profile-photo-trigger:hover{color:#a55389;transform:translateY(-1px)}.profile-photo-save{display:none;position:absolute;left:37px;bottom:0;width:102px;height:29px;padding:0 9px;border:1px solid rgba(255,255,255,.5);border-radius:8px;color:#fff;background:#2c1648;box-shadow:0 4px 12px rgba(30,20,40,.24);font-size:11px;font-weight:700;white-space:nowrap}.profile-photo-form.has-file .profile-photo-save{display:block}.tati-avatar{object-fit:cover}
.customer-intelligence-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}.customer-intelligence-grid article{display:flex;align-items:center;gap:13px;min-height:94px;padding:17px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 6px 18px rgba(30,42,84,.05)}.customer-intelligence-icon{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:12px}.customer-intelligence-icon.is-base{color:#315d9b;background:#eaf2ff}.customer-intelligence-icon.is-active{color:#18805e;background:#e3f6ef}.customer-intelligence-icon.is-opportunity{color:#a66018;background:#fff1dd}.customer-intelligence-icon.is-birthday{color:#a34473;background:#fae9f2}.customer-intelligence-grid small,.customer-intelligence-grid strong,.customer-intelligence-grid p{display:block}.customer-intelligence-grid small{color:var(--ink-soft);font-size:.65rem;text-transform:uppercase;letter-spacing:.04em}.customer-intelligence-grid strong{margin:2px 0;color:var(--navy);font:800 1.25rem Archivo,Inter,sans-serif}.customer-intelligence-grid p{margin:0;color:#9699a4;font-size:.61rem}.customer-smart-list .modern-table td{vertical-align:middle}.customer-relation-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;font-size:.66rem;font-weight:700;white-space:nowrap}.customer-relation-chip i{font-size:6px}.customer-relation-chip.is-hot{color:#137557;background:#e3f6ee}.customer-relation-chip.is-warm{color:#315d91;background:#e9f2fc}.customer-relation-chip.is-attention{color:#a45e18;background:#fff0dc}.customer-relation-chip.is-new{color:#7b568d;background:#f2eafa}.customer-last-purchase{display:block;margin-top:5px;color:#99909f;font-size:.61rem}.customer-commercial-history strong,.customer-commercial-history span{display:block}.customer-commercial-history strong{color:var(--ink);font-size:.73rem}.customer-commercial-history span{margin-top:3px;color:var(--ink-soft);font-size:.65rem}@media(max-width:991.98px){.customer-intelligence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:575.98px){.customer-intelligence-grid{grid-template-columns:1fr}.customer-intelligence-grid article{min-height:auto}}
.customer-intelligence-panel{margin:0 0 16px;border:1px solid #e7e1eb;border-radius:15px;background:#fff;box-shadow:0 7px 22px rgba(35,26,45,.05);overflow:hidden}.customer-next-action{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:14px;align-items:center;padding:17px 19px}.customer-next-action-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;color:#72428c;background:#f1e9f7;font-size:17px}.customer-next-action small{display:block;color:#8e8195;font-size:.61rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.customer-next-action h2{margin:2px 0 3px;color:var(--ink);font:750 .9rem/1.3 Archivo,Inter,sans-serif}.customer-next-action p{margin:0;color:var(--ink-soft);font-size:.68rem}.customer-next-action .btn{border:1px solid #e6dfe9;color:var(--navy);font-weight:700;white-space:nowrap}.customer-next-action .btn i{margin-left:5px}.customer-intelligence-panel.is-urgent{border-color:#efd2cf}.customer-intelligence-panel.is-urgent .customer-next-action-icon{color:#b6433d;background:#fdebea}.customer-intelligence-panel.is-attention{border-color:#eadcc5}.customer-intelligence-panel.is-attention .customer-next-action-icon,.customer-intelligence-panel.is-opportunity .customer-next-action-icon{color:#a3631e;background:#fff1dc}.customer-intelligence-panel.is-positive .customer-next-action-icon{color:#18775a;background:#e2f5ed}.customer-intelligence-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #eee9f1;background:#fbfafc}.customer-intelligence-facts>div{padding:13px 18px}.customer-intelligence-facts>div+div{border-left:1px solid #eee9f1}.customer-intelligence-facts span,.customer-intelligence-facts strong,.customer-intelligence-facts small{display:block}.customer-intelligence-facts span{color:#84798a;font-size:.62rem}.customer-intelligence-facts span i{width:16px;color:#9665ad}.customer-intelligence-facts strong{margin:3px 0;color:#372c40;font-size:.8rem}.customer-intelligence-facts small{color:#9b929f;font-size:.58rem}@media(max-width:767.98px){.customer-next-action{grid-template-columns:42px 1fr}.customer-next-action .btn{grid-column:1/-1}.customer-intelligence-facts{grid-template-columns:1fr}.customer-intelligence-facts>div+div{border-left:0;border-top:1px solid #eee9f1}}
.customer-profile-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;margin-top:5px}.customer-profile-meta span{display:inline-flex;align-items:center;gap:6px;color:var(--ink-soft);font-size:.68rem}.customer-profile-meta i{color:var(--coral);font-size:.65rem}
.customer-purchase-hub{overflow:hidden}.customer-purchase-overview{display:flex!important;align-items:center;justify-content:space-between;gap:24px;padding:20px 22px!important;background:linear-gradient(135deg,#fff 0%,#faf7fb 100%)!important}.customer-purchase-overview-title{display:flex;align-items:center;gap:13px}.customer-purchase-overview-title>span{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;color:#80509a;background:#efe6f5}.customer-purchase-overview-title small{color:#956ca8;font-size:.59rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.customer-purchase-overview-title h3{margin:2px 0!important;font-size:.92rem!important}.customer-purchase-overview-title p{margin:0;color:var(--ink-soft);font-size:.63rem}.customer-purchase-overview-stats{display:grid;grid-template-columns:repeat(3,auto);gap:24px}.customer-purchase-overview-stats div{min-width:82px}.customer-purchase-overview-stats span,.customer-purchase-overview-stats strong{display:block}.customer-purchase-overview-stats span{color:#948a99;font-size:.57rem;text-transform:uppercase}.customer-purchase-overview-stats strong{margin-top:3px;color:var(--navy);font-size:.75rem}.customer-purchase-feed{display:grid;gap:10px;padding:14px!important;background:#f8f6f9}.customer-order-card{margin:0!important;border:1px solid #e7e1e9!important;border-radius:13px!important;background:#fff}.customer-order-header{display:grid!important;grid-template-columns:minmax(240px,1fr) auto auto;gap:20px;align-items:center;padding:15px 17px!important}.customer-order-identity{display:flex;align-items:center;gap:11px}.customer-order-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:10px;color:#82549a;background:#f2ebf6}.customer-order-identity small,.customer-order-value small{display:block;color:#938999;font-size:.57rem}.customer-order-identity h3{margin:2px 0!important;font-size:.8rem!important}.customer-order-meta{display:flex;gap:11px;margin-top:4px}.customer-order-meta span{color:#89808f;font-size:.58rem}.customer-order-meta i{margin-right:4px;color:#a078b2}.customer-order-value{text-align:right}.customer-order-value strong{display:block;margin-top:2px;color:var(--navy);font-size:.82rem}.customer-order-link{padding:5px 8px;border:1px solid #e4dce8;border-radius:8px;background:#fff}.customer-order-details{padding:0!important;border-top:1px solid #eee9f0}.customer-order-details .table{margin:0}.customer-purchase-empty{padding:42px 20px;text-align:center;background:#fff;border:1px dashed #dcd2e1;border-radius:12px}.customer-purchase-empty>i{font-size:25px;color:#a87bb9}.customer-purchase-empty h4{margin:10px 0 3px;color:var(--ink);font-size:.88rem}.customer-purchase-empty p{margin:0 0 13px;color:var(--ink-soft);font-size:.67rem}@media(max-width:991.98px){.customer-purchase-overview{align-items:flex-start;flex-direction:column}.customer-purchase-overview-stats{width:100%;grid-template-columns:repeat(3,1fr)}.customer-order-header{grid-template-columns:1fr auto}.customer-purchase-actions{grid-column:1/-1}}@media(max-width:575.98px){.customer-purchase-overview-stats{grid-template-columns:1fr;gap:8px}.customer-order-header{grid-template-columns:1fr}.customer-order-value{text-align:left}.customer-order-meta{flex-wrap:wrap}}
.customer-purchase-overview-title>div,.customer-order-identity>div{display:flex;min-width:0;flex-direction:column;align-items:flex-start}.customer-purchase-overview-title small,.customer-purchase-overview-title h3,.customer-purchase-overview-title p,.customer-order-identity small,.customer-order-identity h3,.customer-order-meta{display:block;float:none!important;clear:both;width:100%}.customer-order-meta{margin-top:5px;line-height:1.4}.customer-order-meta span{display:inline-flex;align-items:center;margin-right:11px}.customer-order-meta span:last-child{margin-right:0}
.customer-relationship-board{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-bottom:22px}.customer-relationship-card{width:100%;margin:0!important;border:1px solid var(--line)!important;border-radius:14px!important;overflow:hidden;box-shadow:0 7px 22px rgba(31,38,58,.06)!important}.customer-relationship-card>.card-header{display:flex;align-items:center;justify-content:space-between;padding:16px 17px;background:#fff;border-bottom:1px solid #eee9e5}.customer-relationship-heading{display:flex;align-items:center;gap:11px}.customer-relationship-heading>span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px}.customer-relationship-heading h2{margin:0;color:var(--ink);font:750 .82rem/1.25 Archivo,Inter,sans-serif}.customer-relationship-heading p{margin:3px 0 0;color:var(--ink-soft);font-size:.61rem}.customer-relationship-tools{display:flex;align-items:center;gap:8px}.customer-relationship-tools .btn-tool{width:30px;height:30px;margin:0;padding:0;border:1px solid #e5dee8;border-radius:8px;color:#756a7b;background:#fff}.customer-relationship-count{display:grid;place-items:center;min-width:34px;height:28px;padding:0 9px;border-radius:999px;font-size:.72rem}.customer-relationship-card.is-hot .customer-relationship-heading>span,.customer-relationship-card.is-hot .customer-relationship-count{color:#137557;background:#e3f6ee}.customer-relationship-card.is-warm .customer-relationship-heading>span,.customer-relationship-card.is-warm .customer-relationship-count{color:#315d91;background:#e9f2fc}.customer-relationship-card.is-attention .customer-relationship-heading>span,.customer-relationship-card.is-attention .customer-relationship-count{color:#a45e18;background:#fff0dc}.customer-relationship-card.is-new .customer-relationship-heading>span,.customer-relationship-card.is-new .customer-relationship-count{color:#7b568d;background:#f2eafa}.customer-relationship-list{padding:5px 14px!important}.customer-relationship-person{display:grid;grid-template-columns:38px minmax(0,1fr) auto 12px;gap:10px;align-items:center;padding:11px 2px;color:inherit;border-bottom:1px solid #f0ecef}.customer-relationship-person:last-child{border-bottom:0}.customer-relationship-person:hover{color:inherit;background:#fcfafc;text-decoration:none}.customer-relationship-person-main,.customer-relationship-person-value{min-width:0}.customer-relationship-person-main strong,.customer-relationship-person-main small,.customer-relationship-person-value strong,.customer-relationship-person-value small{display:block}.customer-relationship-person-main strong{overflow:hidden;color:var(--ink);font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.customer-relationship-person-main small{margin-top:3px;color:#918895;font-size:.59rem}.customer-relationship-person-value{text-align:right}.customer-relationship-person-value strong{color:var(--navy);font-size:.65rem}.customer-relationship-person-value small{margin-top:3px;color:#8f8792;font-size:.59rem}.customer-relationship-person>i{color:#b0a6b3;font-size:.57rem}.customer-group-empty{display:flex;align-items:center;justify-content:center;gap:8px;min-height:100px;color:#938a97;font-size:.66rem}.customer-group-footer{display:flex;align-items:center;justify-content:space-between;padding:10px 15px!important;border-top:1px solid #eee9ed;background:#fbfafb}.customer-group-footer>span{color:#918895;font-size:.59rem}.customer-group-footer nav{display:flex;align-items:center;gap:7px}.customer-group-footer nav a,.customer-group-footer nav strong{display:grid;place-items:center;width:27px;height:27px;border:1px solid #e3dce6;border-radius:8px;background:#fff;color:var(--navy);font-size:.62rem}.customer-group-footer nav a.disabled{opacity:.4;pointer-events:none}.customer-group-footer nav strong{color:#fff;background:var(--navy);border-color:var(--navy)}@media(max-width:575.98px){.customer-relationship-person{grid-template-columns:36px minmax(0,1fr) 10px}.customer-relationship-person-value{grid-column:2;text-align:left}.customer-relationship-person>i{grid-column:3;grid-row:1/3}.customer-relationship-heading p{max-width:220px}}
.customer-relationship-card>.card-header{display:grid!important;width:100%!important;grid-template-columns:minmax(0,1fr) auto;justify-content:stretch!important}.customer-relationship-tools{justify-self:end!important;margin-left:auto!important;float:none!important;text-align:right}.customer-relationship-count,.customer-relationship-tools .btn-tool{flex:0 0 auto}
.customer-group-footer{display:grid!important;width:100%!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-content:stretch!important}.customer-group-footer>nav{justify-self:end!important;margin-left:auto!important;float:none!important;text-align:right}

/* Parcelamentos da cliente agrupados por competência */
.customer-finance-months{display:grid;gap:12px}.customer-finance-month-card{margin:0!important;border:1px solid var(--line)!important;border-radius:14px!important;box-shadow:0 6px 18px rgba(31,38,58,.05)!important;overflow:hidden}.customer-finance-month-header{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:14px 16px!important;background:#fff!important}.customer-finance-month-identity{display:flex;align-items:center;gap:11px}.customer-finance-month-identity>span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;color:#76508d;background:#f1eaf5}.customer-finance-month-identity small,.customer-finance-month-summary small{display:block;color:var(--ink-soft);font-size:.56rem;text-transform:uppercase;letter-spacing:.05em}.customer-finance-month-identity h3{float:none!important;margin:2px 0 0!important;color:var(--ink);font-size:.82rem!important}.customer-finance-month-summary{display:flex;align-items:center;justify-content:flex-end;gap:22px}.customer-finance-month-summary>div{text-align:right}.customer-finance-month-summary strong{display:block;margin-top:2px;color:var(--navy);font-size:.72rem}.customer-finance-month-summary .btn-tool{display:grid;place-items:center;width:31px;height:31px;margin:0;padding:0;border:1px solid #e6dfe9;border-radius:8px;color:#756a7b;background:#fff}.customer-finance-month-table{margin:0}.customer-finance-month-table td,.customer-finance-month-table th{vertical-align:middle}.customer-finance-empty{display:flex;align-items:center;justify-content:center;gap:12px;min-height:105px;padding:20px;color:#24805f}.customer-finance-empty>i{font-size:1.25rem}.customer-finance-empty strong,.customer-finance-empty span{display:block}.customer-finance-empty strong{color:var(--ink);font-size:.76rem}.customer-finance-empty span{margin-top:3px;color:var(--ink-soft);font-size:.64rem}@media(max-width:767.98px){.customer-finance-month-header{grid-template-columns:1fr!important;gap:12px}.customer-finance-month-summary{justify-content:space-between;gap:10px}.customer-finance-month-summary>div{text-align:left}}
