:root {
  color-scheme: light;
  --ink:#26323c;
  --muted:#7c8792;
  --line:#e3e8ed;
  --line-strong:#d5dce3;
  --surface:#fff;
  --canvas:#f4f6f8;
  --sidebar:#26384b;
  --sidebar-deep:#1f3041;
  --purple:#409eff;
  --purple-soft:#e8f3ff;
  --teal:#22aaa6;
  --teal-dark:#168b88;
  --blue:#409eff;
  --green:#55b936;
  --green-soft:#eaf7e6;
  --amber:#eca82f;
  --amber-soft:#fff5df;
  --red:#ec5b67;
  --red-soft:#fdecef;
  font-family:Inter,"Noto Sans SC",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

* { box-sizing:border-box; }
html,body { min-height:100%; }
body { margin:0; background:var(--canvas); color:var(--ink); font-size:14px; }
button,input,textarea,select { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; }
button { color:inherit; }
[hidden] { display:none !important; }
h1,h2,h3,h4,p { margin-top:0; }

.app-shell { min-height:100vh; display:grid; grid-template-columns:258px minmax(0,1fr); }
.sidebar {
  position:fixed;
  inset:0 auto 0 0;
  z-index:20;
  width:258px;
  background:linear-gradient(180deg,var(--sidebar),var(--sidebar-deep));
  color:#d9e3ec;
  display:flex;
  flex-direction:column;
  box-shadow:2px 0 8px rgba(20,35,50,.12);
}
.sidebar-brand {
  height:72px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:0 24px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.brand-mark {
  width:36px;
  height:36px;
  display:inline-grid;
  place-items:center;
  border-radius:11px;
  background:linear-gradient(135deg,#8173ee,#42bbb4);
  color:white;
  font-weight:800;
  box-shadow:0 6px 16px rgba(0,0,0,.15);
}
.brand-word { display:inline; color:white; font-size:17px; font-weight:750; }
.side-navigation { display:grid; padding-top:12px; }
.nav-item {
  position:relative;
  width:100%;
  min-height:64px;
  display:flex;
  align-items:center;
  gap:16px;
  padding:10px 24px;
  border:0;
  border-left:3px solid transparent;
  background:transparent;
  color:#aebdca;
  font-size:16px;
  cursor:default;
}
.nav-item:hover:not(:disabled) { background:rgba(255,255,255,.045); }
.nav-item.active {
  border-left-color:#409eff;
  background:rgba(0,0,0,.14);
  color:#409eff;
}
.nav-item:disabled { opacity:.55; }
.nav-icon {
  width:24px;
  height:24px;
  flex:0 0 24px;
  display:grid;
  place-items:center;
}
.nav-icon svg {
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.nav-item > span:last-child { display:grid; gap:3px; text-align:left; }
.nav-item small { display:block; color:#8fa0af; font-size:10px; }
.logout-button {
  width:100%;
  min-height:62px;
  margin-top:auto;
  border:0;
  border-top:1px solid rgba(255,255,255,.08);
  background:transparent;
  color:#aebdca;
  display:flex;
  align-items:center;
  gap:15px;
  padding:0 25px;
  font-size:14px;
  cursor:pointer;
}
.logout-button span:first-child { font-size:23px; }

.workspace { grid-column:2; min-width:0; }
.topbar {
  position:sticky;
  top:0;
  z-index:15;
  height:70px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:0 26px;
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.97);
  box-shadow:0 1px 4px rgba(29,45,61,.05);
}
.topbar-title,.topbar-actions { display:flex; align-items:center; gap:22px; }
.topbar-portal-title { font-size:16px; font-weight:750; white-space:nowrap; }
.language-toggle {
  min-width:48px;
  height:34px;
  padding:0 11px;
  border:1px solid var(--line-strong);
  border-radius:4px;
  background:white;
  color:#56616c;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
}
.user-chip { display:flex; align-items:center; gap:8px; font-weight:650; }
.user-avatar {
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--purple-soft);
  color:var(--purple);
  font-size:12px;
  font-weight:800;
}

.page-tabs {
  height:50px;
  display:flex;
  align-items:end;
  gap:6px;
  padding:7px 20px 0;
  border-bottom:1px solid var(--line-strong);
  background:white;
}
.page-tabs.empty { height:0; padding:0; border:0; overflow:hidden; }
.page-tab {
  height:34px;
  display:flex;
  align-items:center;
  gap:20px;
  padding:0 14px;
  border:1px solid var(--line-strong);
  border-bottom:0;
  background:#fafbfc;
  color:#66727d;
  white-space:nowrap;
}
.page-tab.active { background:#409eff; border-color:#409eff; color:white; }
.page-tab.disabled { color:#9da5ad; }
.tab-close {
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  margin-right:-6px;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  font-size:18px;
  line-height:1;
  cursor:pointer;
}

.main-content { min-width:0; padding:28px; }
.empty-workspace { min-height:calc(100vh - 126px); }
.content-heading {
  display:none;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:22px;
}
.eyebrow {
  margin-bottom:7px;
  color:var(--purple);
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
h1 { margin-bottom:0; font-size:24px; letter-spacing:-.025em; }
h2 { margin-bottom:0; font-size:16px; }
h3 { margin:3px 0 0; font-size:17px; }
h4 { margin:0 0 8px; font-size:13px; color:var(--muted); }
.content-description,.muted { margin-bottom:0; color:var(--muted); }

.filter-panel {
  min-height:132px;
  display:grid;
  grid-template-columns:minmax(190px,1fr) minmax(170px,.72fr) minmax(270px,1.05fr) minmax(190px,.85fr) auto;
  align-items:flex-end;
  gap:22px;
  padding:25px 0 20px;
  border:0;
  background:transparent;
}
.filter-field { display:grid; gap:9px; color:#4d5863; font-weight:650; }
.filter-search { width:auto; }
.filter-field input,.filter-field select {
  width:100%;
  height:42px;
  padding:0 13px;
  border:1px solid var(--line-strong);
  border-radius:4px;
  outline:0;
  background:white;
  color:var(--ink);
  font-weight:400;
}
.filter-field input:focus,.filter-field select:focus {
  border-color:var(--teal);
  box-shadow:0 0 0 3px rgba(34,170,166,.1);
}
.filter-field select { appearance:auto; }
.date-filter { min-width:0; margin:0; padding:0; border:0; }
.date-filter legend { margin-bottom:9px; padding:0; color:#4d5863; font-weight:650; }
.date-filter div { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:7px; }
.date-filter input { min-width:0; padding:0 8px; }
.filter-actions { display:flex; gap:10px; }
.search-button,.reset-button,.export-button {
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 20px;
  border-radius:4px;
  font-weight:650;
  cursor:pointer;
}
.search-button { border:1px solid var(--teal); background:var(--teal); color:white; }
.search-button:hover { background:var(--teal-dark); border-color:var(--teal-dark); }
.reset-button { border:1px solid var(--line-strong); background:white; color:#65717c; }
.export-button { border:1px solid #f0a812; background:#ffb900; color:white; }
.export-button:disabled { opacity:.75; cursor:not-allowed; }

.table-toolbar {
  min-height:68px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:18px 0 12px;
}
.table-toolbar > div { display:flex; align-items:baseline; gap:12px; }
.table-toolbar span { color:var(--muted); font-size:12px; }
.table-toolbar > .table-toolbar-actions { align-items:center; }
.company-table-shell {
  width:100%;
  overflow:auto;
  border:1px solid var(--line);
  background:white;
}
.nav-group { display:grid; gap:4px; }
.nav-group .nav-item { width:100%; }
.nav-chevron { margin-left:auto; transition:transform .18s ease; }
.nav-item[aria-expanded="true"] .nav-chevron { transform:rotate(180deg); }
.nav-submenu { display:grid; gap:4px; padding:0 10px 4px 46px; }
.nav-submenu[hidden] { display:none; }
.nav-subitem { min-height:38px; padding:7px 12px; border:0; border-left:2px solid rgba(255,255,255,.18); background:transparent; color:#b9c9d7; text-align:left; cursor:pointer; }
.nav-subitem:hover,.nav-subitem.active { border-left-color:#44a9ff; background:rgba(68,169,255,.12); color:#fff; }
.brazil-registration-filter { grid-template-columns:minmax(300px,1fr) auto; }
.brazil-onboarding-summary { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:18px; padding:18px; border:1px solid var(--line); background:#fafbfd; }
.brazil-onboarding-summary p { margin:0; color:var(--muted); }
#brazil-registration-detail .brazil-registration-workspace { padding:24px; border:1px solid var(--line); background:#fff; }
.crm-filter-panel {
  display:grid;
  grid-template-columns:minmax(260px,1.35fr) repeat(3,minmax(160px,.72fr)) auto;
  align-items:end;
  gap:18px;
  padding:4px 0 20px;
}
.crm-filter-panel .filter-field input,.crm-filter-panel .filter-field select {
  width:100%;
  height:42px;
  padding:0 12px;
  border:1px solid var(--line-strong);
  border-radius:4px;
  background:white;
  outline:0;
}
.crm-filter-panel .filter-field input:focus,.crm-filter-panel .filter-field select:focus {
  border-color:var(--teal);
  box-shadow:0 0 0 3px rgba(34,170,166,.1);
}
.crm-toolbar { padding-top:10px; }
.new-lead-button {
  height:42px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:0 18px;
  border:1px solid var(--teal);
  border-radius:4px;
  background:var(--teal);
  color:white;
  font-weight:700;
  cursor:pointer;
}
.crm-toolbar-actions { display:flex; align-items:center; gap:10px; }
.consultation-table { min-width:1400px; }
.consultation-detail { color:#44515d; }
.consultation-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:0; }
.consultation-fields div { padding:12px; border:1px solid var(--line); border-radius:10px; background:#fff; }
.consultation-fields dt { color:var(--muted); font-size:12px; margin-bottom:5px; }
.consultation-fields dd { margin:0; white-space:pre-wrap; overflow-wrap:anywhere; }
.onboarding-button {
  height:42px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:0 18px;
  border:1px solid #efad2e;
  border-radius:4px;
  background:#ffbd3f;
  color:#5f4200;
  font-weight:700;
  cursor:pointer;
}
.crm-table-shell {
  width:100%;
  overflow:auto;
  border:1px solid var(--line);
  background:white;
  max-height:calc(100vh - 286px);
}
.crm-table {
  width:4720px;
  border-collapse:separate;
  border-spacing:0;
  table-layout:fixed;
}
.crm-table th,.crm-table td {
  height:58px;
  padding:9px 12px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:white;
  text-align:center;
  vertical-align:middle;
}
.crm-table th {
  position:sticky;
  top:0;
  z-index:4;
  height:52px;
  background:#fafbfc;
  color:#596571;
  font-weight:700;
  white-space:nowrap;
}
.crm-table tbody tr { cursor:pointer; }
.crm-table tr:hover td { background:#f8fbfc; }
.crm-table tbody tr:focus-visible { outline:3px solid rgba(34,170,166,.28); outline-offset:-3px; }
.crm-table th:nth-child(1),.crm-table td:nth-child(1) { width:135px; }
.crm-table th:nth-child(2),.crm-table td:nth-child(2) { width:145px; }
.crm-table th:nth-child(3),.crm-table td:nth-child(3) { width:215px; }
.crm-table th:nth-child(4),.crm-table td:nth-child(4) { width:125px; }
.crm-table th:nth-child(5),.crm-table td:nth-child(5) { width:210px; }
.crm-table th:nth-child(6),.crm-table td:nth-child(6) { width:190px; }
.crm-table th:nth-child(7),.crm-table td:nth-child(7) { width:220px; }
.crm-table th:nth-child(8),.crm-table td:nth-child(8) { width:180px; }
.crm-table th:nth-child(9),.crm-table td:nth-child(9) { width:180px; }
.crm-table th:nth-child(10),.crm-table td:nth-child(10) { width:280px; }
.crm-table th:nth-child(11),.crm-table td:nth-child(11) { width:240px; }
.crm-table th:nth-child(12),.crm-table td:nth-child(12) { width:210px; }
.crm-table th:nth-child(13),.crm-table td:nth-child(13) { width:230px; }
.crm-table th:nth-child(14),.crm-table td:nth-child(14) { width:190px; }
.crm-table th:nth-child(15),.crm-table td:nth-child(15) { width:105px; }
.crm-table th:nth-child(16),.crm-table td:nth-child(16) { width:115px; }
.crm-table th:nth-child(17),.crm-table td:nth-child(17) { width:260px; }
.crm-table th:nth-child(18),.crm-table td:nth-child(18) { width:220px; }
.crm-table th:nth-child(19),.crm-table td:nth-child(19) { width:190px; }
.crm-table th:nth-child(20),.crm-table td:nth-child(20) { width:160px; }
.crm-table th:nth-child(21),.crm-table td:nth-child(21) { width:170px; }
.crm-table th:nth-child(22),.crm-table td:nth-child(22),
.crm-table th:nth-child(23),.crm-table td:nth-child(23) { width:130px; }
.crm-table th:nth-child(24),.crm-table td:nth-child(24) { width:145px; }
.crm-table th:nth-child(25),.crm-table td:nth-child(25),
.crm-table th:nth-child(26),.crm-table td:nth-child(26) { width:155px; }
.crm-table th:nth-child(27),.crm-table td:nth-child(27) { width:110px; }
.crm-frozen { position:sticky; z-index:2; }
.crm-frozen-1 { left:0; }
.crm-frozen-2 { left:135px; box-shadow:7px 0 10px rgba(29,45,61,.06); }
th.crm-frozen { z-index:6; background:#f4f8fb; }
td.crm-frozen { background:#fbfdfe; }
.crm-table tr:hover td.crm-frozen { background:#f3f9fb; }
.consultation-table {
  width:1380px;
}
.consultation-table th,.consultation-table td {
  height:52px;
  padding:7px 9px;
}
.consultation-table th:nth-child(1),.consultation-table td:nth-child(1) { width:120px; }
.consultation-table th:nth-child(2),.consultation-table td:nth-child(2) { width:130px; }
.consultation-table th:nth-child(3),.consultation-table td:nth-child(3) { width:135px; }
.consultation-table th:nth-child(4),.consultation-table td:nth-child(4) { width:185px; }
.consultation-table th:nth-child(5),.consultation-table td:nth-child(5) { width:145px; }
.consultation-table th:nth-child(6),.consultation-table td:nth-child(6) { width:75px; }
.consultation-table th:nth-child(7),.consultation-table td:nth-child(7) { width:120px; }
.consultation-table th:nth-child(8),.consultation-table td:nth-child(8) { width:245px; }
.consultation-table th:nth-child(9),.consultation-table td:nth-child(9) { width:125px; }
.consultation-table th:nth-child(10),.consultation-table td:nth-child(10) { width:100px; }
.consultation-frozen { position:sticky; z-index:2; background:#fbfdfe !important; }
.consultation-frozen-1 { left:0; }
.consultation-frozen-2 { left:120px; }
.consultation-frozen-3 { left:250px; box-shadow:7px 0 10px rgba(29,45,61,.08); }
th.consultation-frozen { z-index:6; background:#f4f8fb !important; }
.consultation-table tr:hover td.consultation-frozen { background:#f3f9fb !important; }
.crm-cell-text {
  display:block;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.crm-country,.crm-manager {
  display:inline-flex;
  padding:4px 8px;
  border-radius:999px;
  background:#e8f3ff;
  color:#287fce;
  font-size:12px;
  font-weight:650;
  white-space:nowrap;
}
.crm-manager { background:#f0edff; color:#6755c9; }
.crm-status {
  display:inline-flex;
  max-width:100%;
  padding:5px 8px;
  border-radius:999px;
  font-size:12px;
  font-weight:650;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.crm-status-positive { background:#eaf7e6; color:#3f9926; }
.crm-status-progress { background:#fff5df; color:#a86e02; }
.crm-status-risk { background:#fdecef; color:#c5424e; }
.crm-tag-list { display:flex; justify-content:center; flex-wrap:wrap; gap:4px; }
.crm-tag-list span {
  padding:3px 7px;
  border:1px solid #d9e6f2;
  border-radius:3px;
  background:#f5f9fc;
  color:#526d84;
  font-size:11px;
  white-space:nowrap;
}
.crm-number { font-variant-numeric:tabular-nums; white-space:nowrap; }
.crm-inline-text {
  display:block;
  min-height:34px;
  padding:7px 8px;
  overflow:hidden;
  border:1px solid transparent;
  border-radius:3px;
  outline:0;
  text-align:left;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.crm-inline-text:empty::before { content:attr(data-placeholder); color:#a0a9b2; }
.crm-inline-text:hover { border-color:#d9e3eb; background:white; }
.crm-inline-text:focus { overflow:visible; border-color:var(--teal); background:white; box-shadow:0 0 0 3px rgba(34,170,166,.1); white-space:normal; }
.crm-inline-input,.crm-inline-select {
  width:100%;
  height:36px;
  padding:0 7px;
  border:1px solid #d9e3eb;
  border-radius:3px;
  background:white;
  color:#4d5964;
  outline:0;
}
.crm-inline-input:focus,.crm-inline-select:focus { border-color:var(--teal); box-shadow:0 0 0 3px rgba(34,170,166,.1); }
.crm-number-input { text-align:right; }
.crm-multi-editor { position:relative; }
.crm-multi-editor[open] { z-index:30; }
.crm-multi-editor > summary {
  min-height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:5px 7px;
  border:1px solid #d9e3eb;
  border-radius:3px;
  background:white;
  color:#89939c;
  cursor:pointer;
  list-style:none;
}
.crm-multi-editor > summary::-webkit-details-marker { display:none; }
.crm-multi-editor > summary::after { content:'⌄'; margin-left:7px; color:#8e99a3; }
.crm-multi-editor[open] > summary { border-color:var(--teal); box-shadow:0 0 0 3px rgba(34,170,166,.1); }
.crm-multi-menu {
  position:absolute;
  z-index:20;
  top:calc(100% + 5px);
  left:0;
  width:max-content;
  min-width:210px;
  max-width:290px;
  display:grid;
  gap:3px;
  padding:8px;
  border:1px solid var(--line-strong);
  border-radius:5px;
  background:white;
  box-shadow:0 12px 28px rgba(17,35,51,.18);
  text-align:left;
}
.crm-multi-menu label { display:flex; align-items:center; gap:8px; padding:6px 7px; border-radius:3px; cursor:pointer; }
.crm-multi-menu label:hover { background:#f1f7fa; }
.crm-multi-menu input[type="checkbox"] { accent-color:var(--teal); }
.crm-other-input {
  width:100%;
  height:34px;
  padding:0 8px;
  border:1px solid var(--line-strong);
  border-radius:3px;
  outline:0;
}
.duplicate-warning {
  grid-column:1/-1;
  padding:12px 14px;
  border:1px solid #efc15e;
  border-radius:4px;
  background:#fff8e7;
  color:#735000;
}
.duplicate-warning p { margin:4px 0; }
.duplicate-warning small { color:#8b6b24; }

.modal-backdrop {
  position:fixed;
  inset:0;
  z-index:100;
  display:grid;
  place-items:center;
  padding:24px;
  background:rgba(20,32,45,.48);
}
.modal-card {
  width:min(620px,100%);
  border-radius:7px;
  background:white;
  box-shadow:0 24px 70px rgba(10,25,40,.25);
}
.employee-invite-card {
  max-height:calc(100vh - 48px);
  overflow-y:auto;
  overscroll-behavior:contain;
}
.onboarding-modal-card {
  width:min(920px,100%);
  max-height:calc(100vh - 48px);
  overflow:auto;
}
.existing-client-company-card {
  width:min(880px,100%);
  max-height:calc(100vh - 48px);
  overflow:auto;
}
.existing-client-company-form { display:grid; gap:18px; padding:24px; }
.existing-client-lookup { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:12px; }
.existing-client-company-form label { display:grid; gap:8px; color:#44515d; font-weight:650; }
.existing-client-company-form input,.existing-client-company-form select {
  width:100%; height:42px; padding:0 11px; border:1px solid var(--line-strong); border-radius:4px; background:#fff; outline:0;
}
.existing-client-company-form input:focus,.existing-client-company-form select:focus { border-color:var(--teal); box-shadow:0 0 0 3px rgba(34,170,166,.1); }
.existing-client-company-form small { color:var(--muted); font-size:11px; font-weight:400; }
.existing-client-workspace-summary { overflow:hidden; border:1px solid var(--line); border-radius:6px; background:#fbfcfd; }
.existing-client-workspace-summary header { display:flex; justify-content:space-between; gap:16px; padding:14px 16px; border-bottom:1px solid var(--line); }
.existing-client-workspace-summary header div { display:grid; gap:3px; }
.existing-client-workspace-summary header span,.existing-client-workspace-summary li span { color:var(--muted); font-size:12px; }
.existing-client-workspace-summary ul { display:grid; gap:0; margin:0; padding:0; list-style:none; }
.existing-client-workspace-summary li { display:flex; justify-content:space-between; gap:16px; padding:11px 16px; border-top:1px solid #edf1f4; }
.existing-client-workspace-summary li:first-child { border-top:0; }
.existing-client-company-fields { display:grid; grid-template-columns:1fr 2fr; gap:16px; }
.existing-client-wide { grid-column:1/-1; }
.existing-client-company-fields .shareholder-grid { padding:0; }

.employee-table-shell {
  overflow:auto;
  border:1px solid var(--line);
  background:#fff;
}
.employee-table { min-width:1830px; }
.employee-table td { vertical-align:middle; }
.company-table.employee-table th:nth-child(1) { width:150px; }
.company-table.employee-table th:nth-child(2) { width:140px; }
.company-table.employee-table th:nth-child(3) { width:150px; }
.company-table.employee-table th:nth-child(4) { width:230px; }
.company-table.employee-table th:nth-child(5) { width:100px; }
.company-table.employee-table th:nth-child(6) { width:100px; }
.company-table.employee-table th:nth-child(7) { width:120px; }
.company-table.employee-table th:nth-child(8) { width:120px; }
.company-table.employee-table th:nth-child(9) { width:220px; }
.company-table.employee-table th:nth-child(10) { width:190px; }
.company-table.employee-table th:nth-child(11) { width:310px; }
.employee-table th:nth-child(9),.employee-table td:nth-child(9),.employee-table th:nth-child(10),.employee-table td:nth-child(10),.employee-actions,[data-employee-policy-summary] { white-space:nowrap; }
.employee-actions { white-space:nowrap; }
.employee-actions button { flex:0 0 auto; min-height:34px; padding:6px 12px; }
.employee-actions button + button { margin-left:8px; }
.crm-edit-modal-card {
  width:min(1080px,100%);
  max-height:calc(100vh - 48px);
  overflow:auto;
}
.modal-subtitle { margin:4px 0 0; color:var(--muted); font-size:13px; }
.crm-edit-form { display:grid; gap:20px; padding:24px; }
.crm-edit-section {
  padding:18px;
  border:1px solid var(--line);
  border-radius:6px;
  background:#fbfcfd;
}
.crm-edit-section h3 { margin:0 0 16px; color:#344352; font-size:15px; }
.crm-edit-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.crm-edit-grid label { display:grid; align-content:start; gap:7px; color:#44515d; font-size:13px; font-weight:650; }
.crm-edit-grid input,.crm-edit-grid select,.crm-edit-grid textarea {
  width:100%;
  min-height:42px;
  padding:9px 11px;
  border:1px solid var(--line-strong);
  border-radius:4px;
  background:white;
  color:var(--ink);
  font:inherit;
  outline:0;
}
.crm-edit-grid textarea { resize:vertical; }
.crm-edit-grid input:focus,.crm-edit-grid select:focus,.crm-edit-grid textarea:focus {
  border-color:var(--teal);
  box-shadow:0 0 0 3px rgba(34,170,166,.1);
}
.crm-edit-grid small { color:var(--muted); font-size:11px; font-weight:400; }
.crm-multiselect-field { position:relative; display:grid; align-content:start; gap:7px; color:#44515d; font-size:13px; font-weight:650; }
.crm-multiselect-field details { position:relative; }
.crm-multiselect-field summary {
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 34px 9px 11px;
  border:1px solid var(--line-strong);
  border-radius:4px;
  background:#fff;
  color:var(--ink);
  cursor:pointer;
  list-style:none;
}
.crm-multiselect-field summary::-webkit-details-marker { display:none; }
.crm-multiselect-field summary::after { content:'⌄'; position:absolute; right:12px; color:var(--muted); font-size:17px; }
.crm-multiselect-field details[open] summary { border-color:var(--teal); box-shadow:0 0 0 3px rgba(34,170,166,.1); }
.crm-multiselect-field [data-crm-multiselect-summary] { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.crm-multiselect-panel {
  position:absolute;
  z-index:30;
  top:calc(100% + 5px);
  left:0;
  right:0;
  max-height:290px;
  overflow:auto;
  padding:8px;
  border:1px solid var(--line-strong);
  border-radius:5px;
  background:#fff;
  box-shadow:0 12px 28px rgba(28,45,62,.16);
}
.crm-multiselect-actions { display:flex; justify-content:flex-end; gap:6px; padding:0 2px 7px; border-bottom:1px solid var(--line); }
.crm-multiselect-actions button { padding:4px 8px; border:0; background:transparent; color:var(--teal-dark); font-size:11px; font-weight:750; cursor:pointer; }
.crm-multiselect-panel [data-crm-checkbox-options] { display:grid; gap:2px; padding-top:6px; }
.crm-multiselect-panel label { min-height:34px; display:flex; grid-template-columns:none; align-items:center; gap:9px; padding:6px 8px; border-radius:4px; cursor:pointer; }
.crm-multiselect-panel label:hover { background:#f2f8fb; }
.crm-multiselect-panel input { width:16px; min-height:16px; height:16px; margin:0; padding:0; border:0; box-shadow:none; accent-color:var(--teal); }
.crm-multiselect-field.is-disabled summary { background:#f1f3f5; color:#8d969f; cursor:not-allowed; }
.crm-edit-wide { grid-column:span 3; }
.crm-edit-footer {
  position:sticky;
  bottom:-24px;
  margin:0 -24px -24px;
  padding:16px 24px;
  border-top:1px solid var(--line);
  background:white;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.crm-edit-footer-actions { display:flex; align-items:center; justify-content:flex-end; gap:12px; }
.danger-button {
  min-height:40px;
  padding:0 15px;
  border:1px solid #d95461;
  border-radius:4px;
  background:white;
  color:#bd3442;
  font-weight:700;
  cursor:pointer;
}
.danger-button:hover:not(:disabled) { background:#fff0f1; }
.danger-button:disabled { opacity:.55; cursor:not-allowed; }
.restore-button { border-color:#3e9b66; color:#277d4d; }
.restore-button:hover:not(:disabled) { background:#edf9f2; }
.crm-archived-row td { background:#fafafa; color:#75808a; }
.archive-modal-card { width:min(560px,100%); }
.archive-form { display:grid; gap:16px; padding:24px; }
.archive-form > p { margin:0; color:#596571; font-size:13px; line-height:1.6; }
.archive-form label { display:grid; gap:7px; color:#44515d; font-size:13px; font-weight:700; }
.archive-form textarea {
  width:100%;
  padding:10px 12px;
  border:1px solid var(--line-strong);
  border-radius:4px;
  color:var(--ink);
  font:inherit;
  line-height:1.5;
  resize:vertical;
}
.archive-form textarea:focus { border-color:var(--teal); outline:0; box-shadow:0 0 0 3px rgba(34,170,166,.1); }
.crm-edit-form.is-dirty #crm-edit-status { background:#fff8e8; color:#936300; }
.crm-edit-form.is-saving #crm-edit-status { background:#eaf7ff; color:#276f9a; }
.crm-edit-form.is-saved #crm-edit-status { background:#ebf8ef; color:#247342; }
.crm-edit-form.is-error #crm-edit-status { background:#fff0f1; color:#ae3541; }
.crm-history-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:14px;
}
.crm-history-heading h3 { margin-bottom:4px; }
.crm-history-heading small { color:var(--muted); font-size:11px; }
.crm-history-list { display:grid; }
.crm-history-event {
  position:relative;
  display:grid;
  grid-template-columns:12px minmax(0,1fr);
  gap:12px;
  padding:13px 0;
  border-top:1px solid var(--line);
}
.crm-history-event::before {
  content:"";
  width:9px;
  height:9px;
  margin-top:5px;
  border:2px solid #d9e9ff;
  border-radius:50%;
  background:#409eff;
}
.crm-history-meta { display:flex; align-items:baseline; flex-wrap:wrap; gap:6px 12px; }
.crm-history-meta strong { color:#344352; font-size:13px; }
.crm-history-meta span,.crm-history-meta time { color:var(--muted); font-size:11px; }
.crm-history-changes { display:grid; gap:5px; margin:8px 0 0; }
.crm-history-change { color:#596571; font-size:12px; overflow-wrap:anywhere; }
.crm-history-change b { color:#344352; }
.crm-history-arrow { padding:0 5px; color:#409eff; }
.crm-history-message { margin:0; padding:18px 0; color:var(--muted); font-size:12px; text-align:center; }
.modal-header {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  padding:22px 24px 18px;
  border-bottom:1px solid var(--line);
}
.modal-header h2 { font-size:20px; }
.modal-close {
  width:34px;
  height:34px;
  border:0;
  background:transparent;
  color:#7a8590;
  font-size:25px;
  cursor:pointer;
}
.new-lead-form { display:grid; grid-template-columns:1fr 1fr; gap:18px; padding:24px; }
.new-lead-form label { display:grid; gap:8px; font-weight:650; }
.new-lead-form input,.new-lead-form select {
  width:100%;
  height:42px;
  padding:0 11px;
  border:1px solid var(--line-strong);
  border-radius:4px;
  outline:0;
}
.new-lead-form input:focus,.new-lead-form select:focus { border-color:var(--teal); box-shadow:0 0 0 3px rgba(34,170,166,.1); }
.prototype-note { grid-column:1/-1; margin:0; padding:10px 12px; background:#fff8e8; color:#936300; font-size:12px; }
.modal-footer { grid-column:1/-1; display:flex; justify-content:flex-end; gap:10px; padding-top:4px; }
.onboarding-form { display:grid; gap:20px; padding:24px; }
.onboarding-basics,.company-fields {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.onboarding-form label { display:grid; gap:8px; color:#44515d; font-weight:650; }
.onboarding-form input,.onboarding-form select {
  width:100%;
  height:42px;
  padding:0 11px;
  border:1px solid var(--line-strong);
  border-radius:4px;
  background:white;
  outline:0;
}
.onboarding-form input:focus,.onboarding-form select:focus { border-color:var(--teal); box-shadow:0 0 0 3px rgba(34,170,166,.1); }
.onboarding-form select:disabled { background:#f2f4f6; color:#a0a8b0; cursor:not-allowed; }
.onboarding-companies { display:grid; gap:18px; }
.onboarding-company {
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:6px;
  background:#fbfcfd;
}
.onboarding-company > header {
  display:flex;
  align-items:center;
  gap:12px;
  padding:15px 18px;
  border-bottom:1px solid var(--line);
  background:#f4f8fb;
}
.onboarding-company h3 { margin:0 0 2px; font-size:16px; }
.onboarding-company header p { margin:0; color:#7b8792; font-size:12px; }
.company-step {
  display:grid;
  width:30px;
  height:30px;
  place-items:center;
  border-radius:50%;
  background:var(--teal);
  color:white;
  font-weight:750;
}
.company-fields {
  grid-template-columns:2fr 1fr 1fr;
  padding:18px;
}
.shareholder-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  padding:0 18px 18px;
}
.shareholder-grid:empty { display:none; }
.onboarding-company .shareholder-card {
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:12px;
  margin:0;
  padding:12px;
  border:1px solid #dce7ef;
  border-radius:5px;
  background:white;
}
.shareholder-card legend { padding:0 5px; color:var(--teal-dark); font-size:12px; font-weight:750; }
.company-table {
  width:100%;
  min-width:1180px;
  border-collapse:separate;
  border-spacing:0;
  table-layout:fixed;
}
.company-table th,.company-table td {
  height:52px;
  padding:10px 16px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:white;
  text-align:center;
  vertical-align:middle;
}
.company-table th {
  height:50px;
  position:sticky;
  top:0;
  z-index:2;
  background:#fafbfc;
  color:#596571;
  font-weight:700;
  white-space:nowrap;
}
.company-table tr:last-child td { border-bottom:0; }
.company-table th:last-child,.company-table td:last-child { border-right:0; }
.company-table th:nth-child(1) { width:155px; }
.company-table th:nth-child(2) { width:220px; }
.company-table th:nth-child(3) { width:145px; }
.company-table th:nth-child(4) { width:135px; }
.company-table th:nth-child(5) { width:170px; }
.company-table th:nth-child(6),.company-table th:nth-child(7) { width:190px; }
.company-table th:nth-child(8) { width:100px; }
.company-row { cursor:pointer; }
.company-row:hover td { background:#f8fbfc; }
.registration-number { color:#5d6874; font-weight:650; }
.table-company-name { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.entity-badge,.status-badge,.name-status-badge {
  display:inline-flex;
  width:max-content;
  max-width:100%;
  justify-content:center;
  padding:5px 9px;
  border-radius:999px;
  font-size:12px;
  line-height:1.2;
  font-weight:650;
  white-space:nowrap;
}
.entity-badge { background:#e8f3ff; color:#2784da; }
.name-status-approved { background:var(--green-soft); color:#3f9926; }
.name-status-pending { background:var(--amber-soft); color:#b87604; }
.status-badge { background:#edf1f4; color:#65717c; }
.status-received { background:#f1f5f9; color:#475569; }
.status-documents_under_review { background:#fef3c7; color:#92400e; }
.status-sent_to_notary { background:#ffedd5; color:#9a3412; }
.status-incorporation_deed_sent { background:#f3e8ff; color:#7e22ce; }
.status-incorporation_deed_signed { background:#e0e7ff; color:#4338ca; }
.status-notarized { background:#cffafe; color:#0e7490; }
.status-tax_address { background:#ccfbf1; color:#0f766e; }
.status-rfc { background:#dbeafe; color:#1d4ed8; }
.status-e_firma { background:#d1fae5; color:#047857; }
.status-completed { background:#dcfce7; color:#15803d; }
.status-on_hold { background:#fef3c7; color:#a16207; }
.status-failed { background:#fee2e2; color:#b91c1c; }
.company-table time { color:#697580; white-space:nowrap; }
.company-registration-table { min-width:1655px; }
.company-registration-table th:nth-child(1) { width:145px; }
.company-registration-table th:nth-child(2) { width:220px; }
.company-registration-table th:nth-child(3) { width:155px; }
.company-registration-table th:nth-child(4) { width:180px; }
.company-registration-table th:nth-child(5) { width:240px; }
.company-registration-table th:nth-child(6) { width:170px; }
.company-registration-table th:nth-child(7),
.company-registration-table th:nth-child(8),
.company-registration-table th:nth-child(9) { width:190px; }
.company-registration-table th:nth-child(10) { width:100px; }
.company-registration-table .registration-frozen { position:sticky; z-index:2; }
.company-registration-table .registration-frozen-1 { left:0; }
.company-registration-table .registration-frozen-2 { left:145px; box-shadow:7px 0 10px rgba(29,45,61,.06); }
.company-registration-table th.registration-frozen { z-index:4; background:#fafbfc; }
.company-registration-table td.registration-frozen { background:#fff; }
.company-registration-table .company-row:hover td.registration-frozen { background:#f8fbfc; }
.operation-column {
  position:sticky;
  right:0;
  z-index:1;
  box-shadow:-5px 0 9px rgba(29,45,61,.04);
}
th.operation-column { z-index:3; background:#fafbfc; }
.view-button {
  padding:6px 10px;
  border:0;
  background:transparent;
  color:#2b8fe8;
  font-weight:650;
  cursor:pointer;
}
.view-button:hover { text-decoration:underline; }
.empty-state { padding:46px 20px; text-align:center; color:var(--muted); }
.error-state { color:#b83b48; }
.table-footer {
  min-height:54px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  padding:10px 4px;
  color:#68747f;
}
.table-footer button {
  min-width:36px;
  height:34px;
  border:1px solid var(--line);
  border-radius:3px;
  background:white;
}
.table-footer .current-page { border-color:var(--purple); background:var(--purple); color:white; }
.page-size { margin-left:8px; padding:8px 12px; border:1px solid var(--line); background:white; }

.back-button {
  margin:0 0 18px;
  padding:9px 13px;
  border:1px solid var(--line-strong);
  border-radius:4px;
  background:white;
  color:var(--purple);
  cursor:pointer;
}
.detail-header {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:30px;
  margin-bottom:18px;
  padding:22px;
  border:1px solid var(--line);
  background:white;
}
.company-name-line { display:flex; align-items:center; flex-wrap:wrap; gap:9px; }
.detail-company-name { gap:12px; }
.panel {
  margin-top:18px;
  padding:22px;
  border:1px solid var(--line);
  background:white;
}
.panel-title {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin:0 0 18px;
  padding-bottom:14px;
  border-bottom:1px solid var(--line);
}
.panel-title span { color:var(--muted); font-size:13px; }
.shareholder-grid { display:grid; gap:14px; }
.company-shareholder-grid .shareholder-card {
  min-width:0;
  border:1px solid var(--line);
  padding:18px;
  overflow:hidden;
}
.shareholder-heading { display:flex; justify-content:space-between; gap:20px; }
.shareholder-heading small { color:var(--muted); }
.shareholder-heading > strong { color:var(--purple); }
.shareholder-name-pair { display:flex; flex-wrap:wrap; column-gap:24px; row-gap:3px; }
dl { display:flex; flex-wrap:wrap; gap:22px 36px; margin:20px 0; padding:16px 0; border-block:1px solid var(--line); }
dt { margin-bottom:4px; color:var(--muted); font-size:11px; text-transform:uppercase; letter-spacing:.06em; }
dd { margin:0; font-size:13px; }
.document-list { display:grid; }
.document-row {
  min-height:54px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:10px 0;
  border-bottom:1px solid var(--line);
}
.document-row:last-child { border-bottom:0; }
.document-row span:first-child { min-width:0; display:grid; gap:4px; }
.document-row strong { font-size:13px; }
.document-row small { color:var(--muted); font-size:11px; overflow-wrap:anywhere; }
.document-link { color:#2b8fe8; font-size:12px; font-weight:650; text-decoration:none; white-space:nowrap; }
.not-received { color:#9aa3ac; font-size:12px; white-space:nowrap; }
.processing-section { min-width:0; max-width:100%; margin-top:18px; padding:16px; border:1px solid #dfe5ea; background:#f9fafb; overflow:hidden; }
.processing-heading,.processing-document,.processing-actions,.processing-footer { display:flex; align-items:center; gap:12px; }
.processing-heading { justify-content:space-between; margin-bottom:10px; }
.processing-heading h4 { margin:0; color:var(--ink); }
.processing-state { padding:4px 8px; border-radius:999px; background:#edf1f4; color:var(--muted); font-size:11px; font-weight:700; }
.processing-review { background:var(--amber-soft); color:#b87604; }
.processing-approved { background:var(--green-soft); color:#3f9926; }
.processing-document { justify-content:space-between; min-height:48px; border-top:1px solid var(--line); flex-wrap:wrap; }
.processing-document > span { min-width:0; flex:1 1 260px; display:grid; gap:3px; }
.processing-document small { color:var(--muted); font-size:11px; overflow-wrap:anywhere; }
.processing-actions { justify-content:flex-end; flex-wrap:wrap; }
.processing-footer { justify-content:flex-end; margin-top:12px; }
.processing-button { min-width:120px; padding:0 18px; }
.processing-error { margin:8px 0 0; color:#b83b48; font-size:12px; }
.shareholder-deed-fields { margin-bottom:14px; padding-bottom:14px; border-bottom:1px solid var(--line); }
.notary-address-field,.shareholder-tax-id-field { display:grid; gap:7px; margin-bottom:14px; }
.notary-address-field label,.shareholder-tax-id-field span { font-size:12px; font-weight:700; }
.notary-address-field textarea,.shareholder-tax-id-field input,.deed-input-grid input {
  width:100%;
  padding:10px 12px;
  border:1px solid var(--line-strong);
  border-radius:4px;
  background:white;
  color:var(--ink);
}
.notary-address-field textarea { min-height:92px; resize:vertical; line-height:1.45; }
.shareholder-tax-id-field input,.deed-input-grid input { height:42px; }
.notary-address-field textarea:focus,.shareholder-tax-id-field input:focus,.deed-input-grid input:focus {
  border-color:var(--teal);
  outline:0;
  box-shadow:0 0 0 3px rgba(34,170,166,.1);
}
.notary-address-field small { color:var(--muted); font-size:11px; }
.shareholder-details-save { display:flex; justify-content:flex-end; }
.deed-input-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.deed-input-grid label { display:grid; gap:7px; }
.deed-input-grid label span { font-size:12px; font-weight:700; }
.deed-render-footer { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:16px; }
.deed-render-footer p { margin:0; font-size:12px; }
.deed-render-button { min-width:210px; padding:0 18px; }
.primary-button,.secondary-button {
  min-height:40px;
  padding:0 14px;
  border-radius:4px;
  font-weight:650;
  cursor:pointer;
}
.primary-button { border:1px solid var(--teal); background:var(--teal); color:white; }
.secondary-button { border:1px solid var(--line-strong); background:white; color:var(--teal-dark); font-size:12px; }
.primary-button:disabled,.secondary-button:disabled { opacity:.65; }
.store-panel .panel-title { align-items:flex-start; }
.store-panel .panel-title h2,.store-panel .panel-title p { margin:0; }
.store-panel .panel-title p { margin-top:5px; font-size:12px; }
.store-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:12px; }
.store-card { padding:16px; border:1px solid var(--line); border-radius:5px; background:#fbfcfd; }
.store-card small { color:var(--teal-dark); font-weight:700; }
.store-card h3 { margin:5px 0 0; }
.store-card dl { margin:14px 0 0; padding:12px 0 0; gap:16px 28px; border-bottom:0; }
.store-activate-button { width:100%; margin-top:14px; }
.store-empty { grid-column:1/-1; margin:0; padding:12px 0; }
.store-create-modal-card { width:min(680px,100%); }
.store-create-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; padding:24px; }
.store-create-form > label { display:grid; gap:7px; }
.store-create-form > label:first-of-type { grid-column:1/-1; }
.store-create-form label span { font-size:12px; font-weight:700; }
.store-create-form input,.store-create-form select { height:42px; padding:0 12px; border:1px solid var(--line-strong); border-radius:4px; background:white; }
.store-create-form input:focus,.store-create-form select:focus { border-color:var(--teal); outline:0; box-shadow:0 0 0 3px rgba(34,170,166,.1); }
.store-confirmation { grid-column:1/-1; padding:16px; border:1px solid #b8dfdd; border-radius:5px; background:#f2fbfa; }
.store-confirmation dl { margin:12px 0 0; padding:12px 0 0; border-bottom:0; }
.store-create-form .prototype-note,.store-create-form .duplicate-warning { grid-column:1/-1; }
@media (max-width:680px) { .store-create-form { grid-template-columns:1fr; } .store-create-form > label:first-of-type { grid-column:auto; } }
.timeline { display:grid; }
.timeline-item { position:relative; display:grid; grid-template-columns:16px 1fr; gap:12px; padding-bottom:24px; }
.timeline-item:not(:last-child)::before { content:""; position:absolute; left:5px; top:13px; bottom:0; width:1px; background:var(--line); }
.timeline-dot { position:relative; z-index:1; width:11px; height:11px; margin-top:3px; border:3px solid var(--purple-soft); border-radius:50%; background:var(--purple); }
.timeline-item p { margin:5px 0; color:var(--muted); font-size:13px; }
.timeline-item time { color:#939ca5; font-size:11px; }
.onboarding-filter-panel {
  display:grid;
  grid-template-columns:minmax(300px,2fr) minmax(180px,1fr) auto;
  gap:18px;
  align-items:end;
  padding:22px;
  margin-bottom:20px;
  border:1px solid var(--line);
  background:#fff;
}
.onboarding-table-shell { overflow:auto; border:1px solid var(--line); background:#fff; }
.onboarding-table-shell .company-table { min-width:1380px; }
.onboarding-table-shell .company-table th:nth-child(1),
.onboarding-table-shell .company-table td:nth-child(1) { width:145px; }
.onboarding-table-shell .company-table th:nth-child(2),
.onboarding-table-shell .company-table td:nth-child(2) { width:240px; }
.onboarding-frozen { position:sticky; z-index:3; }
.onboarding-frozen-1 { left:0; }
.onboarding-frozen-2 { left:145px; box-shadow:7px 0 10px rgba(29,45,61,.06); }
.onboarding-table-shell th.onboarding-frozen { z-index:6; background:#fafbfc; }
.onboarding-table-shell td.onboarding-frozen { background:#fff; }
.onboarding-table-shell tbody tr:hover td.onboarding-frozen { background:#f7fafc; }
#accounting-list-view {
  display:grid;
  grid-template-rows:auto auto minmax(320px,1fr);
  height:calc(100vh - 182px);
  min-height:0;
  overflow:hidden;
}
.accounting-table-shell { min-height:0; overflow:auto; border:1px solid var(--line); background:#fff; }
.accounting-table-shell .company-table { min-width:1180px; }
.accounting-table-shell thead th { position:sticky; top:0; z-index:2; background:#f8fafb; }
.accounting-table-shell .company-table th:first-child,
.accounting-table-shell .company-table td:first-child {
  position:sticky;
  left:0;
  z-index:3;
  min-width:220px;
  border-right:1px solid var(--line);
  background:#fff;
  box-shadow:8px 0 12px rgba(29,45,61,.07);
}
.accounting-table-shell .company-table thead th:first-child {
  z-index:5;
  background:#f8fafb;
}
.accounting-table-shell .company-table th:last-child,
.accounting-table-shell .company-table td:last-child {
  position:sticky;
  right:0;
  z-index:3;
  min-width:116px;
  border-left:1px solid var(--line);
  background:#fff;
  box-shadow:-8px 0 12px rgba(29,45,61,.07);
}
.accounting-table-shell .company-table thead th:last-child {
  z-index:5;
  background:#f8fafb;
}
.accounting-table-shell .company-table tbody tr:hover td:last-child { background:#f7fafc; }
.accounting-table-shell .company-table tbody tr:hover td:first-child { background:#f7fafc; }
.accounting-client-pending { color:#9a6700; font-size:12px; font-weight:700; white-space:nowrap; }
.accounting-period { margin-bottom:18px; }
.accounting-month-tabs { display:flex; gap:8px; margin:20px 0 0; overflow:auto; border-bottom:1px solid var(--line); }
.accounting-month-tabs button { flex:0 0 auto; padding:11px 18px; border:1px solid var(--line); border-bottom:0; border-radius:8px 8px 0 0; background:#f8fafb; color:var(--muted); font:inherit; font-weight:800; cursor:pointer; }
.accounting-month-tabs button.active { background:#fff; color:var(--purple); border-color:#b9c9ff; box-shadow:inset 0 3px 0 var(--purple); }
.accounting-month-workspace { padding:22px; border:1px solid var(--line); border-top:0; background:#fff; }
.accounting-company-month { margin-bottom:24px; padding:20px; border:1px solid var(--line); border-radius:8px; background:#fbfcfd; }
.accounting-company-month .panel-title { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.accounting-company-month .panel-title h2,.accounting-company-month .panel-title p { margin:0; }
.accounting-activation-notice { margin-top:18px; padding:12px 14px; border:1px solid #b9e5d7; border-radius:7px; background:#edf9f5; color:#157c69; font-weight:700; }
.accounting-recovery { margin-top:22px; padding:14px 18px; border:1px dashed #bdc9d4; border-radius:8px; background:#fafcfd; }
.accounting-recovery summary { color:var(--muted); font-weight:800; cursor:pointer; }
.accounting-recovery-list { display:grid; gap:8px; margin-top:12px; }
.accounting-recovery-list > div { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:10px 0; border-top:1px solid var(--line); }
.accounting-recovery-list span { display:grid; gap:3px; }
.accounting-recovery-list small { color:var(--muted); }
.accounting-review-actions { display:flex; align-items:center; gap:8px; }
.accounting-review-actions a { color:#2496ef; font-size:12px; font-weight:700; text-decoration:none; }
.accounting-review-actions button { min-height:34px; padding:0 12px; }
.accounting-reopen { margin-top:16px; }
.accounting-hierarchy-section { margin-top:22px; }
.accounting-section-title { display:flex; align-items:end; justify-content:space-between; gap:16px; margin-bottom:14px; }
.accounting-section-title h2,.accounting-section-title p { margin:0; }
.accounting-section-title > span { color:var(--muted); font-size:12px; font-weight:700; }
.employee-store-list { display:grid; gap:18px; }
.employee-store-card { overflow:hidden; border:1px solid var(--line); border-radius:8px; background:#fff; }
.employee-store-card > header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 20px; background:#f8fafb; border-bottom:1px solid var(--line); }
.employee-store-card > header h3 { margin:4px 0 0; font-size:18px; }
.employee-store-card > header small { color:var(--muted); }
.employee-store-period { padding:20px; border-bottom:1px solid var(--line); }
.employee-store-period:last-child { border-bottom:0; }
.employee-store-period-heading { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.employee-store-period-heading h4,.employee-store-period-heading p { margin:0; }
.store-missing-summary,.store-ready-summary { margin:14px 0; padding:9px 12px; border-radius:5px; font-size:12px; font-weight:700; }
.store-missing-summary { background:#fff7e6; color:#9a6512; }
.store-ready-summary { background:#eef9f5; color:var(--teal-dark); }
.store-accounting-document { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.store-accounting-document > span { display:grid; gap:3px; }
.store-accounting-document small { color:var(--muted); }
.store-period-complete { color:var(--muted); font-size:12px; font-weight:700; }
.accounting-review-accepted { color:#21866f; font-size:12px; font-weight:750; white-space:nowrap; }
.store-accounting-empty { padding:24px 20px; color:var(--muted); }
.accounting-tax-declaration { margin-top:24px; padding:20px; border:1px solid #cfd8e3; border-radius:8px; background:#fbfcfd; }
.accounting-tax-declaration .panel-title { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:16px; }
.accounting-tax-declaration .panel-title h2,.accounting-tax-declaration .panel-title p { margin:0; }
.tax-declaration-status { display:inline-flex; padding:5px 10px; border-radius:999px; background:#edf1f5; color:#53606c; font-size:11px; font-weight:800; white-space:nowrap; }
.tax-declaration-status-published { background:#e9f7e4; color:#36912d; }
.tax-declaration-status-reopened { background:#fff7e6; color:#9a6512; }
.tax-declaration-current { margin-bottom:18px; }
.tax-declaration-metadata { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.tax-declaration-metadata > div { display:grid; gap:4px; padding:12px; border:1px solid var(--line); border-radius:6px; background:#fff; }
.tax-declaration-metadata small,.tax-declaration-file small,.tax-declaration-submit small { color:var(--muted); }
.tax-declaration-file { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:12px; padding:12px; border:1px solid var(--line); border-radius:6px; background:#fff; }
.tax-declaration-file span { display:grid; gap:3px; min-width:0; }
.tax-declaration-file strong { overflow-wrap:anywhere; }
.tax-declaration-file a { flex:0 0 auto; color:#2496ef; font-size:12px; font-weight:800; text-decoration:none; }
.tax-declaration-empty,.tax-declaration-lock { margin:0 0 16px; padding:11px 13px; border-radius:6px; color:var(--muted); background:#f1f4f7; }
.tax-declaration-lock { color:#9a6512; background:#fff7e6; font-weight:700; }
.tax-declaration-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; padding-top:18px; border-top:1px solid var(--line); }
.tax-declaration-form label { display:grid; gap:6px; color:#53606c; font-size:12px; font-weight:750; }
.tax-declaration-form input,.tax-declaration-form textarea { width:100%; min-height:40px; padding:9px 11px; border:1px solid #cfd8e3; border-radius:6px; background:#fff; color:var(--ink); font:inherit; box-sizing:border-box; }
.tax-declaration-form textarea { resize:vertical; }
.tax-declaration-reason,.tax-declaration-submit { grid-column:1/-1; }
.tax-declaration-submit { display:flex; align-items:center; gap:12px; }
@media(max-width:680px){.tax-declaration-metadata,.tax-declaration-form{grid-template-columns:1fr}.tax-declaration-reason,.tax-declaration-submit{grid-column:auto}.tax-declaration-file,.tax-declaration-submit{align-items:flex-start;flex-direction:column}}
.onboarding-table-shell tbody tr { cursor:pointer; }
.onboarding-table-shell tbody tr:hover { background:#f7fafc; }
.table-link { border:0; background:none; color:#2496ef; font-weight:700; cursor:pointer; }
.onboarding-status {
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:4px 9px;
  border-radius:999px;
  background:#edf1f5;
  color:#53606c;
  font-size:11px;
  font-weight:750;
  white-space:nowrap;
}
.onboarding-status-submitted,.onboarding-status-complete,.onboarding-status-finalized,
.onboarding-status-locked,.onboarding-status-active,.onboarding-status-accepted {
  background:#e9f7e4;
  color:#36912d;
}
.onboarding-status-in_progress,.onboarding-status-invitations_sent,.onboarding-status-uploaded {
  background:#e8f3ff;
  color:#237dc5;
}
.onboarding-status-pending,.onboarding-status-sending { background:#fff5d9; color:#956b00; }
.onboarding-status-sent { background:#e9f7e4; color:#36912d; }
.onboarding-status-failed,.onboarding-status-unknown { background:#fff0f1; color:#c44c58; }
.onboarding-status-cancelled,.onboarding-status-rejected {
  background:#fff0f1;
  color:#c44c58;
}
.onboarding-status-overdue { background:#fff0f1; color:#c44c58; }
.onboarding-detail-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:22px 26px;
  margin-bottom:18px;
  border:1px solid var(--line);
  background:#fff;
}
.onboarding-detail-header h1 { margin:4px 0 0; }
.onboarding-detail-header > div:last-child { display:grid; justify-items:end; gap:8px; color:var(--muted); }
.onboarding-company-panel,.onboarding-activity-panel {
  margin-bottom:18px;
  padding:24px;
  border:1px solid var(--line);
  background:#fff;
}
.onboarding-company-panel > header {
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding-bottom:18px;
  border-bottom:1px solid var(--line);
}
.onboarding-company-panel h2,.onboarding-activity-panel h2 { margin:5px 0 0; }
.employee-shareholder-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:20px; }
.employee-shareholder-card { padding:20px; border:1px solid var(--line); background:#fafbfd; }
.employee-shareholder-heading { display:flex; align-items:start; justify-content:space-between; gap:15px; }
.employee-shareholder-heading h3 { margin:5px 0 15px; }
.employee-shareholder-card dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:0 0 18px; }
.employee-shareholder-card dl div { min-width:0; }
.employee-shareholder-card dt { color:var(--muted); font-size:11px; }
.employee-shareholder-card dd { margin:4px 0 0; overflow-wrap:anywhere; font-size:13px; font-weight:650; }
.employee-document-list { border-top:1px solid var(--line); }
.employee-document-list > div { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 0; border-bottom:1px solid var(--line); }
.employee-document-list span { display:grid; gap:3px; }
.employee-document-list small { color:var(--muted); }
.employee-document-list a { color:#2496ef; font-size:12px; font-weight:700; text-decoration:none; white-space:nowrap; }
.missing-requirements { margin:14px 0 0; color:#b83b48; font-size:12px; font-weight:700; }
.complete-requirements { margin:14px 0 0; color:#21866f; font-size:12px; font-weight:700; }
.company-readiness-problems { margin-top:18px; padding:15px 18px; border:1px solid #f1c7cc; background:#fff7f8; color:#9d3440; }
.company-readiness-problems ul { margin:8px 0 0; padding-left:20px; }
.invitation-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; }
.onboarding-company-actions { display:flex; align-items:center; justify-content:flex-end; gap:16px; margin-top:20px; padding-top:18px; border-top:1px solid var(--line); }
.onboarding-company-actions span { margin-right:auto; color:var(--muted); font-size:13px; }
.nexum-delivery { margin-top:18px; padding:16px 18px; border:1px solid var(--line); background:#fafbfd; }
.nexum-delivery > div:first-child { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.nexum-delivery dl { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:14px 0 0; }
.nexum-delivery dt { color:var(--muted); font-size:11px; }
.nexum-delivery dd { margin:4px 0 0; font-size:13px; font-weight:700; overflow-wrap:anywhere; }
.nexum-delivery-error,.nexum-delivery-warning { margin:12px 0 0; color:#b83b48; font-size:12px; font-weight:650; }
.nexum-delivery-actions { display:flex; justify-content:flex-end; margin-top:12px; }
.brazil-registration-workspace { margin-top:20px; }
.brazil-registration-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:16px; }
.brazil-registration-heading h3 { margin:5px 0 0; font-size:20px; }
.section-kicker { color:#3d9af2; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.brazil-registration-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; padding:18px; border:1px solid var(--line); background:#fafbfd; }
.brazil-registration-form label,.brazil-replacement-reason { display:grid; gap:7px; color:#44515d; font-size:12px; font-weight:700; }
.brazil-registration-form input,.brazil-replacement-reason input { width:100%; min-height:42px; padding:9px 11px; border:1px solid var(--line-strong); border-radius:4px; background:#fff; color:var(--ink); font:inherit; outline:0; }
.brazil-registration-form input:focus,.brazil-replacement-reason input:focus { border-color:var(--teal); box-shadow:0 0 0 3px rgba(34,170,166,.1); }
.brazil-registration-form input:disabled { background:#f0f3f5; color:var(--muted); }
.brazil-form-actions { grid-column:1/-1; display:flex; align-items:center; justify-content:flex-end; gap:14px; }
.brazil-form-actions span { margin-right:auto; color:var(--muted); font-size:12px; }
.brazil-deliverable-list { display:grid; gap:12px; margin-top:16px; }
.brazil-deliverable { padding:16px 18px; border:1px solid var(--line); border-radius:5px; background:#fff; }
.brazil-deliverable-main { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.brazil-deliverable-main > div:first-child { display:grid; gap:5px; min-width:0; }
.brazil-deliverable-main small { color:var(--muted); overflow-wrap:anywhere; }
.brazil-deliverable-actions { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.brazil-deliverable-actions a,.brazil-version-history a { color:#2496ef; font-size:12px; font-weight:750; text-decoration:none; }
.brazil-replacement-reason { margin-top:13px; }
.brazil-upload-status { min-height:16px; margin:10px 0 0; color:#21866f; font-size:12px; font-weight:650; }
.brazil-version-history { margin-top:10px; border-top:1px solid var(--line); color:var(--muted); font-size:12px; }
.brazil-version-history summary { padding-top:10px; cursor:pointer; font-weight:700; }
.brazil-version-history p { display:flex; justify-content:space-between; gap:15px; margin:9px 0 0; }
.brazil-completion-actions { display:flex; align-items:center; justify-content:flex-end; gap:18px; margin-top:18px; padding-top:18px; border-top:1px solid var(--line); }
.brazil-completion-actions span { margin-right:auto; color:var(--muted); font-size:13px; }
.employee-activity-list > div { display:grid; grid-template-columns:18px 1fr; gap:10px; padding:12px 0; border-bottom:1px solid var(--line); }
.employee-activity-list p,.employee-activity-list time { margin:4px 0 0; color:var(--muted); font-size:12px; }
.timeline-pending { opacity:.52; }
.timeline-pending .timeline-dot { border-color:#edf0f2; background:#b7bec5; }
.timeline-current strong { color:var(--purple); }
.timeline-current .timeline-dot { box-shadow:0 0 0 4px var(--purple-soft); }
.timeline-exception .timeline-dot { border-color:var(--red-soft); background:var(--red); }
.registration-details-panel { padding:24px; }
.registration-details-panel .panel-title { align-items:flex-start; }
.registration-details-panel .panel-title h2,.registration-details-panel .panel-title p { margin:0; }
.registration-details-panel .panel-title p { margin-top:5px; font-size:12px; }
.registration-details-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  padding:20px;
  border:1px solid var(--line);
  border-radius:5px;
  background:#fafbfd;
}
.registration-details-grid label { display:grid; gap:8px; color:#44515d; font-size:12px; font-weight:700; }
.registration-details-grid input,.registration-details-grid textarea {
  width:100%;
  padding:10px 12px;
  border:1px solid var(--line-strong);
  border-radius:4px;
  background:#fff;
  color:var(--ink);
  font:inherit;
  outline:0;
  transition:border-color .15s ease,box-shadow .15s ease;
}
.registration-details-grid input { min-height:42px; }
.registration-details-grid input:focus,.registration-details-grid textarea:focus {
  border-color:var(--teal);
  box-shadow:0 0 0 3px rgba(34,170,166,.1);
}
.registration-details-grid input::placeholder,.registration-details-grid textarea::placeholder { color:#a1abb5; }
.registration-address-field { grid-column:1 / -1; }
.registration-address-field textarea { min-height:96px; resize:vertical; line-height:1.45; }
.registration-details-actions { display:flex; align-items:center; justify-content:flex-end; gap:14px; margin-top:18px; }
.registration-details-actions [data-registration-details-status] { margin-right:auto; font-size:12px; }
.registration-details-actions .primary-button { min-width:140px; padding-inline:20px; }
@media (max-width:850px) { .registration-details-grid { grid-template-columns:1fr; } }

.login-body {
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:24px;
  background:linear-gradient(135deg,#eef1f5,#f8f9fb);
}
.login-card {
  position:relative;
  width:min(410px,100%);
  padding:38px;
  border:1px solid var(--line);
  border-radius:8px;
  background:white;
  box-shadow:0 18px 50px rgba(24,38,51,.1);
}
.login-language { position:absolute; top:24px; right:24px; }
.login-card .brand-mark { margin-bottom:25px; }
.login-form { display:grid; gap:16px; margin-top:28px; }
.login-form label { display:grid; gap:7px; font-size:12px; font-weight:650; }
.login-form input { height:45px; padding:0 12px; border:1px solid var(--line-strong); border-radius:4px; outline:0; }
.login-form input:focus { border-color:var(--teal); box-shadow:0 0 0 3px rgba(34,170,166,.1); }
.form-error { margin:0; color:#b83b48; font-size:12px; }

@media (max-width:900px) {
  .content-heading { align-items:flex-start; flex-direction:column; }
  .filter-panel { grid-template-columns:1fr 1fr; align-items:stretch; }
  .filter-search { width:100%; }
  .filter-actions { justify-content:flex-end; align-self:end; }
  .crm-filter-panel { grid-template-columns:1fr 1fr; }
  .crm-edit-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .crm-edit-wide { grid-column:span 2; }
  .employee-shareholder-grid { grid-template-columns:1fr; }
  .brazil-registration-form { grid-template-columns:1fr; }
}

@media (max-width:680px) {
  #accounting-list-view { display:block; height:auto; overflow:visible; }
  .accounting-table-shell { max-height:60vh; }
  .app-shell { display:block; }
  .sidebar {
    position:fixed;
    inset:auto 0 0;
    width:100%;
    height:58px;
    flex-direction:row;
  }
  .sidebar-brand,.logout-button,.nav-item:disabled { display:none; }
  .side-navigation { width:100%; grid-template-columns:repeat(4,1fr); padding:0; }
  .nav-item { min-height:58px; border-left:0; border-top:3px solid transparent; }
  .nav-item.active { border-top-color:#52c7c0; border-left:0; }
  .nav-item > span:last-child { display:none; }
  .brazil-deliverable-main,.brazil-completion-actions,.brazil-version-history p { align-items:flex-start; flex-direction:column; }
  .workspace { padding-bottom:58px; }
  .topbar { height:60px; padding:0 14px; }
  .topbar-title { gap:10px; }
  .topbar-portal-title { font-size:14px; }
  .user-chip span:last-child { display:none; }
  .page-tabs { overflow:auto; }
  .page-tab.disabled { display:none; }
  .main-content { padding:16px; }
  .content-description { display:none; }
  .filter-actions > button { flex:1; }
  .crm-filter-panel { grid-template-columns:1fr; }
  .onboarding-filter-panel { grid-template-columns:1fr; }
  .crm-table-shell { max-height:calc(100vh - 330px); }
  .new-lead-form { grid-template-columns:1fr; }
  .crm-edit-grid { grid-template-columns:1fr; }
  .crm-edit-wide { grid-column:span 1; }
  .crm-toolbar-actions { width:100%; }
  .crm-toolbar-actions button { flex:1; justify-content:center; }
  .onboarding-basics,.company-fields,.shareholder-grid,.onboarding-company .shareholder-card { grid-template-columns:1fr; }
  .table-toolbar { align-items:flex-start; flex-direction:column; }
  .detail-header { display:grid; padding:16px; }
  .panel { padding:16px; }
  dl { display:grid; grid-template-columns:1fr 1fr; }
  .deed-input-grid { grid-template-columns:1fr; }
  .deed-render-footer { align-items:stretch; flex-direction:column; }
}
.accounting-completion-summary { padding:16px 18px; border:1px solid #cfe1f1; border-radius:9px; background:#f3f8fc; }
.accounting-completion-summary.complete { border-color:#bfe4d5; background:#edf9f4; }
.accounting-completion-summary.overdue { border-color:#efc4c4; background:#fff2f2; }
.accounting-completion-heading { display:flex; justify-content:space-between; gap:16px; align-items:center; }
.accounting-completion-heading span { color:#1688d4; font-weight:800; }
.accounting-completion-summary.overdue .accounting-completion-heading span { color:#b23a48; }
.accounting-completion-list { margin:12px 0 0; padding-left:20px; display:grid; gap:5px; color:#718198; }
.supply-chain-filters{grid-template-columns:minmax(180px,240px) minmax(180px,240px) auto}.supply-chain-table td small{display:block;margin-top:4px;color:#8795a5}.supply-chain-detail-card{display:grid;gap:18px}.supply-chain-detail-card .detail-header>strong{font-size:24px;color:#16815f}.supply-chain-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.supply-chain-lines{display:grid}.supply-chain-lines>div{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}.supply-chain-lines img{width:64px;height:64px;object-fit:contain;border-radius:7px;background:#f7f8fa}.supply-chain-lines span strong,.supply-chain-lines span small{display:block}.supply-chain-lines span small,.supply-chain-grid .panel small{margin-top:5px;color:#8795a5}.supply-chain-actions{display:flex;flex-wrap:wrap;gap:9px}.supply-chain-actions button{min-height:36px;padding:0 13px;border:1px solid var(--line-strong);border-radius:5px;background:#fff;cursor:pointer}.supply-chain-actions button:hover{border-color:var(--teal);color:var(--teal)}
.supply-chain-inventory-filters{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.supply-chain-inventory-filters .filter-search{grid-column:span 2}.inventory-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:18px 0}.inventory-summary>div{padding:16px 18px;border:1px solid var(--line);border-radius:8px;background:#fff}.inventory-summary span,.inventory-summary strong{display:block}.inventory-summary span{color:var(--muted);font-size:13px}.inventory-summary strong{margin-top:6px;font-size:24px;color:var(--ink)}
.inventory-table{min-width:1320px}.inventory-table th:nth-child(1){width:300px}.inventory-table th:nth-child(2){width:140px}.inventory-table th:nth-child(3){width:180px}.inventory-table th:nth-child(4),.inventory-table th:nth-child(5),.inventory-table th:nth-child(6){width:88px}.inventory-table th:nth-child(7){width:130px}.inventory-table th:nth-child(8){width:190px}.inventory-table th:nth-child(9){width:90px}.inventory-table td{padding:10px 12px}.inventory-table td:nth-child(2){white-space:nowrap;font-weight:750}.inventory-product{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:12px;min-width:0;text-align:left}.inventory-image-frame,.inventory-product img,.inventory-no-image{display:grid;width:56px;height:56px;place-items:center;object-fit:contain;border-radius:6px;background:#f7f8fa}.inventory-no-image{color:var(--muted);font-size:11px;text-align:center}.inventory-product span,.inventory-product strong{display:block;min-width:0}.inventory-product strong,.inventory-product small{overflow:hidden;text-overflow:ellipsis}.inventory-product small{white-space:normal;line-height:1.35}.inventory-status{display:inline-flex;padding:4px 9px;border-radius:999px;background:#edf9f4;color:#16815f;font-size:12px;font-weight:800;white-space:nowrap}.inventory-status.low_stock{background:#fff7df;color:#996b00}.inventory-status.out_of_stock{background:#fff0f0;color:#b23a48}
.mexico-inventory-table{width:2440px;min-width:2440px;table-layout:fixed}.mexico-inventory-table th,.mexico-inventory-table td{height:48px;padding:7px 10px;line-height:1.25}.mexico-inventory-table th{white-space:nowrap}.mexico-inventory-table td{overflow:hidden;text-overflow:ellipsis}.mexico-inventory-table th:nth-child(1){width:260px}.mexico-inventory-table th:nth-child(2){width:170px}.mexico-inventory-table th:nth-child(3){width:215px}.mexico-inventory-table th:nth-child(4){width:145px}.mexico-inventory-table th:nth-child(5){width:180px}.mexico-inventory-table th:nth-child(6){width:160px}.mexico-inventory-table th:nth-child(7){width:120px}.mexico-inventory-table th:nth-child(8),.mexico-inventory-table th:nth-child(9),.mexico-inventory-table th:nth-child(10),.mexico-inventory-table th:nth-child(11),.mexico-inventory-table th:nth-child(12),.mexico-inventory-table th:nth-child(13){width:125px}.mexico-inventory-table th:nth-child(14){width:80px}.mexico-inventory-table th:nth-child(15){width:205px}.mexico-inventory-table th:nth-child(16){width:90px}.mexico-inventory-table th:nth-child(1),.mexico-inventory-table td:nth-child(1){position:sticky;left:0;z-index:3}.mexico-inventory-table th:nth-child(2),.mexico-inventory-table td:nth-child(2){position:sticky;left:260px;z-index:3}.mexico-inventory-table th:nth-child(16),.mexico-inventory-table td:nth-child(16){position:sticky;right:0;z-index:3}.mexico-inventory-table thead th:nth-child(1),.mexico-inventory-table thead th:nth-child(2),.mexico-inventory-table thead th:nth-child(16){z-index:5;background:#fafbfc}.mexico-inventory-table tbody td:nth-child(1),.mexico-inventory-table tbody td:nth-child(2),.mexico-inventory-table tbody td:nth-child(16){background:#fff}.mexico-inventory-table td:nth-child(n+3):nth-child(-n+16){white-space:nowrap}.mexico-inventory-table .inventory-product{grid-template-columns:44px minmax(0,1fr);gap:9px}.mexico-inventory-table .inventory-image-frame,.mexico-inventory-table .inventory-product img,.mexico-inventory-table .inventory-no-image{width:44px;height:44px}.mexico-inventory-table .inventory-product strong,.mexico-inventory-table .inventory-product small{white-space:nowrap}.mexico-inventory-table .inventory-product small{margin-top:2px}.inventory-no-image{grid-template-rows:auto auto;align-content:center;gap:1px;border:1px dashed #ccd5dd}.inventory-no-image b{font-size:15px;font-weight:500}.inventory-no-image small{margin:0!important;font-size:9px;line-height:1}.inventory-quantity-cell{text-align:right!important;font-variant-numeric:tabular-nums}.inventory-timestamps span,.inventory-timestamps small{display:block;white-space:nowrap}.inventory-timestamps small{margin-top:3px!important}.mexico-inventory-table .table-action{white-space:nowrap}
.inventory-sync-status{display:grid;gap:8px;margin:16px 0;padding:14px 16px;border:1px solid #a9dbc8;border-radius:8px;background:#edf9f4;color:#17644d}.inventory-sync-status>div{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center}.inventory-sync-status.delayed{border-color:#ead08b;background:#fff8e3;color:#775600}.inventory-sync-status.stale,.inventory-sync-status.failed{border-color:#edb6bb;background:#fff0f1;color:#9b2936}.inventory-freshness-badge{font-weight:850}.inventory-unsynced{display:inline-block;max-width:120px;color:#9b2936;font-size:12px;font-weight:750}.inventory-pagination{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:16px}.inventory-pagination button{border:1px solid var(--line);border-radius:6px;background:#fff;padding:8px 14px}.inventory-pagination button:disabled{opacity:.45}.mexico-inventory-detail{display:grid;gap:18px}.inventory-detail-metadata dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.inventory-detail-metadata dl>div{padding:12px;border:1px solid var(--line);border-radius:7px}.inventory-detail-metadata dt{color:var(--muted);font-size:12px}.inventory-detail-metadata dd{margin:5px 0 0;font-weight:750}.inventory-detail-metadata small{display:block;margin-top:4px;color:var(--muted)}
.inventory-detail-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(420px,1.2fr);gap:18px}.inventory-quantities dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.inventory-quantities dl>div{padding:13px;border-radius:7px;background:#f7f9fb}.inventory-quantities dt{color:var(--muted);font-size:13px}.inventory-quantities dd{margin:5px 0 0;font-size:24px;font-weight:800}.inventory-adjustment-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}.inventory-adjustment-fields label{display:grid;gap:6px;color:var(--muted);font-size:13px;font-weight:700}.inventory-adjustment-fields input,.inventory-adjustment-fields textarea{width:100%;padding:10px 12px;border:1px solid var(--line-strong);border-radius:6px;background:#fff;font:inherit;color:var(--ink)}.inventory-adjustment-fields .wide{grid-column:1/-1}.inventory-adjustment-fields textarea{min-height:82px;resize:vertical}.inventory-history{display:grid}.inventory-history>div{display:grid;grid-template-columns:minmax(180px,.35fr) minmax(0,1fr);gap:18px;padding:14px 0;border-bottom:1px solid var(--line)}.inventory-history span strong,.inventory-history span small,.inventory-history p small{display:block}.inventory-history small{margin-top:4px;color:var(--muted)}
@media(max-width:900px){.supply-chain-inventory-filters,.inventory-detail-grid{grid-template-columns:1fr}.supply-chain-inventory-filters .filter-search{grid-column:auto}.inventory-summary{grid-template-columns:1fr 1fr}.inventory-detail-metadata dl{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.supply-chain-filters,.supply-chain-grid{grid-template-columns:1fr}.supply-chain-lines>div{grid-template-columns:52px minmax(0,1fr)}.supply-chain-lines>div>b{grid-column:2}.supply-chain-lines img{width:52px;height:52px}.inventory-summary,.inventory-adjustment-fields,.inventory-detail-metadata dl{grid-template-columns:1fr}.inventory-history>div{grid-template-columns:1fr}}
.wish-fulfillment-panel{border-left:4px solid #6750a4}.wish-fulfillment-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.wish-fulfillment-heading h2{margin-top:4px}.wish-state{display:inline-flex;padding:6px 10px;border-radius:999px;background:#edf1f5;color:#536274;font-size:12px;font-weight:800}.wish-state.accepted{background:#e8f7f1;color:#16815f}.wish-state.retryable_failed,.wish-state.terminal_failed{background:#fff0f0;color:#b23a48}.wish-state.queued,.wish-state.in_progress{background:#fff7df;color:#8b6508}.wish-fulfillment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.wish-fulfillment-grid>div{padding:12px;border-radius:7px;background:#f7f8fb}.wish-fulfillment-grid span,.wish-fulfillment-grid strong{display:block}.wish-fulfillment-grid span{color:var(--muted);font-size:12px}.wish-fulfillment-grid strong{margin-top:5px;overflow-wrap:anywhere}.wish-error{margin:12px 0;padding:12px 14px;border-radius:7px;background:#fff0f0;color:#8e2f3b}.wish-error p,.wish-empty{margin:5px 0 0}.wish-empty{color:var(--muted)}
@media(max-width:680px){.wish-fulfillment-grid{grid-template-columns:1fr}}
.supply-chain-wish-filters{grid-template-columns:minmax(220px,320px) auto}.wish-fulfillment-table th:nth-child(1){width:230px}.wish-fulfillment-table th:nth-child(2){width:130px}.wish-fulfillment-table td small{display:block;margin-top:4px;color:var(--muted)}
.wish-state.sending{background:#fff7df;color:#8b6508}
.employee-permissions-card{width:min(900px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto}.employee-permissions{margin:0;padding:16px;border:1px solid var(--line);border-radius:8px}.employee-permissions legend{padding:0 6px;font-weight:800}.permission-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.permission-module-grid label{display:grid;gap:6px}.permission-module-grid select,.employee-permissions textarea{width:100%;padding:10px 12px;border:1px solid var(--line-strong);border-radius:6px;background:#fff}.permission-country-grid{display:flex;flex-wrap:wrap;gap:16px;margin-top:12px}.permission-country-grid label{display:flex;align-items:center;gap:7px}.permission-history{display:grid;max-height:260px;overflow:auto;border-top:1px solid var(--line)}.permission-history article{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--line)}.permission-history strong,.permission-history small{display:block}.permission-history small,.permission-history p{margin:4px 0 0;color:var(--muted)}
@media(max-width:680px){.permission-module-grid{grid-template-columns:1fr}.permission-history article{display:block}}

.wish-event-table-shell { max-width:100%; overflow-x:auto; margin-top:16px; }
.wish-event-table { width:100%; min-width:680px; border-collapse:collapse; }
.wish-event-table th,.wish-event-table td { text-align:left; padding:12px; border:1px solid #e2e8f0; overflow-wrap:anywhere; }
.wish-event-table th { background:#f5f7fb; }
.wish-event-table-shell:focus-visible { outline:3px solid #316db1; outline-offset:2px; }
.wish-tracking-events { min-width:0; overflow-wrap:anywhere; }
