
:root {
  --portal-accent: #2563eb;
  --portal-accent-dark: #1d4ed8;
  --portal-accent-rgb: 37, 99, 235;
  --portal-accent-soft: #eaf1ff;
  --portal-text: #172033;
  --portal-muted: #667085;
  --portal-border: #d7e0eb;
  --portal-border-soft: #e8edf3;
  --portal-page: #f4f7fb;
  --portal-surface: #ffffff;
  --portal-surface-soft: #f8fafc;
  --portal-sidebar: #f8fafc;
  --portal-sidebar-text: #4b5565;
  --portal-sidebar-muted: #8591a3;
  --portal-sidebar-icon: #8090a5;
  --portal-sidebar-hover: #eef2f7;
  --portal-sidebar-active: #e6efff;
  --portal-sidebar-active-text: #1e4fa9;
  --portal-navbar-bg: rgba(255, 255, 255, .97);
  --portal-navbar-text: #172033;
  --portal-navbar-control-bg: #ffffff;
  --portal-navbar-control-border: #d7e0eb;
  --portal-search-bg: #f9fbfd;
  --portal-search-text: #172033;
  --portal-search-placeholder: #7a8698;
  --portal-brand-bg: #172033;
  --portal-brand-text: #ffffff;
  --portal-page-header-bg: rgba(255, 255, 255, .95);
  --portal-table-head: #f8fafc;
  --portal-credit-panel: #172033;
  --portal-credit-panel-border: #172033;
  --portal-card-shadow: 0 4px 18px rgba(15, 23, 42, .045);
  --portal-card-shadow-hover: 0 12px 30px rgba(15, 23, 42, .09);
  --portal-dropdown-shadow: 0 18px 45px rgba(15, 23, 42, .16);
  --portal-sidebar-width: 18rem;
  --portal-navbar-height: 4rem;
}

html[data-portal-theme="teal-professional"] {
  --portal-accent: #0f766e;
  --portal-accent-dark: #0b5f59;
  --portal-accent-rgb: 15, 118, 110;
  --portal-accent-soft: #e3f5f2;
  --portal-text: #18302f;
  --portal-muted: #617574;
  --portal-border: #d2e3e1;
  --portal-border-soft: #e4efed;
  --portal-page: #f2f7f6;
  --portal-surface-soft: #f6fbfa;
  --portal-sidebar: #f6fbfa;
  --portal-sidebar-text: #405d5a;
  --portal-sidebar-muted: #78918e;
  --portal-sidebar-icon: #78918e;
  --portal-sidebar-hover: #e8f3f1;
  --portal-sidebar-active: #dff1ee;
  --portal-sidebar-active-text: #0b625c;
  --portal-navbar-bg: rgba(255, 255, 255, .97);
  --portal-navbar-text: #18302f;
  --portal-navbar-control-border: #d2e3e1;
  --portal-search-bg: #f6fbfa;
  --portal-search-text: #18302f;
  --portal-search-placeholder: #738b88;
  --portal-brand-bg: #143e3b;
  --portal-page-header-bg: rgba(255, 255, 255, .95);
  --portal-table-head: #f5faf9;
  --portal-credit-panel: #123c3a;
  --portal-credit-panel-border: #123c3a;
}

html[data-portal-theme="navy-premium"] {
  --portal-accent: #4f8cff;
  --portal-accent-dark: #3274e6;
  --portal-accent-rgb: 79, 140, 255;
  --portal-accent-soft: #e8f1ff;
  --portal-text: #172033;
  --portal-muted: #68758a;
  --portal-border: #d5deea;
  --portal-border-soft: #e6ebf2;
  --portal-page: #f1f4f9;
  --portal-surface-soft: #f7f9fc;
  --portal-sidebar: #151f36;
  --portal-sidebar-text: #dbe5f4;
  --portal-sidebar-muted: #8fa1bd;
  --portal-sidebar-icon: #91a4c2;
  --portal-sidebar-hover: rgba(255, 255, 255, .07);
  --portal-sidebar-active: rgba(79, 140, 255, .2);
  --portal-sidebar-active-text: #ffffff;
  --portal-navbar-bg: #101a30;
  --portal-navbar-text: #f7f9fd;
  --portal-navbar-control-bg: rgba(255, 255, 255, .08);
  --portal-navbar-control-border: rgba(255, 255, 255, .16);
  --portal-search-bg: rgba(255, 255, 255, .08);
  --portal-search-text: #ffffff;
  --portal-search-placeholder: #aab8ce;
  --portal-brand-bg: #4f8cff;
  --portal-brand-text: #ffffff;
  --portal-page-header-bg: rgba(255, 255, 255, .96);
  --portal-table-head: #f6f8fb;
  --portal-credit-panel: #111b31;
  --portal-credit-panel-border: #111b31;
  --portal-card-shadow: 0 5px 20px rgba(15, 23, 42, .055);
}

* { box-sizing: border-box; }
html { min-height: 100%; }
body {
  min-height: 100vh;
  margin: 0;
  background: var(--portal-page);
  color: var(--portal-text);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
}
a { text-decoration: none; }
[x-cloak] { display: none !important; }
.min-w-0 { min-width: 0; }
.fs-sm { font-size: .79rem !important; }
.svg-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.icon {
  width: 1.15rem;
  height: 1.15rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  vertical-align: -.15em;
}
.portal-loading { opacity: .62; pointer-events: none; }
.portal-id { max-width: 100%; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; overflow-wrap: anywhere; word-break: break-word; }

/* Header */
.portal-navbar {
  min-height: var(--portal-navbar-height);
  background: #fff;
  color: var(--portal-text);
  padding: .45rem 1.7rem;
  position: sticky;
  top: 0;
  z-index: 1035;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .025);
}
.portal-navbar .container-fluid { padding: 0; }
.portal-brand {
  display: inline-flex;
  align-items: center;
  gap: .75rem;
  color: var(--portal-text);
  font-size: 1rem;
  font-weight: 750;
  white-space: nowrap;
}
.portal-brand:hover { color: var(--portal-text); }
.portal-brand-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: .65rem;
  background: #172033;
  color: #fff;
  font-weight: 800;
}
.portal-global-search { width: min(43rem, 100%); position: relative; }
.portal-global-search .icon {
  position: absolute;
  left: .9rem;
  top: 50%;
  transform: translateY(-50%);
  color: #7a8698;
}
.portal-global-search input {
  width: 100%;
  min-height: 2.8rem;
  border: 1px solid var(--portal-border);
  border-radius: .75rem;
  padding: .6rem 1rem .6rem 2.8rem;
  background: #f9fbfd;
  color: var(--portal-text);
  outline: 0;
}
.portal-global-search input:focus {
  background: #fff;
  border-color: var(--portal-accent);
  box-shadow: 0 0 0 .18rem rgba(37, 99, 235, .1);
}
.portal-wallet-pill {
  display: inline-flex;
  gap: .5rem;
  align-items: center;
  color: var(--portal-text);
  border: 1px solid var(--portal-border);
  border-radius: .7rem;
  padding: .55rem .85rem;
  background: #fff;
  font-size: .83rem;
  white-space: nowrap;
}
.portal-wallet-pill:hover { color: var(--portal-accent); border-color: #a9bce9; }
.portal-user-button {
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  background: transparent;
  border: 0;
  color: var(--portal-text);
  padding: .25rem;
  white-space: nowrap;
}
.portal-user-button > span:first-child {
  display: inline-flex;
  width: 2.25rem;
  height: 2.25rem;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #e9eef8;
  color: #294b8f;
  font-weight: 700;
}
.portal-sidebar-toggle { color: var(--portal-text); border: 0; padding: .45rem; }

/* Shell */
.page-content { width: 100%; max-width: 100%; min-height: calc(100vh - var(--portal-navbar-height)); display: flex; overflow-x: clip; }
.portal-sidebar {
  width: var(--portal-sidebar-width);
  min-width: var(--portal-sidebar-width);
  background: var(--portal-sidebar);
  border-right: 1px solid var(--portal-border);
  color: var(--portal-text);
}
.portal-sidebar .sidebar-content { width: 100%; padding: .65rem 0 1rem; }
.portal-sidebar .sidebar-section { width: 100%; }
.portal-sidebar .sidebar-section-body { padding: 1rem 1.25rem; }
.portal-provider-summary { border-bottom: 1px solid var(--portal-border-soft); margin-bottom: .25rem; }
.portal-sidebar .nav-sidebar {
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  width: 100%;
  margin: 0;
  padding: 0;
}
.portal-sidebar .nav-sidebar > .nav-item,
.portal-sidebar .nav-sidebar > .nav-item-header { width: 100%; flex: 0 0 auto; }
.portal-sidebar .nav-item-header {
  display: block;
  padding: 1.2rem 1.25rem .45rem;
  color: #8591a3;
  font-weight: 700;
  letter-spacing: .08em;
}
.portal-sidebar .nav-link {
  width: auto;
  margin: .14rem .7rem;
  padding: .72rem .85rem;
  border-radius: .62rem;
  color: #4b5565;
  display: flex !important;
  flex-direction: row !important;
  align-items: center;
  gap: .78rem;
  font-weight: 570;
  line-height: 1.2;
}
.portal-sidebar .nav-link .icon { color: #8090a5; flex: 0 0 auto; }
.portal-sidebar .nav-link:hover { background: #eef2f7; color: var(--portal-text); }
.portal-sidebar .nav-link:hover .icon { color: var(--portal-accent); }
.portal-sidebar .nav-link.active { background: #e6efff; color: #1e4fa9; font-weight: 650; }
.portal-sidebar .nav-link.active .icon { color: var(--portal-accent); }
.portal-sidebar .nav-link .badge { font-weight: 600; font-size: .72rem; }
.content-wrapper { min-width: 0; max-width: 100%; flex: 1 1 auto; overflow-x: clip; }
.content-inner { min-width: 0; max-width: 100%; min-height: 100%; display: flex; flex-direction: column; }
.portal-page-header { background: #fff; padding: 1.22rem 1.6rem; }
.portal-page-header .page-header-content { padding: 0; }
.portal-page-header .page-title { font-size: 1.38rem; line-height: 1.25; font-weight: 750; color: var(--portal-text); }
.page-subtitle { color: var(--portal-muted); font-size: .88rem; }
.content { min-width: 0; max-width: 100%; flex: 1; padding: 1.45rem; }
.portal-footer {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: .9rem 1.6rem;
  background: #fff;
  color: var(--portal-muted);
  font-size: .78rem;
}
.portal-sidebar-overlay { display: none; }
.portal-flash { margin-bottom: 1rem; }

/* Cards and stats */
.card { box-shadow: none; }
.portal-card {
  border: 1px solid var(--portal-border);
  border-radius: .8rem;
  box-shadow: none;
  overflow: hidden;
  background: #fff;
}
.portal-card .card-header { padding: 1rem 1.2rem; background: #fff; }
.portal-card .card-body { padding: 1.2rem; }
.portal-card .card-footer { background: #fff; }
.portal-stat-card {
  min-height: 9rem;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.15rem;
  background: #fff;
  border: 1px solid var(--portal-border);
  border-radius: .8rem;
  color: var(--portal-text);
  transition: border-color .15s ease, transform .15s ease;
}
.portal-stat-card:hover { color: var(--portal-text); border-color: #aab9d0; transform: translateY(-1px); }
.portal-stat-card span { display: block; color: var(--portal-muted); font-size: .82rem; }
.portal-stat-card strong { display: block; color: var(--portal-text); font-size: 1.7rem; line-height: 1.1; margin: .4rem 0 .8rem; }
.portal-stat-card small { color: var(--portal-muted); font-size: .76rem; }
.portal-stat-icon {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 3rem;
  min-width: 3rem;
  height: 3rem;
  border-radius: .85rem;
  background: var(--portal-accent-soft);
  color: var(--portal-accent) !important;
}
.portal-stat-icon .icon { width: 1.25rem; height: 1.25rem; }
.portal-steps { margin: .25rem 0 0; padding-left: 1.25rem; }
.portal-steps li { padding: .45rem 0 .45rem .4rem; color: #465166; line-height: 1.55; }

/* Tables */
.portal-table { color: var(--portal-text); }
.portal-table thead th {
  background: #f8fafc;
  color: #5d697b;
  text-transform: uppercase;
  letter-spacing: .055em;
  font-size: .69rem;
  font-weight: 750;
  white-space: nowrap;
  border-bottom: 1px solid var(--portal-border);
  padding: .85rem 1.15rem;
}
.portal-table td {
  vertical-align: middle;
  border-color: #edf0f4;
  padding: .95rem 1.15rem;
}
.portal-table tbody tr:hover { background: #fbfcff; }
.portal-table .btn { white-space: nowrap; }
.portal-lead-id-cell { width: 20%; min-width: 15rem; }
.portal-lead-id { color: #ec4899; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; overflow-wrap: anywhere; }
.portal-lead-id:hover { color: #be185d; }
.portal-detail-table th { width: 32%; color: #697586; font-weight: 550; background: #fbfcfd; }
.portal-detail-table th, .portal-detail-table td { padding: .95rem 1.2rem; border-color: #edf0f4; vertical-align: middle; }
.portal-pagination { min-height: 3.25rem; display: flex; align-items: center; gap: .75rem; border-top: 1px solid var(--portal-border-soft); }
.portal-empty-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: .8rem;
  background: var(--portal-accent-soft);
  color: var(--portal-accent);
}

/* Filters and controls */
.portal-filter-card { overflow: visible; }
.portal-filter-desktop { padding: .7rem; }
.portal-filter-mobile { display: none; padding: .7rem; }
.portal-filter-primary-row {
  display: grid;
  grid-template-columns: minmax(13.75rem, 1.7fr) minmax(6.8rem, .62fr) minmax(8.2rem, .82fr) minmax(6.5rem, .58fr) auto auto auto;
  align-items: center;
  gap: .5rem;
}
.portal-filter-primary-row > * { min-width: 0; }
.portal-filter-search { position: relative; min-width: 0; }
.portal-filter-search .icon {
  position: absolute;
  left: .78rem;
  top: 50%;
  transform: translateY(-50%);
  color: var(--portal-muted);
  pointer-events: none;
}
.portal-filter-search .form-control { width: 100%; padding-left: 2.35rem; }
.portal-page-size { min-width: 7.75rem; }
.portal-more-filters-button,
.portal-mobile-filter-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .42rem;
  white-space: nowrap;
}
.portal-more-filters-button.is-active,
.portal-mobile-filter-button.is-active {
  border-color: rgba(var(--portal-accent-rgb), .55);
  background: var(--portal-accent-soft);
  color: var(--portal-accent-dark);
}
.portal-filter-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.25rem;
  height: 1.25rem;
  padding: 0 .32rem;
  border-radius: 999px;
  background: var(--portal-accent);
  color: #fff;
  font-size: .68rem;
  font-weight: 800;
  line-height: 1;
}
.portal-filter-chevron {
  display: inline-block;
  margin-top: -.12rem;
  color: var(--portal-muted);
  font-size: 1rem;
  line-height: 1;
  transition: transform .16s ease;
}
.portal-filter-chevron.is-open { transform: rotate(180deg); }
.portal-clear-filter {
  min-height: 2.35rem;
  padding: .35rem .25rem;
  color: var(--portal-muted);
  font-size: .78rem;
  white-space: nowrap;
  text-decoration: none;
}
.portal-clear-filter:hover,
.portal-clear-filter:focus { color: var(--portal-accent-dark); text-decoration: none; }
.portal-filter-more-panel {
  display: grid;
  grid-template-columns: repeat(2, minmax(10rem, 1fr)) minmax(9rem, .75fr);
  gap: .65rem;
  width: min(38rem, 100%);
  margin: .7rem 0 0 auto;
  padding: .75rem;
  border: 1px solid var(--portal-border-soft);
  border-radius: .75rem;
  background: var(--portal-surface-soft);
}
.portal-filter-field { min-width: 0; }
.portal-filter-field label {
  display: block;
  margin: 0 0 .3rem;
  color: var(--portal-muted);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .015em;
}
.portal-filter-field .form-control,
.portal-filter-field .form-select { width: 100%; }
.portal-filter-mobile-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .55rem;
  align-items: center;
}
.portal-filter-mobile-panel {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .7rem;
  margin-top: .7rem;
  padding-top: .75rem;
  border-top: 1px solid var(--portal-border-soft);
}
.portal-filter-mobile-dates {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .7rem;
  grid-column: 1 / -1;
}
.portal-filter-mobile-panel > .portal-filter-field:last-of-type { grid-column: 1 / -1; }
.portal-filter-mobile-actions {
  display: flex;
  justify-content: flex-end;
  gap: .55rem;
  grid-column: 1 / -1;
  padding-top: .1rem;
}
.portal-filter-mobile-actions .btn-primary { min-width: 8.5rem; }
.form-control, .form-select, .input-group-text {
  min-height: 2.65rem;
  border-color: #cdd6e2;
  border-radius: .58rem;
}
.form-control:focus, .form-select:focus { border-color: var(--portal-accent); box-shadow: 0 0 0 .18rem rgba(37, 99, 235, .1); }
.input-group > .form-control:not(:first-child), .input-group > .form-select:not(:first-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; }
.input-group-text { background: #f8fafc; }
.btn { border-radius: .58rem; min-height: 2.35rem; }
.btn-primary { background: var(--portal-accent); border-color: var(--portal-accent); }
.btn-primary:hover, .btn-primary:focus { background: var(--portal-accent-dark); border-color: var(--portal-accent-dark); }
.btn-light { border-color: var(--portal-border); background: #fff; color: var(--portal-text); }
.btn-light:hover { background: #f4f6f9; border-color: #bdc8d6; color: var(--portal-text); }
.btn-outline-primary { color: #0d6efd; border-color: #0d6efd; }
.btn-outline-primary:hover { color: #fff; }
.badge { border-radius: .28rem; padding: .38em .6em; font-weight: 650; }
.bg-primary-subtle { background: #e8f0ff !important; }
.bg-success-subtle { background: #e7f7ef !important; }
.bg-danger-subtle { background: #fdecec !important; }

/* Lead details */
.portal-lead-header { display: flex; align-items: flex-start; gap: 1.5rem; }
.portal-lead-header h3 { font-size: 1.24rem; font-weight: 750; }
.portal-price-box { text-align: right; white-space: nowrap; }
.portal-price-box span { display: block; color: var(--portal-muted); font-size: .75rem; }
.portal-price-box strong { display: block; font-size: 1.4rem; margin-top: .2rem; }
.portal-facts > div { padding: .85rem; border: 1px solid #e8edf3; }
.portal-facts > div:first-child { border-radius: .65rem 0 0 .65rem; }
.portal-facts > div:last-child { border-radius: 0 .65rem .65rem 0; }
.portal-facts > div + div { border-left: 0; }
.portal-facts span,
.portal-contact-grid span,
.portal-profile-status span { display: block; color: var(--portal-muted); font-size: .75rem; margin-bottom: .25rem; }
.portal-facts strong,
.portal-contact-grid strong,
.portal-profile-status strong { display: block; min-width: 0; max-width: 65%; color: var(--portal-text); text-align: right; overflow-wrap: anywhere; }
.portal-contact-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.portal-contact-grid > div { padding: 1rem; border: 1px solid #e4e9f0; border-radius: .65rem; }
.portal-wallet-summary { text-align: center; padding: 1.15rem; background: #f7f9fc; border-radius: .7rem; }
.portal-wallet-summary span { display: block; color: var(--portal-muted); }
.portal-wallet-summary strong { display: block; font-size: 1.8rem; margin-top: .25rem; }
.portal-sticky-card { position: sticky; top: 5.25rem; }

/* Wallet and profile */
.portal-wallet-card { background: #172033; color: #fff; border-color: #172033; }
.portal-wallet-card .card-body { padding: 1.7rem; }
.portal-wallet-card span, .portal-wallet-card small { display: block; color: rgba(255, 255, 255, .68); }
.portal-wallet-card strong { display: block; color: #fff; font-size: 2.1rem; margin: .4rem 0 .8rem; }
.portal-profile-hero { display: flex; align-items: center; gap: 1.1rem; }
.portal-profile-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 4.5rem;
  min-width: 4.5rem;
  height: 4.5rem;
  border-radius: 1rem;
  background: var(--portal-accent-soft);
  color: var(--portal-accent);
  font-size: 1.5rem;
  font-weight: 800;
}
.portal-profile-status { display: grid; gap: .9rem; }
.portal-profile-status > div { display: flex; align-items: center; justify-content: space-between; gap: 1rem; border-bottom: 1px solid #edf0f4; padding-bottom: .8rem; }
.portal-profile-status > div:last-child { border-bottom: 0; padding-bottom: 0; }

/* Login */
.portal-login-body { min-height: 100vh; background: #eef2f6; display: grid; place-items: center; padding: 1rem; }
.portal-login-shell { width: min(29rem, 100%); }
.portal-login-brand { display: flex; align-items: center; justify-content: center; gap: .8rem; margin-bottom: 1.2rem; }
.portal-login-brand strong, .portal-login-brand span { display: block; }
.portal-login-brand > div > span { color: var(--portal-muted); font-size: .78rem; }
.portal-login-card { border: 1px solid var(--portal-border); border-radius: .95rem; box-shadow: 0 14px 35px rgba(15, 23, 42, .06); }
.portal-login-card .card-body { padding: 1.6rem; }
.portal-otp-input { letter-spacing: .55rem; font-weight: 700; text-align: center; }

@media (max-width: 1199.98px) {
  .portal-filter-desktop { display: none; }
  .portal-filter-mobile { display: block; }
  :root { --portal-sidebar-width: 16.5rem; }
  .portal-stat-card { min-height: 8.5rem; }
  .portal-sticky-card { position: static; }
}

@media (max-width: 991.98px) {
  .portal-navbar { padding-left: .8rem; padding-right: .8rem; }
  .portal-sidebar {
    position: fixed;
    z-index: 1040;
    top: var(--portal-navbar-height);
    bottom: 0;
    left: calc(-1 * var(--portal-sidebar-width));
    transition: left .2s ease;
    box-shadow: 6px 0 20px rgba(15, 23, 42, .12);
    overflow-y: auto;
  }
  body.portal-sidebar-open { overflow: hidden; }
  body.portal-sidebar-open .portal-sidebar { left: 0; }
  body.portal-sidebar-open .portal-sidebar-overlay {
    display: block;
    position: fixed;
    inset: var(--portal-navbar-height) 0 0;
    z-index: 1039;
    background: rgba(15, 23, 42, .32);
  }
  .portal-facts > div:nth-child(3) { border-left: 1px solid #e8edf3; }
  .portal-facts > div:first-child { border-radius: .65rem 0 0 0; }
  .portal-facts > div:nth-child(2) { border-radius: 0 .65rem 0 0; }
  .portal-facts > div:nth-child(3) { border-radius: 0 0 0 .65rem; border-top: 0; }
  .portal-facts > div:last-child { border-radius: 0 0 .65rem 0; border-top: 0; }
}

@media (max-width: 767.98px) {
  .portal-navbar { min-height: 3.75rem; }
  .portal-page-header { padding: 1rem 1.1rem; }
  .content { padding: 1rem; }
  .portal-footer { padding: .85rem 1rem; }
  .portal-lead-header { flex-direction: column; }
  .portal-price-box { text-align: left; }
  .portal-contact-grid { grid-template-columns: 1fr; }
}

@media (max-width: 575.98px) {
  .portal-brand > span:last-child { display: none; }
  .portal-wallet-pill > span { display: none; }
  .portal-wallet-pill { padding: .48rem .58rem; }
  .portal-user-button > span:last-child { display: none !important; }
  .content { padding: .75rem; }
  .portal-filter-card { border-radius: .85rem; }
  .portal-filter-mobile { padding: .6rem; }
  .portal-filter-mobile-top { grid-template-columns: minmax(0, 1fr) auto; gap: .45rem; }
  .portal-mobile-filter-button { padding-left: .7rem; padding-right: .7rem; }
  .portal-filter-mobile-panel { grid-template-columns: 1fr; gap: .62rem; }
  .portal-filter-mobile-dates { grid-template-columns: 1fr; gap: .62rem; grid-column: auto; }
  .portal-filter-mobile-panel > .portal-filter-field:last-of-type,
  .portal-filter-mobile-actions { grid-column: auto; }
  .portal-filter-mobile-actions { display: grid; grid-template-columns: minmax(0, 1fr) auto; }
  .portal-filter-mobile-actions .btn-primary { min-width: 0; }
  .portal-page-header .page-title { font-size: 1.18rem; }
  .portal-footer { flex-direction: column; }
  .portal-stat-card { min-height: 7.75rem; padding: .9rem; }
  .portal-stat-card strong { font-size: 1.4rem; }
  .portal-stat-icon { width: 2.55rem; min-width: 2.55rem; height: 2.55rem; }
  .portal-facts > div { border-left: 1px solid #e8edf3 !important; border-top: 0; border-radius: 0 !important; }
  .portal-facts > div:first-child { border-top: 1px solid #e8edf3; border-radius: .65rem .65rem 0 0 !important; }
  .portal-facts > div:last-child { border-radius: 0 0 .65rem .65rem !important; }
  .portal-profile-hero { align-items: flex-start; }
  .portal-profile-avatar { width: 3.75rem; min-width: 3.75rem; height: 3.75rem; }
}

/* Production interaction states */
.portal-toast {
  position: fixed;
  top: 4.75rem;
  right: 1rem;
  z-index: 1100;
  width: min(25rem, calc(100vw - 2rem));
  display: flex;
  align-items: center;
  gap: .7rem;
  padding: .8rem .9rem;
  border: 1px solid var(--portal-border);
  border-radius: .75rem;
  background: #fff;
  box-shadow: 0 14px 35px rgba(15, 23, 42, .14);
  color: var(--portal-text);
}
.portal-toast-dot { width: .58rem; height: .58rem; border-radius: 50%; background: #16a34a; flex: 0 0 auto; }
.portal-toast-error .portal-toast-dot { background: #dc2626; }
.portal-toast-warning .portal-toast-dot { background: #d97706; }
.portal-toast button { margin-left: auto; border: 0; background: transparent; font-size: 1.1rem; color: var(--portal-muted); }
.portal-login-lock {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.25rem;
  height: 3.25rem;
  margin-bottom: .9rem;
  border-radius: .9rem;
  background: var(--portal-accent-soft);
  color: var(--portal-accent);
}
.portal-login-help {
  display: grid;
  gap: .2rem;
  margin-top: 1rem;
  padding: .9rem 1rem;
  border: 1px solid var(--portal-border);
  border-radius: .75rem;
  background: rgba(255, 255, 255, .62);
  color: var(--portal-muted);
  font-size: .78rem;
  text-align: center;
}
.portal-login-help strong { color: var(--portal-text); }
.portal-amount-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem; }
.portal-amount-options .btn.active { border-color: var(--portal-accent); background: var(--portal-accent-soft); color: var(--portal-accent-dark); }
.portal-payment-state { width: .65rem; height: .65rem; border-radius: 50%; background: #f59e0b; flex: 0 0 auto; }
.portal-payment-state.is-paid { background: #16a34a; }
.bg-warning-subtle { background: #fff7df !important; }
.text-warning { color: #a15c00 !important; }

@media (max-width: 575.98px) {
  .portal-toast { top: 4.25rem; right: .75rem; width: calc(100vw - 1.5rem); }
}

.portal-error-body { min-height: 100vh; display: grid; place-items: center; padding: 1rem; background: var(--portal-page); }
.portal-error-card { width: min(31rem, 100%); padding: 2.2rem; border: 1px solid var(--portal-border); border-radius: 1rem; background: #fff; text-align: center; box-shadow: 0 18px 45px rgba(15, 23, 42, .08); }
.portal-error-card h1 { margin: 1rem 0 .5rem; font-size: 1.55rem; }
.portal-error-card p, .portal-error-card small { color: var(--portal-muted); }
.portal-error-mark { display: inline-flex; align-items: center; justify-content: center; min-width: 3.4rem; height: 3.4rem; padding: 0 .8rem; border-radius: .9rem; background: var(--portal-accent-soft); color: var(--portal-accent); font-weight: 800; }

/* Plans, credits and direct payment */
.portal-credit-balance-card {
  overflow: hidden;
  border-color: #172033;
  background:
    radial-gradient(circle at top right, rgba(255, 255, 255, .13), transparent 42%),
    #172033;
  color: #fff;
}
.portal-credit-balance-card .card-body { padding: 1.65rem; }
.portal-summary-label { color: rgba(255, 255, 255, .68); font-size: .8rem; font-weight: 650; }
.portal-credit-balance-card strong { display: block; margin: .35rem 0 .9rem; color: #fff; font-size: clamp(1.8rem, 4vw, 2.45rem); line-height: 1.1; }
.portal-summary-meta { display: flex; flex-wrap: wrap; gap: .45rem 1rem; color: rgba(255, 255, 255, .7); font-size: .76rem; }
.portal-current-plan { padding: 1.45rem; }
.portal-current-plan-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  min-width: 3rem;
  height: 3rem;
  border-radius: .8rem;
  background: var(--portal-accent-soft);
  color: var(--portal-accent);
}
.portal-current-plan-icon .icon { width: 1.35rem; height: 1.35rem; }
.portal-plan-dates { display: flex; flex-wrap: wrap; gap: .85rem 2rem; }
.portal-plan-dates span { display: block; color: var(--portal-muted); font-size: .72rem; }
.portal-plan-dates strong { display: block; margin-top: .18rem; font-size: .84rem; }
.portal-billing-toggle {
  display: inline-flex;
  align-items: stretch;
  gap: .25rem;
  padding: .28rem;
  border: 1px solid var(--portal-border);
  border-radius: .75rem;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .03);
}
.portal-billing-toggle button {
  min-width: 7.2rem;
  border: 0;
  border-radius: .52rem;
  padding: .55rem .85rem;
  background: transparent;
  color: var(--portal-muted);
  font-weight: 700;
  line-height: 1.15;
}
.portal-billing-toggle button span { display: block; margin-top: .2rem; font-size: .62rem; font-weight: 550; opacity: .82; }
.portal-billing-toggle button.active { background: var(--portal-accent); color: #fff; box-shadow: 0 5px 12px rgba(37, 99, 235, .18); }
.portal-plan-card { position: relative; overflow: hidden; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.portal-plan-card:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(15, 23, 42, .08); }
.portal-plan-card.is-recommended { border-color: rgba(37, 99, 235, .62); box-shadow: 0 9px 24px rgba(37, 99, 235, .09); }
.portal-plan-card .card-body { padding: 1.45rem; }
.portal-plan-ribbon {
  position: absolute;
  top: 0;
  right: 1.15rem;
  padding: .38rem .7rem;
  border-radius: 0 0 .52rem .52rem;
  background: var(--portal-accent);
  color: #fff;
  font-size: .65rem;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
}
.portal-plan-price { display: flex; align-items: baseline; gap: .4rem; }
.portal-plan-price strong { color: var(--portal-text); font-size: 1.85rem; line-height: 1; letter-spacing: -.03em; }
.portal-plan-price span { color: var(--portal-muted); font-size: .78rem; }
.portal-tax-label { min-height: 2.25rem; display: flex; flex-direction: column; margin-top: .45rem; color: #a15c00; font-size: .72rem; }
.portal-tax-label.is-included { color: #15803d; }
.portal-tax-label strong { margin-top: .15rem; color: var(--portal-text); font-size: .72rem; }
.portal-credit-total { padding: 1rem; border: 1px solid #dce5f0; border-radius: .75rem; background: #f8fafc; }
.portal-credit-total > span { display: block; color: var(--portal-muted); font-size: .72rem; }
.portal-credit-total > strong { display: block; margin: .25rem 0; color: var(--portal-accent-dark); font-size: 1.35rem; }
.portal-credit-total small { display: block; color: #3d4a5f; }
.portal-plan-features { display: grid; gap: .72rem; margin: 0; padding: 0; list-style: none; }
.portal-plan-features li { display: flex; align-items: flex-start; gap: .55rem; color: #445066; font-size: .82rem; line-height: 1.4; }
.portal-plan-features .icon { width: 1rem; min-width: 1rem; height: 1rem; margin-top: .08rem; color: #16a34a; stroke-width: 2.2; }
.portal-plan-value { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .4rem 1rem; color: var(--portal-muted); font-size: .7rem; border-top: 1px solid var(--portal-border-soft); }
.portal-payment-row { display: flex; align-items: flex-start; gap: .75rem; padding: .95rem 1.1rem; }
.portal-payment-state.is-review { background: #dc2626; }
.portal-direct-payment-breakdown { display: grid; gap: .55rem; padding: .9rem 1rem; border: 1px solid var(--portal-border); border-radius: .68rem; background: #f8fafc; }
.portal-direct-payment-breakdown > div { display: flex; align-items: center; justify-content: space-between; gap: 1rem; color: var(--portal-muted); font-size: .79rem; }
.portal-direct-payment-breakdown strong { color: var(--portal-text); }
.portal-direct-payment-breakdown .is-total { margin-top: .15rem; padding-top: .65rem; border-top: 1px solid var(--portal-border); color: var(--portal-text); font-weight: 700; }
.portal-direct-payment-breakdown .is-total strong { color: var(--portal-accent-dark); font-size: 1rem; }

@media (max-width: 991.98px) {
  .portal-plan-card:hover { transform: none; }
}

@media (max-width: 575.98px) {
  .portal-billing-toggle { width: 100%; }
  .portal-billing-toggle button { flex: 1 1 0; min-width: 0; }
  .portal-current-plan { padding: 1.15rem; }
  .portal-plan-ribbon { right: .85rem; }
}

/* Premium shell, safe account menu and selectable themes */
html { background: var(--portal-page); }
body,
.portal-navbar,
.portal-sidebar,
.portal-page-header,
.portal-card,
.portal-stat-card,
.portal-global-search input,
.portal-wallet-pill,
.portal-user-button > span:first-child,
.portal-sidebar .nav-link,
.btn,
.form-control,
.form-select {
  transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}

.portal-navbar {
  overflow: visible !important;
  background: var(--portal-navbar-bg);
  color: var(--portal-navbar-text);
  border-color: var(--portal-navbar-control-border) !important;
  box-shadow: 0 6px 24px rgba(15, 23, 42, .055);
}
.portal-navbar .container-fluid,
.portal-navbar .nav,
.portal-profile-dropdown { overflow: visible !important; }
.portal-brand,
.portal-brand:hover,
.portal-user-button,
.portal-sidebar-toggle { color: var(--portal-navbar-text); }
.portal-brand-mark { background: var(--portal-brand-bg); color: var(--portal-brand-text); box-shadow: 0 8px 18px rgba(var(--portal-accent-rgb), .2); }
.portal-global-search input {
  background: var(--portal-search-bg);
  color: var(--portal-search-text);
  border-color: var(--portal-navbar-control-border);
}
.portal-global-search input::placeholder { color: var(--portal-search-placeholder); opacity: 1; }
.portal-global-search .icon { color: var(--portal-search-placeholder); }
.portal-global-search input:focus {
  background: var(--portal-navbar-control-bg);
  border-color: var(--portal-accent);
  box-shadow: 0 0 0 .2rem rgba(var(--portal-accent-rgb), .15);
}
.portal-wallet-pill {
  background: var(--portal-navbar-control-bg);
  border-color: var(--portal-navbar-control-border);
  color: var(--portal-navbar-text);
  box-shadow: 0 2px 8px rgba(15, 23, 42, .035);
}
.portal-wallet-pill:hover { color: var(--portal-accent); border-color: var(--portal-accent); }
.portal-user-button { border-radius: .75rem; padding: .28rem .42rem; }
.portal-user-button:hover,
.portal-user-button[aria-expanded="true"] { background: var(--portal-navbar-control-bg); color: var(--portal-navbar-text); }
.portal-user-button > span:first-child {
  background: var(--portal-accent-soft);
  color: var(--portal-accent-dark);
  box-shadow: inset 0 0 0 1px rgba(var(--portal-accent-rgb), .08);
}
html[data-portal-theme="navy-premium"] .portal-user-button > span:first-child {
  background: rgba(255, 255, 255, .12);
  color: #ffffff;
}

.portal-profile-dropdown { position: relative; flex: 0 0 auto; }
.portal-profile-menu {
  position: fixed !important;
  top: calc(var(--portal-navbar-height) + .45rem) !important;
  right: max(.75rem, env(safe-area-inset-right)) !important;
  bottom: auto !important;
  left: auto !important;
  transform: none !important;
  width: min(19rem, calc(100vw - 1.5rem));
  min-width: 0;
  max-width: calc(100vw - 1.5rem);
  max-height: calc(100vh - var(--portal-navbar-height) - 1rem);
  padding: .55rem;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  border: 1px solid var(--portal-border);
  border-radius: .9rem;
  background: var(--portal-surface);
  color: var(--portal-text);
  box-shadow: var(--portal-dropdown-shadow);
  z-index: 1085;
}
.portal-profile-menu::before {
  content: "";
  position: absolute;
  top: -.35rem;
  right: 1.05rem;
  width: .7rem;
  height: .7rem;
  transform: rotate(45deg);
  border-top: 1px solid var(--portal-border);
  border-left: 1px solid var(--portal-border);
  background: var(--portal-surface);
}
.portal-profile-menu-header {
  position: relative;
  display: flex;
  align-items: center;
  gap: .7rem;
  padding: .6rem .65rem .75rem;
  border-bottom: 1px solid var(--portal-border-soft);
}
.portal-profile-menu-header > div { display: grid; min-width: 0; }
.portal-profile-menu-header strong,
.portal-profile-menu-header small { display: block; }
.portal-profile-menu-header small { color: var(--portal-muted); font-size: .72rem; margin-top: .12rem; }
.portal-profile-menu-avatar {
  display: inline-flex;
  width: 2.35rem;
  min-width: 2.35rem;
  height: 2.35rem;
  align-items: center;
  justify-content: center;
  border-radius: .72rem;
  background: var(--portal-accent-soft);
  color: var(--portal-accent-dark);
  font-weight: 800;
}
.portal-profile-menu-links { padding-top: .35rem; }
.portal-profile-menu .dropdown-item {
  border-radius: .58rem;
  padding: .68rem .72rem;
  color: var(--portal-text);
  font-size: .86rem;
}
.portal-profile-menu .dropdown-item:hover,
.portal-profile-menu .dropdown-item:focus { background: var(--portal-accent-soft); color: var(--portal-accent-dark); }
.portal-profile-menu .dropdown-item small { color: var(--portal-muted); font-size: .68rem; }
.portal-profile-menu .dropdown-divider { margin: .4rem 0; border-color: var(--portal-border-soft); }
.portal-profile-menu .dropdown-item.text-danger { color: #dc2626 !important; }
.portal-profile-menu .dropdown-item.text-danger:hover { background: #fff0f0; color: #b91c1c !important; }

.portal-sidebar {
  background: var(--portal-sidebar);
  border-color: var(--portal-border);
  box-shadow: inset -1px 0 0 rgba(255, 255, 255, .25);
}
.portal-provider-summary { border-color: var(--portal-border-soft); }
.portal-sidebar .sidebar-section-body { color: var(--portal-sidebar-text); }
.portal-sidebar .nav-item-header { color: var(--portal-sidebar-muted); }
.portal-sidebar .nav-link { color: var(--portal-sidebar-text); }
.portal-sidebar .nav-link .icon { color: var(--portal-sidebar-icon); }
.portal-sidebar .nav-link:hover { background: var(--portal-sidebar-hover); color: var(--portal-sidebar-active-text); }
.portal-sidebar .nav-link:hover .icon { color: var(--portal-accent); }
.portal-sidebar .nav-link.active {
  background: var(--portal-sidebar-active);
  color: var(--portal-sidebar-active-text);
  box-shadow: inset 3px 0 0 var(--portal-accent);
}
.portal-sidebar .nav-link.active .icon { color: var(--portal-accent); }
html[data-portal-theme="navy-premium"] .portal-sidebar .text-muted,
html[data-portal-theme="navy-premium"] .portal-sidebar .badge { color: var(--portal-sidebar-muted) !important; }
html[data-portal-theme="navy-premium"] .portal-sidebar .nav-link .badge {
  border-color: rgba(255, 255, 255, .14) !important;
  background: rgba(255, 255, 255, .08) !important;
  color: #dce7f7 !important;
}

.portal-page-header {
  background: var(--portal-page-header-bg);
  border-color: var(--portal-border) !important;
  box-shadow: 0 1px 0 rgba(15, 23, 42, .02);
  backdrop-filter: blur(8px);
}
.portal-card {
  border-color: var(--portal-border);
  border-radius: 1rem;
  background: var(--portal-surface);
  box-shadow: var(--portal-card-shadow);
}
.portal-card .card-header,
.portal-card .card-footer { background: var(--portal-surface); border-color: var(--portal-border-soft) !important; }
.portal-card .card-header h5 { letter-spacing: -.012em; }
.portal-stat-card {
  border-color: var(--portal-border);
  border-radius: 1rem;
  background: var(--portal-surface);
  box-shadow: var(--portal-card-shadow);
}
.portal-stat-card:hover {
  border-color: rgba(var(--portal-accent-rgb), .42);
  box-shadow: var(--portal-card-shadow-hover);
  transform: translateY(-2px);
}
.portal-stat-icon { box-shadow: inset 0 0 0 1px rgba(var(--portal-accent-rgb), .08); }
.portal-table thead th { background: var(--portal-table-head); border-color: var(--portal-border); }
.portal-table td,
.portal-detail-table th,
.portal-detail-table td,
.portal-profile-status > div { border-color: var(--portal-border-soft); }
.portal-table tbody tr:hover { background: var(--portal-surface-soft); }
.portal-detail-table th { background: var(--portal-surface-soft); }
.portal-footer { background: var(--portal-surface); border-color: var(--portal-border); }

.form-control,
.form-select,
.input-group-text {
  background-color: var(--portal-surface);
  color: var(--portal-text);
  border-color: var(--portal-border);
}
.form-control:focus,
.form-select:focus { border-color: var(--portal-accent); box-shadow: 0 0 0 .2rem rgba(var(--portal-accent-rgb), .14); }
.input-group-text { background: var(--portal-surface-soft); }
.btn { font-weight: 650; }
.btn-primary {
  box-shadow: 0 7px 16px rgba(var(--portal-accent-rgb), .18);
}
.btn-primary:hover,
.btn-primary:focus { box-shadow: 0 9px 20px rgba(var(--portal-accent-rgb), .24); }
.btn-light { background: var(--portal-surface); border-color: var(--portal-border); color: var(--portal-text); }
.btn-light:hover { background: var(--portal-surface-soft); border-color: rgba(var(--portal-accent-rgb), .32); color: var(--portal-text); }
.btn-outline-primary { color: var(--portal-accent); border-color: var(--portal-accent); }
.btn-outline-primary:hover { background: var(--portal-accent); border-color: var(--portal-accent); color: #fff; }
.portal-profile-avatar,
.portal-empty-icon,
.portal-current-plan-icon,
.portal-login-lock,
.portal-error-mark { box-shadow: inset 0 0 0 1px rgba(var(--portal-accent-rgb), .08); }
.portal-credit-balance-card,
.portal-wallet-card {
  border-color: var(--portal-credit-panel);
  background:
    radial-gradient(circle at top right, rgba(255, 255, 255, .14), transparent 42%),
    var(--portal-credit-panel);
}
.portal-plan-card:hover { box-shadow: var(--portal-card-shadow-hover); }
.portal-plan-card.is-recommended {
  border-color: rgba(var(--portal-accent-rgb), .6);
  box-shadow: 0 10px 28px rgba(var(--portal-accent-rgb), .11);
}
.portal-billing-toggle,
.portal-credit-total,
.portal-direct-payment-breakdown { background: var(--portal-surface); border-color: var(--portal-border); }
.portal-credit-total { background: var(--portal-surface-soft); }
.portal-billing-toggle button.active { box-shadow: 0 6px 15px rgba(var(--portal-accent-rgb), .2); }

.portal-appearance-current {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: .35rem;
  min-width: 0;
  margin-left: auto;
}
.portal-appearance-current small {
  max-width: 7.5rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.portal-appearance-chevron {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1rem;
  height: 1rem;
  color: var(--portal-muted);
  font-size: .9rem;
  line-height: 1;
  transition: transform .15s ease;
}
.portal-appearance-chevron.is-open { transform: rotate(180deg); }
.portal-inline-themes {
  display: grid;
  gap: .42rem;
  margin: .2rem .2rem .45rem;
  padding: .55rem;
  border: 1px solid var(--portal-border-soft);
  border-radius: .72rem;
  background: var(--portal-surface-soft);
}
.portal-inline-theme {
  width: 100%;
  display: grid;
  grid-template-columns: 2.65rem minmax(0, 1fr) 1rem;
  align-items: center;
  gap: .65rem;
  padding: .58rem;
  border: 1px solid transparent;
  border-radius: .62rem;
  background: transparent;
  color: var(--portal-text);
  text-align: left;
}
.portal-inline-theme:hover,
.portal-inline-theme:focus-visible {
  border-color: rgba(var(--portal-accent-rgb), .28);
  background: var(--portal-surface);
  outline: 0;
}
.portal-inline-theme.active {
  border-color: var(--portal-accent);
  background: var(--portal-surface);
  box-shadow: 0 0 0 .1rem rgba(var(--portal-accent-rgb), .08);
}
.portal-inline-theme > span:nth-child(2) { display: grid; min-width: 0; }
.portal-inline-theme strong {
  overflow: hidden;
  color: var(--portal-text);
  font-size: .76rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.portal-inline-theme small {
  margin-top: .08rem;
  overflow: hidden;
  color: var(--portal-muted);
  font-size: .64rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.portal-inline-theme-preview {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  width: 2.65rem;
  height: 1.8rem;
  overflow: hidden;
  border: 1px solid rgba(15, 23, 42, .1);
  border-radius: .45rem;
  background: #fff;
}
.portal-inline-theme-preview i { display: block; }
.portal-theme-preview-blue i:nth-child(1) { background: #2563eb; }
.portal-theme-preview-blue i:nth-child(2) { background: #eaf1ff; }
.portal-theme-preview-blue i:nth-child(3) { background: #ffffff; }
.portal-theme-preview-blue i:nth-child(4) { background: #172033; }
.portal-theme-preview-teal i:nth-child(1) { background: #0f766e; }
.portal-theme-preview-teal i:nth-child(2) { background: #e3f5f2; }
.portal-theme-preview-teal i:nth-child(3) { background: #ffffff; }
.portal-theme-preview-teal i:nth-child(4) { background: #143e3b; }
.portal-theme-preview-navy i:nth-child(1) { background: #101a30; }
.portal-theme-preview-navy i:nth-child(2) { background: #4f8cff; }
.portal-theme-preview-navy i:nth-child(3) { background: #f1f4f9; }
.portal-theme-preview-navy i:nth-child(4) { background: #ffffff; }
.portal-inline-theme-check {
  visibility: hidden;
  width: 1rem;
  height: 1rem;
  color: var(--portal-accent);
  stroke-width: 2.5;
}
.portal-inline-theme.active .portal-inline-theme-check { visibility: visible; }

@media (max-width: 575.98px) {
  .portal-profile-menu {
    top: calc(var(--portal-navbar-height) + .3rem) !important;
    right: .55rem !important;
    width: calc(100vw - 1.1rem);
    max-width: calc(100vw - 1.1rem);
  }
  .portal-profile-menu::before { display: none; }
  .portal-inline-theme { grid-template-columns: 2.45rem minmax(0, 1fr) 1rem; }
  .portal-inline-theme-preview { width: 2.45rem; }
}
.portal-profile-menu .dropdown-item { display: flex; align-items: center; gap: .65rem; }
.portal-profile-menu .dropdown-item > .icon,
.portal-menu-item-main .icon { width: 1rem; height: 1rem; color: var(--portal-muted); }
.portal-profile-menu .dropdown-item:hover > .icon,
.portal-profile-menu .dropdown-item:focus > .icon,
.portal-profile-menu .dropdown-item:hover .portal-menu-item-main .icon,
.portal-profile-menu .dropdown-item:focus .portal-menu-item-main .icon { color: var(--portal-accent); }
.portal-menu-item-main { display: inline-flex; align-items: center; gap: .65rem; min-width: 0; }
.portal-profile-menu { scrollbar-width: thin; }
.text-primary { color: var(--portal-accent) !important; }
.bg-primary-subtle { background: var(--portal-accent-soft) !important; }

/* Layout containment: prevent menus, long values and responsive content from widening the document. */
.portal-navbar .container-fluid,
.portal-navbar .nav,
.portal-page-header,
.page-header-content,
.table-responsive { min-width: 0; max-width: 100%; }
.portal-navbar .nav { flex-wrap: nowrap; }
.table-responsive { overflow-x: auto; }
img, svg { max-width: 100%; }
@supports not (overflow: clip) {
  html, body, .page-content, .content-wrapper { overflow-x: hidden; }
}

/* Marketplace transparency and provider outcome workflow */
.portal-price-values { display: flex; gap: .5rem; align-items: baseline; justify-content: flex-end; }
.portal-price-values del { color: var(--portal-muted); font-size: .76rem; }
.portal-price-box small { display: block; margin-top: .2rem; color: #15803d; font-size: .72rem; font-weight: 700; }
.portal-marketplace-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--portal-border);
  border-radius: .85rem;
  background: var(--portal-surface);
  box-shadow: var(--portal-card-shadow);
}
.portal-marketplace-trust > div { padding: .9rem 1rem; border-right: 1px solid var(--portal-border-soft); }
.portal-marketplace-trust > div:last-child { border-right: 0; }
.portal-marketplace-trust span { display: block; color: var(--portal-muted); font-size: .72rem; margin-bottom: .25rem; }
.portal-marketplace-trust strong { display: block; font-size: .88rem; }
.portal-marketplace-trust .is-high, .portal-marketplace-mini .is-high { color: #b42318; }
.portal-marketplace-trust .is-medium, .portal-marketplace-mini .is-medium { color: #b54708; }
.portal-marketplace-trust .is-low, .portal-marketplace-mini .is-low { color: #027a48; }
.portal-marketplace-trust .is-not_assessed { color: var(--portal-muted); }
.portal-marketplace-trust .is-confirmed { color: #067647; }
.portal-marketplace-mini { display: flex; flex-wrap: wrap; gap: .35rem; }
.portal-marketplace-mini span { display: inline-flex; border-radius: 999px; padding: .22rem .48rem; background: var(--portal-surface-soft); border: 1px solid var(--portal-border-soft); font-size: .69rem; font-weight: 700; }
.portal-step-label { color: var(--portal-accent); text-transform: uppercase; font-size: .67rem; letter-spacing: .08em; font-weight: 800; margin-bottom: .2rem; }
.portal-outcome-card { scroll-margin-top: calc(var(--portal-navbar-height) + 1rem); border-top: 3px solid var(--portal-accent); }
.portal-outcome-radio-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.portal-outcome-radio-grid label { display: flex; gap: .7rem; align-items: flex-start; border: 1px solid var(--portal-border); border-radius: .75rem; padding: .85rem; cursor: pointer; background: var(--portal-surface); transition: .15s ease; }
.portal-outcome-radio-grid label:hover, .portal-outcome-radio-grid label.selected { border-color: var(--portal-accent); box-shadow: 0 0 0 .18rem rgba(var(--portal-accent-rgb), .1); }
.portal-outcome-radio-grid input { margin-top: .2rem; accent-color: var(--portal-accent); }
.portal-outcome-radio-grid strong, .portal-outcome-radio-grid small { display: block; }
.portal-outcome-radio-grid small { color: var(--portal-muted); margin-top: .15rem; line-height: 1.35; }
.portal-policy-warning { border: 1px solid #fedf89; background: #fffaeb; color: #7a2e0e; border-radius: .7rem; padding: .75rem .85rem; font-size: .78rem; line-height: 1.45; }
.portal-unlock-price { border: 1px solid var(--portal-border-soft); border-radius: .7rem; overflow: hidden; }
.portal-unlock-price > div { display: flex; justify-content: space-between; gap: 1rem; padding: .62rem .75rem; border-bottom: 1px solid var(--portal-border-soft); font-size: .8rem; }
.portal-unlock-price > div:last-child { border-bottom: 0; }
.portal-unlock-price .is-total { background: var(--portal-surface-soft); font-weight: 800; }
.portal-pending-banner { display: flex; align-items: center; gap: 1rem; justify-content: space-between; border: 1px solid #fedf89; background: #fffaeb; border-radius: .85rem; padding: .85rem 1rem; }
.portal-pending-banner strong, .portal-pending-banner span { display: block; }
.portal-pending-banner span { color: #7a2e0e; font-size: .78rem; margin-top: .2rem; }
.portal-reminder-backdrop { position: fixed; inset: 0; z-index: 1090; background: rgba(15, 23, 42, .52); display: grid; place-items: center; padding: 1rem; }
.portal-reminder-dialog { width: min(680px, 100%); max-height: min(760px, calc(100vh - 2rem)); overflow: auto; background: var(--portal-surface); border-radius: 1rem; box-shadow: 0 28px 80px rgba(15, 23, 42, .3); }
.portal-reminder-header { display: flex; justify-content: space-between; gap: 1rem; padding: 1.1rem 1.2rem .75rem; border-bottom: 1px solid var(--portal-border-soft); }
.portal-reminder-header h3 { margin: .1rem 0 0; font-size: 1.15rem; }
.portal-reminder-header > button { border: 0; background: transparent; font-size: 1.5rem; color: var(--portal-muted); }
.portal-reminder-kicker { color: var(--portal-accent); text-transform: uppercase; font-size: .68rem; letter-spacing: .08em; font-weight: 800; }
.portal-reminder-dialog > .portal-policy-warning { margin: 1rem 1.2rem 0; }
.portal-reminder-list { padding: .75rem 1.2rem; }
.portal-reminder-item { display: flex; gap: .75rem; justify-content: space-between; align-items: center; padding: .75rem 0; border-bottom: 1px solid var(--portal-border-soft); }
.portal-reminder-item:last-child { border-bottom: 0; }
.portal-reminder-item strong, .portal-reminder-item span { display: block; }
.portal-reminder-item span { color: var(--portal-muted); font-size: .75rem; margin-top: .15rem; }
.portal-reminder-footer { display: flex; justify-content: flex-end; gap: .65rem; padding: .9rem 1.2rem 1.2rem; border-top: 1px solid var(--portal-border-soft); }

@media (max-width: 767.98px) {
  .portal-marketplace-trust { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .portal-marketplace-trust > div:nth-child(2) { border-right: 0; }
  .portal-marketplace-trust > div:nth-child(-n+2) { border-bottom: 1px solid var(--portal-border-soft); }
  .portal-outcome-radio-grid { grid-template-columns: 1fr; }
  .portal-pending-banner, .portal-reminder-item { align-items: stretch; flex-direction: column; }
  .portal-reminder-footer { flex-direction: column-reverse; }
  .portal-reminder-footer .btn { width: 100%; }
}

/* Nearby marketplace experience */
.portal-location-required,
.portal-pending-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.1rem;
  border: 1px solid #f3d18a;
  border-radius: .9rem;
  background: #fff9eb;
  color: #7a4b00;
}
.portal-location-required strong,
.portal-location-required span { display: block; }
.portal-location-required span { margin-top: .18rem; color: #8b641c; font-size: .82rem; }

.portal-lead-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
  max-width: 42rem;
}
.portal-lead-tabs > a {
  display: flex;
  align-items: center;
  gap: .8rem;
  min-width: 0;
  padding: .85rem 1rem;
  border: 1px solid var(--portal-border);
  border-radius: .85rem;
  background: #fff;
  color: var(--portal-text);
}
.portal-lead-tabs > a:hover { border-color: #a9bce9; color: var(--portal-accent-dark); }
.portal-lead-tabs > a.active {
  border-color: rgba(var(--portal-accent-rgb), .52);
  background: var(--portal-accent-soft);
  color: var(--portal-accent-dark);
  box-shadow: 0 0 0 .18rem rgba(var(--portal-accent-rgb), .07);
}
.portal-lead-tabs .icon { width: 1.2rem; height: 1.2rem; color: var(--portal-accent); flex: 0 0 auto; }
.portal-lead-tabs span { display: grid; min-width: 0; }
.portal-lead-tabs strong { font-size: .87rem; }
.portal-lead-tabs small { color: var(--portal-muted); font-size: .7rem; margin-top: .1rem; }

.portal-lead-filter-bar {
  display: grid;
  grid-template-columns: minmax(16rem, 1.7fr) minmax(11rem, .8fr) minmax(9rem, .7fr) auto auto;
  gap: .6rem;
  align-items: center;
}

.portal-lead-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.portal-opportunity-card {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--portal-border);
  border-radius: 1rem;
  background: #fff;
  box-shadow: 0 8px 28px rgba(24, 39, 75, .055);
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.portal-opportunity-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: var(--portal-accent);
}
.portal-opportunity-card.is-unlocked::before { background: #0f9f6e; }
.portal-opportunity-card:hover {
  transform: translateY(-2px);
  border-color: #b8c6dc;
  box-shadow: 0 14px 36px rgba(24, 39, 75, .085);
}
.portal-opportunity-topline,
.portal-opportunity-heading,
.portal-opportunity-location,
.portal-provider-signal,
.portal-opportunity-meta,
.portal-opportunity-footer { padding-left: 1.2rem; padding-right: 1.2rem; }
.portal-opportunity-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  padding-top: 1.05rem;
}
@media (max-width: 1199.98px) {
  .portal-lead-filter-bar { grid-template-columns: minmax(0, 1fr) minmax(10rem, .7fr) minmax(8rem, .6fr) auto auto; }
}
@media (max-width: 991.98px) {
  .portal-lead-grid { grid-template-columns: 1fr; }
  .portal-lead-filter-bar { grid-template-columns: 1fr 1fr; }
  .portal-lead-filter-bar .portal-filter-search { grid-column: 1 / -1; }
}
@media (max-width: 575.98px) {
  .portal-location-required { align-items: flex-start; flex-direction: column; }
  .portal-lead-tabs { grid-template-columns: 1fr; }
  .portal-lead-filter-bar { grid-template-columns: 1fr; }
  .portal-lead-filter-bar .portal-filter-search { grid-column: auto; }
  .portal-opportunity-location,
  .portal-provider-signal,
  .portal-opportunity-meta { grid-template-columns: 1fr; }
  .portal-opportunity-footer { align-items: stretch; flex-direction: column; }
  .portal-opportunity-footer .btn { width: 100%; }
}

/* =========================================================
   Provider social-workspace UI refresh
   Clean, familiar professional hierarchy without changing
   Findoly business logic or theme controls.
   ========================================================= */

:root {
  --provider-feed-width: 46rem;
  --provider-rail-width: 19rem;
  --provider-ui-border: #d9e0e8;
  --provider-ui-muted: #5f6b7a;
  --provider-ui-page: #f3f6f8;
  --provider-ui-hover: #f7f9fb;
  --provider-ui-blue-soft: #edf4ff;
  --provider-ui-green-soft: #ecfdf3;
}

body {
  background: var(--provider-ui-page);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: .925rem;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.portal-navbar {
  min-height: 3.75rem;
  padding: .42rem 1.35rem;
  border-bottom: 1px solid var(--provider-ui-border) !important;
  box-shadow: 0 1px 0 rgba(15, 23, 42, .025);
}

.portal-global-search { width: min(35rem, 100%); }
.portal-global-search input {
  min-height: 2.55rem;
  border-radius: .5rem;
  background: #eef3f7;
  border-color: transparent;
}
.portal-global-search input:focus { border-color: var(--portal-accent); background: #fff; }
.portal-brand-mark { border-radius: .48rem; }
.portal-wallet-pill { border-radius: .5rem; }

.portal-sidebar { width: 15.75rem; min-width: 15.75rem; }
.portal-sidebar .nav-link { margin: .1rem .65rem; border-radius: .5rem; padding: .68rem .82rem; }
.portal-sidebar .nav-link.active { box-shadow: inset 3px 0 0 var(--portal-accent); }
.portal-provider-summary .sidebar-section-body { padding: .9rem 1.05rem; }

.portal-page-header { padding: 1rem 1.35rem; }
.portal-page-header .page-title { font-size: 1.25rem; }
.content { padding: 1.15rem; }
.portal-card { border-radius: .72rem; border-color: var(--provider-ui-border); box-shadow: none; }
.portal-card:hover { box-shadow: none; }
.btn { border-radius: 1.6rem; min-height: 2.5rem; padding-left: 1.05rem; padding-right: 1.05rem; }
.btn-sm { min-height: 2rem; }
.form-control,
.form-select { min-height: 2.7rem; border-radius: .48rem; }

/* Lead section tabs */
.provider-lead-page { max-width: 77rem; margin: 0 auto; }
.provider-lead-tabs {
  display: flex;
  align-items: stretch;
  gap: .65rem;
  margin-bottom: .85rem;
}
.provider-lead-tabs > a {
  display: flex;
  align-items: center;
  gap: .7rem;
  min-width: 0;
  padding: .7rem .85rem;
  border: 1px solid var(--provider-ui-border);
  border-radius: .68rem;
  background: #fff;
  color: var(--portal-text);
  transition: border-color .15s ease, background-color .15s ease, color .15s ease;
}
.provider-lead-tabs > a:hover { border-color: #aebdce; color: var(--portal-accent-dark); }
.provider-lead-tabs > a.active {
  border-color: rgba(var(--portal-accent-rgb), .45);
  background: var(--provider-ui-blue-soft);
  color: var(--portal-accent-dark);
}
.provider-tab-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  min-width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background: #eef2f6;
  color: #526174;
}
.provider-lead-tabs > a.active .provider-tab-icon { background: #dceaff; color: var(--portal-accent); }
.provider-tab-icon .icon { width: .95rem; height: .95rem; }
.provider-tab-copy { display: grid; min-width: 0; }
.provider-tab-copy strong { font-size: .82rem; line-height: 1.2; }
.provider-tab-copy small { margin-top: .08rem; color: var(--provider-ui-muted); font-size: .68rem; }
.provider-tab-count {
  min-width: 1.55rem;
  margin-left: auto;
  padding: .14rem .42rem;
  border-radius: 999px;
  background: #e8edf3;
  color: #435065;
  text-align: center;
  font-size: .67rem;
  font-weight: 700;
}
.provider-lead-tabs > a.active .provider-tab-count { background: var(--portal-accent); color: #fff; }

/* Compact filter bar */
.provider-filter-card { margin-bottom: .9rem; overflow: visible; }
.provider-filter-grid {
  display: grid;
  grid-template-columns: minmax(17rem, 1.7fr) minmax(10.5rem, .7fr) minmax(9rem, .65fr) auto auto;
  align-items: center;
  gap: .55rem;
  padding: .72rem;
}
.provider-filter-search { position: relative; min-width: 0; }
.provider-filter-search .icon {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: .78rem;
  width: 1rem;
  height: 1rem;
  transform: translateY(-50%);
  color: #6b7889;
}
.provider-filter-search .form-control { width: 100%; padding-left: 2.35rem; }
.provider-filter-grid .form-control,
.provider-filter-grid .form-select { min-height: 2.65rem; background-color: #fff; }
.provider-filter-apply,
.provider-filter-clear { min-height: 2.65rem; white-space: nowrap; }
.provider-filter-clear { border-color: transparent; }

/* Feed and right rail */
.provider-feed-layout {
  display: grid;
  grid-template-columns: minmax(0, var(--provider-feed-width)) minmax(16rem, var(--provider-rail-width));
  justify-content: center;
  align-items: start;
  gap: 1rem;
}
.provider-lead-feed { display: grid; gap: .75rem; min-width: 0; }
.provider-feed-aside { display: grid; gap: .75rem; position: sticky; top: calc(var(--portal-navbar-height) + 1rem); }

.provider-feed-card {
  overflow: hidden;
  min-width: 0;
  border: 1px solid var(--provider-ui-border);
  border-radius: .72rem;
  background: #fff;
  color: var(--portal-text);
  transition: border-color .14s ease, box-shadow .14s ease;
}
.provider-feed-card:hover {
  border-color: #bac6d3;
  box-shadow: 0 4px 14px rgba(15, 23, 42, .055);
}
.provider-feed-card.is-unlocked { border-left: 3px solid #0b9b65; }
.provider-feed-card.is-marketplace { border-left: 3px solid var(--portal-accent); }

.provider-feed-header {
  display: grid;
  grid-template-columns: 2.65rem minmax(0, 1fr) auto;
  gap: .72rem;
  align-items: start;
  padding: .95rem 1rem .7rem;
}
.provider-feed-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.65rem;
  height: 2.65rem;
  border-radius: .48rem;
  background: var(--provider-ui-blue-soft);
  color: var(--portal-accent);
}
.provider-feed-card.is-unlocked .provider-feed-avatar { background: var(--provider-ui-green-soft); color: #087a51; }
.provider-feed-avatar .icon { width: 1.2rem; height: 1.2rem; }
.provider-feed-category { color: var(--provider-ui-muted); font-size: .7rem; font-weight: 650; line-height: 1.25; }
.provider-feed-identity h2 { margin: .12rem 0 .22rem; font-size: 1rem; line-height: 1.35; font-weight: 700; letter-spacing: -.01em; }
.provider-feed-identity h2 a { color: var(--portal-text); }
.provider-feed-identity h2 a:hover { color: var(--portal-accent-dark); text-decoration: underline; }
.provider-feed-context {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .28rem;
  color: var(--provider-ui-muted);
  font-size: .71rem;
  line-height: 1.4;
}
.provider-feed-distance { display: inline-flex; align-items: center; gap: .28rem; }
.provider-priority-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 1.55rem;
  max-width: 9.5rem;
  padding: .2rem .5rem;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: .67rem;
  font-weight: 700;
  white-space: nowrap;
}
.provider-priority-badge.is-high { color: #a72f27; border-color: #f2c6c0; background: #fff1ef; }
.provider-priority-badge.is-medium { color: #8a5600; border-color: #efd59e; background: #fff9e9; }
.provider-priority-badge.is-low { color: #08744e; border-color: #b8e6ce; background: #edfbf4; }
.provider-priority-badge.is-not_assessed { color: #5e6978; border-color: #dce2e9; background: #f5f7f9; }

.provider-feed-body { padding: 0 1rem .9rem; }
.provider-feed-summary {
  margin: 0 0 .8rem;
  color: #303b49;
  font-size: .82rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.provider-transparency-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem;
}
.provider-transparency-item {
  display: flex;
  align-items: center;
  gap: .58rem;
  min-width: 0;
  padding: .62rem .68rem;
  border: 1px solid #e2e7ed;
  border-radius: .55rem;
  background: #f8fafb;
}
.provider-transparency-item.is-confirmed { border-color: #b8e5cd; background: #effcf5; }
.provider-transparency-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.8rem;
  min-width: 1.8rem;
  height: 1.8rem;
  border-radius: 50%;
  background: #e9eef3;
  color: #566577;
}
.provider-transparency-item.is-confirmed .provider-transparency-icon { background: #d6f4e4; color: #087a51; }
.provider-transparency-icon .icon { width: .82rem; height: .82rem; }
.provider-transparency-item > div { display: grid; min-width: 0; }
.provider-transparency-item strong { color: var(--portal-text); font-size: .73rem; line-height: 1.3; overflow-wrap: anywhere; }
.provider-transparency-item small { margin-top: .08rem; color: var(--provider-ui-muted); font-size: .63rem; }

.provider-feed-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: .78rem;
  padding-top: .72rem;
  border-top: 1px solid #e8edf2;
}
.provider-feed-facts > div { display: grid; min-width: 0; }
.provider-feed-facts span { color: var(--provider-ui-muted); font-size: .65rem; }
.provider-feed-facts strong { margin-top: .1rem; color: var(--portal-text); font-size: .76rem; overflow-wrap: anywhere; }

.provider-feed-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .8rem;
  padding: .72rem 1rem;
  border-top: 1px solid #e7ecf1;
  background: #fbfcfd;
}
.provider-feed-reference { display: flex; flex-wrap: wrap; align-items: center; gap: .48rem; }
.provider-feed-reference .portal-id { max-width: 15rem; color: #596677; font-size: .66rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.provider-feed-status { font-size: .64rem; }
.provider-feed-footer .btn { min-height: 2.2rem; padding: .42rem .9rem; font-size: .75rem; white-space: nowrap; }

.provider-feed-empty .card-body { padding: 3rem 1.25rem; }
.provider-feed-empty h3 { margin: .75rem 0 .2rem; font-size: 1rem; }
.provider-feed-empty p { max-width: 30rem; margin: 0 auto; color: var(--provider-ui-muted); font-size: .78rem; }
.provider-feed-pagination { display: flex; align-items: center; min-height: 3.5rem; padding: .55rem .8rem; }

.provider-aside-card { padding: .9rem; }
.provider-aside-heading { display: flex; align-items: flex-start; gap: .62rem; }
.provider-aside-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  min-width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background: var(--provider-ui-blue-soft);
  color: var(--portal-accent);
}
.provider-aside-icon .icon { width: .9rem; height: .9rem; }
.provider-aside-heading h3 { margin: .03rem 0 .18rem; font-size: .87rem; }
.provider-aside-heading p { margin: 0; color: var(--provider-ui-muted); font-size: .7rem; line-height: 1.45; }
.provider-aside-list { display: grid; gap: .65rem; margin: .85rem 0 0; padding: .78rem 0 0; border-top: 1px solid #e7ecf1; list-style: none; }
.provider-aside-list li { display: grid; gap: .08rem; }
.provider-aside-list strong { font-size: .72rem; }
.provider-aside-list span { color: var(--provider-ui-muted); font-size: .67rem; line-height: 1.4; }
.provider-aside-link { display: inline-flex; margin-top: .75rem; color: var(--portal-accent-dark); font-size: .72rem; font-weight: 700; }
.provider-aside-link:hover { text-decoration: underline; }

/* Location and reminder alerts */
.provider-location-alert,
.portal-pending-banner {
  border-radius: .66rem;
  box-shadow: none;
}
.portal-pending-banner { background: #fff8e8; }
.portal-reminder-dialog { border-radius: .72rem; }
.portal-reminder-item { border-radius: .5rem; }

/* Lead detail: keep mandatory outcome prominent and easy to scan */
.portal-lead-header { padding: 1rem 1.1rem; }
.portal-lead-header h3 { font-size: 1.1rem; }
.portal-price-box {
  min-width: 10rem;
  padding: .62rem .75rem;
  border: 1px solid var(--provider-ui-border);
  border-radius: .55rem;
  background: #f8fafb;
}
.portal-price-box strong { font-size: 1.08rem; }
.portal-facts > div { padding: .75rem; background: #fbfcfd; }
.portal-marketplace-trust {
  border-radius: .7rem;
  border-color: var(--provider-ui-border);
  box-shadow: none;
}
.portal-marketplace-trust > div { padding: .75rem .85rem; }
.portal-outcome-card {
  border-top-width: 0;
  border-left: 3px solid var(--portal-accent);
  scroll-margin-top: calc(var(--portal-navbar-height) + 1rem);
}
.portal-outcome-radio-grid label {
  border-radius: .6rem;
  padding: .85rem;
}
.portal-outcome-radio-grid label.selected {
  border-color: var(--portal-accent);
  background: var(--provider-ui-blue-soft);
  box-shadow: 0 0 0 .13rem rgba(var(--portal-accent-rgb), .08);
}
.portal-policy-warning { border-radius: .55rem; }
.portal-contact-grid > div { border-radius: .55rem; background: #fbfcfd; }
.portal-detail-table th,
.portal-detail-table td { padding: .8rem 1rem; }

/* Dashboard and profile consistency */
.portal-stat-card {
  min-height: 7.7rem;
  border-radius: .7rem;
  box-shadow: none;
}
.portal-stat-card:hover { transform: none; border-color: #aebdce; box-shadow: 0 3px 10px rgba(15, 23, 42, .04); }
.portal-stat-card strong { font-size: 1.45rem; }
.portal-table thead th { color: #526174; font-size: .68rem; letter-spacing: .025em; }
.portal-table td { vertical-align: middle; }

@media (max-width: 1199.98px) {
  .provider-feed-layout { grid-template-columns: minmax(0, 1fr) 17rem; }
  .provider-filter-grid { grid-template-columns: minmax(15rem, 1fr) minmax(9rem, .65fr) minmax(8rem, .55fr) auto auto; }
}

@media (max-width: 991.98px) {
  .portal-sidebar { width: var(--portal-sidebar-width); min-width: var(--portal-sidebar-width); }
  .provider-feed-layout { grid-template-columns: minmax(0, 1fr); }
  .provider-feed-aside { display: none; }
  .provider-filter-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .provider-filter-search { grid-column: 1 / -1; }
  .provider-filter-clear { grid-column: auto; }
}

@media (max-width: 767.98px) {
  .content { padding: .8rem; }
  .portal-page-header { padding: .85rem 1rem; }
  .provider-lead-tabs { gap: .45rem; }
  .provider-lead-tabs > a { flex: 1 1 0; padding: .62rem .68rem; }
  .provider-tab-copy small { display: none; }
  .provider-tab-count { display: none !important; }
  .provider-filter-grid { grid-template-columns: 1fr 1fr; }
  .provider-filter-search { grid-column: 1 / -1; }
  .provider-filter-field { min-width: 0; }
  .provider-filter-apply,
  .provider-filter-clear { width: 100%; }
  .provider-feed-header { grid-template-columns: 2.4rem minmax(0, 1fr); }
  .provider-feed-avatar { width: 2.4rem; height: 2.4rem; }
  .provider-priority-badge { grid-column: 2; justify-self: start; margin-top: -.08rem; }
  .provider-transparency-row,
  .provider-feed-facts { grid-template-columns: 1fr; gap: .48rem; }
  .provider-feed-footer { align-items: stretch; flex-direction: column; }
  .provider-feed-footer .btn { width: 100%; }
  .provider-feed-reference .portal-id { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
  .portal-lead-header { flex-direction: column; }
  .portal-price-box { width: 100%; min-width: 0; text-align: left; }
}

@media (max-width: 479.98px) {
  .portal-navbar { padding-left: .7rem; padding-right: .7rem; }
  .provider-lead-tabs { display: grid; grid-template-columns: 1fr; }
  .provider-filter-grid { grid-template-columns: 1fr; }
  .provider-filter-search { grid-column: auto; }
  .provider-feed-header { padding-left: .8rem; padding-right: .8rem; }
  .provider-feed-body { padding-left: .8rem; padding-right: .8rem; }
  .provider-feed-footer { padding-left: .8rem; padding-right: .8rem; }
}

/* =========================================================
   Findoly provider workspace — LinkedIn-inspired responsive UI
   Final presentation layer. Business behavior remains unchanged.
   ========================================================= */
:root {
  --portal-navbar-height: 4.15rem;
  --portal-sidebar-width: 17rem;
  --findoly-orange: #ff6528;
  --findoly-navy: #0f3f78;
  --findoly-blue: #0a66c2;
  --findoly-blue-dark: #004182;
  --findoly-page: #f3f2ef;
  --findoly-card: #ffffff;
  --findoly-line: #d6d9dc;
  --findoly-text: #191919;
  --findoly-muted: #666666;
}

body {
  background: var(--findoly-page);
  color: var(--findoly-text);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-size: .93rem;
}

/* Shared top navigation */
.portal-navbar {
  position: sticky;
  inset: 0 0 auto;
  z-index: 1040;
  min-height: var(--portal-navbar-height);
  padding: 0;
  background: rgba(255, 255, 255, .985);
  border-bottom: 1px solid var(--findoly-line) !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .04);
}
.portal-navbar-inner {
  width: min(100%, 90rem);
  min-height: var(--portal-navbar-height);
  margin: 0 auto;
  padding: .35rem 1rem;
  display: flex;
  align-items: center;
  gap: .85rem;
}
.portal-brand {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  min-width: 8.25rem;
}
.portal-brand-logo {
  display: block;
  width: 7.4rem;
  height: auto;
  object-fit: contain;
}
.portal-brand-product {
  padding-left: .5rem;
  border-left: 1px solid #d8dde4;
  color: #46515f;
  font-size: .78rem;
  font-weight: 700;
}
.portal-mobile-menu {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.45rem;
  height: 2.45rem;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #38434f;
}
.portal-mobile-menu:hover { background: #f2f3f5; }
.portal-global-search {
  flex: 1 1 22rem;
  width: auto;
  max-width: 24rem;
  min-width: 12rem;
}
.portal-global-search input {
  min-height: 2.55rem;
  border: 1px solid transparent;
  border-radius: .35rem;
  background: #edf3f8;
  font-size: .86rem;
}
.portal-global-search input:focus {
  border-color: var(--findoly-blue);
  box-shadow: inset 0 0 0 1px var(--findoly-blue);
}
.portal-desktop-nav {
  align-self: stretch;
  margin-left: auto;
  align-items: stretch;
}
.portal-desktop-nav > a {
  position: relative;
  min-width: 5.25rem;
  padding: .42rem .65rem .3rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .15rem;
  color: #666;
  font-size: .67rem;
  font-weight: 500;
}
.portal-desktop-nav > a .icon { width: 1.28rem; height: 1.28rem; }
.portal-desktop-nav > a:hover,
.portal-desktop-nav > a.active { color: #191919; }
.portal-desktop-nav > a.active::after {
  content: "";
  position: absolute;
  left: .35rem;
  right: .35rem;
  bottom: -.35rem;
  height: 2px;
  background: #191919;
}
.portal-navbar-actions {
  display: flex;
  align-items: center;
  gap: .55rem;
  margin-left: .15rem;
}
.portal-wallet-pill {
  min-height: 2.45rem;
  border-radius: 1.4rem;
  border-color: #b9c1cb;
  padding: .42rem .75rem;
  background: #fff;
  font-size: .72rem;
}
.portal-wallet-pill strong { color: var(--findoly-blue-dark); }
.portal-user-button { gap: .45rem; }
.portal-user-button > span:first-child {
  width: 2.35rem;
  height: 2.35rem;
  background: #dbe7f3;
  color: var(--findoly-navy);
}
.portal-user-copy { display: grid; text-align: left; line-height: 1.08; }
.portal-user-copy strong { max-width: 7.5rem; overflow: hidden; text-overflow: ellipsis; font-size: .72rem; }
.portal-user-copy small { color: #6b7280; font-size: .62rem; }
.portal-profile-menu { border-radius: .55rem; border-color: var(--findoly-line); box-shadow: 0 8px 28px rgba(0, 0, 0, .15); }

/* LinkedIn-like left rail */
.page-content { min-height: calc(100vh - var(--portal-navbar-height)); }
.portal-sidebar {
  width: var(--portal-sidebar-width);
  min-width: var(--portal-sidebar-width);
  padding: 1rem .65rem 1.25rem;
  background: transparent;
  border-right: 0;
}
.portal-sidebar .sidebar-content { padding: 0; }
.portal-provider-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--findoly-line);
  border-radius: .75rem;
  background: #fff;
  text-align: center;
}
.portal-provider-cover {
  height: 3.65rem;
  background: linear-gradient(135deg, #dbe9f6 0%, #c8dced 56%, #f6dfd3 100%);
}
.portal-provider-avatar {
  width: 4.2rem;
  height: 4.2rem;
  margin: -2.1rem auto .45rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 3px solid #fff;
  border-radius: 50%;
  background: var(--findoly-navy);
  color: #fff;
  font-size: 1.15rem;
  font-weight: 750;
}
.portal-provider-card-body { display: grid; gap: .1rem; padding: 0 1rem .9rem; }
.portal-provider-card-body strong { font-size: .92rem; }
.portal-provider-card-body span { color: #4f5965; font-size: .76rem; }
.portal-provider-card-body small { color: #777; font-size: .68rem; }
.portal-provider-card-stats { border-top: 1px solid #e6e8eb; text-align: left; }
.portal-provider-card-stats a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .6rem;
  padding: .65rem .85rem;
  color: #4c5663;
  font-size: .68rem;
}
.portal-provider-card-stats a + a { border-top: 1px solid #eef0f2; }
.portal-provider-card-stats a:hover { background: #f6f7f8; color: #191919; }
.portal-provider-card-stats strong { color: var(--findoly-blue); font-size: .69rem; }
.portal-sidebar-nav {
  margin-top: .75rem;
  overflow: hidden;
  border: 1px solid var(--findoly-line);
  border-radius: .75rem;
  background: #fff;
  padding: .45rem 0;
}
.portal-sidebar-label {
  padding: .65rem .9rem .3rem;
  color: #777;
  font-size: .61rem;
  font-weight: 750;
  letter-spacing: .075em;
  text-transform: uppercase;
}
.portal-sidebar-nav a {
  display: flex;
  align-items: center;
  gap: .72rem;
  min-height: 2.65rem;
  padding: .55rem .9rem;
  color: #47515d;
  font-size: .78rem;
  font-weight: 570;
}
.portal-sidebar-nav a .icon { width: 1.08rem; height: 1.08rem; color: #65717e; }
.portal-sidebar-nav a:hover { background: #f3f5f7; color: #191919; }
.portal-sidebar-nav a.active {
  color: var(--findoly-blue-dark);
  background: #eef5fc;
  box-shadow: inset 3px 0 0 var(--findoly-blue);
  font-weight: 680;
}
.portal-sidebar-nav a.active .icon { color: var(--findoly-blue); }
.portal-sidebar-help {
  display: grid;
  gap: .2rem;
  margin-top: .75rem;
  padding: .8rem .9rem;
  border: 1px solid var(--findoly-line);
  border-radius: .75rem;
  background: #fff;
}
.portal-sidebar-help strong { font-size: .72rem; }
.portal-sidebar-help span { color: #69727e; font-size: .66rem; line-height: 1.45; }
.portal-sidebar-close {
  position: absolute;
  z-index: 2;
  top: .45rem;
  right: .45rem;
  width: 2rem;
  height: 2rem;
  border: 0;
  border-radius: 50%;
  background: rgba(255,255,255,.92);
  color: #333;
  font-size: 1.25rem;
}

/* Main content width and page title */
.content-wrapper { max-width: calc(100% - var(--portal-sidebar-width)); }
.content-inner { width: 100%; }
.portal-page-header {
  padding: 1rem 1.25rem .75rem;
  background: transparent;
  border-bottom: 0 !important;
}
.portal-page-header .page-header-content { max-width: 73rem; margin: 0 auto; }
.portal-page-header .page-title { font-size: 1.35rem; letter-spacing: -.015em; }
.content { width: 100%; padding: 0 1.25rem 1.5rem; }
.content > * { max-width: 73rem; margin-left: auto; margin-right: auto; }
.portal-footer { background: transparent; border-top: 0 !important; }

/* Cards, controls, and feed */
.portal-card,
.provider-feed-card,
.provider-lead-tabs > a,
.portal-stat-card {
  border-color: var(--findoly-line);
  border-radius: .75rem;
  background: #fff;
}
.portal-card { box-shadow: 0 0 0 1px rgba(0,0,0,.01); }
.btn { border-radius: 1.5rem; font-weight: 650; }
.btn-primary { background: var(--findoly-blue); border-color: var(--findoly-blue); }
.btn-primary:hover,
.btn-primary:focus { background: var(--findoly-blue-dark); border-color: var(--findoly-blue-dark); }
.btn-outline-primary { color: var(--findoly-blue); border-color: var(--findoly-blue); }
.form-control,
.form-select { border-color: #b7bec7; }
.form-control:focus,
.form-select:focus { border-color: var(--findoly-blue); box-shadow: 0 0 0 .16rem rgba(10, 102, 194, .12); }

.provider-lead-page { max-width: 73rem; }
.provider-lead-tabs { margin-bottom: .75rem; }
.provider-lead-tabs > a { border-radius: .65rem; }
.provider-lead-tabs > a.active { border-color: #8cb7df; background: #eef5fb; color: var(--findoly-blue-dark); }
.provider-filter-card { position: relative; margin-bottom: .8rem; }
.provider-filter-grid { padding: .7rem; }
.provider-filter-grid .form-control,
.provider-filter-grid .form-select { border-radius: .38rem; }
.provider-filter-apply,
.provider-filter-clear { border-radius: 1.4rem; }
.provider-feed-layout {
  grid-template-columns: minmax(0, 46rem) minmax(16rem, 19rem);
  justify-content: center;
  gap: 1rem;
}
.provider-lead-feed { gap: .65rem; }
.provider-feed-card {
  border-left-width: 1px !important;
  box-shadow: none;
}
.provider-feed-card:hover { border-color: #aeb4bb; box-shadow: 0 2px 8px rgba(0,0,0,.08); }
.provider-feed-header { padding: 1rem 1rem .68rem; }
.provider-feed-avatar {
  border-radius: 50%;
  background: #e7f0f8;
  color: var(--findoly-blue);
}
.provider-feed-card.is-unlocked .provider-feed-avatar { background: #e2f4eb; }
.provider-feed-category { color: #666; }
.provider-feed-identity h2 { font-size: 1.02rem; }
.provider-feed-identity h2 a:hover { color: var(--findoly-blue); }
.provider-priority-badge { font-size: .65rem; }
.provider-feed-summary { color: #333; }
.provider-transparency-item { border-radius: .45rem; background: #f8f9fa; }
.provider-feed-footer { background: #fff; }
.provider-feed-footer .btn { min-width: 8.6rem; }
.provider-feed-aside { top: calc(var(--portal-navbar-height) + .75rem); }
.provider-aside-card { border-radius: .75rem; }

/* CRM-managed provider location */
.portal-managed-location { display: grid; gap: .8rem; }
.portal-managed-location-main {
  display: grid;
  gap: .18rem;
  padding: 1rem;
  border: 1px solid #dde2e7;
  border-radius: .65rem;
  background: #f8fafb;
}
.portal-managed-location-pin {
  width: max-content;
  padding: .18rem .5rem;
  border-radius: 999px;
  background: #e7f1fb;
  color: var(--findoly-blue-dark);
  font-size: .68rem;
  font-weight: 750;
}
.portal-managed-location-main strong { font-size: .95rem; }
.portal-managed-location-main small { color: #66717e; }
.portal-managed-location-note {
  display: flex;
  align-items: flex-start;
  gap: .55rem;
  color: #56616e;
  font-size: .75rem;
  line-height: 1.45;
}
.portal-managed-location-note .icon { flex: 0 0 auto; margin-top: .05rem; color: var(--findoly-blue); }
.portal-section-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.35rem;
  min-width: 2.35rem;
  height: 2.35rem;
  border-radius: 50%;
  background: #e8f2fb;
  color: var(--findoly-blue);
}

/* Login */
.portal-login-body {
  background:
    radial-gradient(circle at 12% 10%, rgba(255,101,40,.1), transparent 27rem),
    radial-gradient(circle at 90% 90%, rgba(10,102,194,.12), transparent 30rem),
    #f3f2ef;
}
.portal-login-shell { width: min(100% - 2rem, 28rem); }
.portal-login-brand {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  margin-bottom: 1.1rem;
}
.portal-login-logo { width: 9.4rem; height: auto; }
.portal-login-brand > span { padding-left: .65rem; border-left: 1px solid #bbc2ca; color: #59636f; font-size: .78rem; font-weight: 650; }
.portal-login-card { border-radius: .8rem; border-color: var(--findoly-line); box-shadow: 0 8px 30px rgba(0,0,0,.08); }
.portal-login-lock { color: var(--findoly-blue); background: #e8f2fb; }

/* Mobile app navigation */
.portal-mobile-nav { display: none; }

@media (max-width: 1199.98px) {
  :root { --portal-sidebar-width: 15.6rem; }
  .portal-desktop-nav > a { min-width: 4.6rem; }
  .portal-global-search { max-width: 18rem; }
  .provider-feed-layout { grid-template-columns: minmax(0, 1fr) 17rem; }
}

@media (max-width: 991.98px) {
  :root { --portal-navbar-height: 3.75rem; }
  body { padding-bottom: 4.25rem; }
  .portal-navbar-inner { padding: .3rem .75rem; }
  .portal-brand { min-width: auto; }
  .portal-brand-logo { width: 6.65rem; }
  .portal-sidebar {
    position: fixed;
    z-index: 1060;
    inset: 0 auto 0 0;
    width: min(20rem, 88vw);
    min-width: 0;
    padding: .75rem;
    overflow-y: auto;
    background: var(--findoly-page);
    transform: translateX(-104%);
    transition: transform .2s ease;
    box-shadow: 10px 0 35px rgba(0,0,0,.18);
  }
  body.portal-sidebar-open .portal-sidebar { transform: translateX(0); }
  .portal-sidebar-overlay {
    display: block;
    position: fixed;
    z-index: 1055;
    inset: 0;
    background: rgba(0,0,0,.45);
    opacity: 0;
    visibility: hidden;
    transition: opacity .2s ease, visibility .2s ease;
  }
  body.portal-sidebar-open .portal-sidebar-overlay { opacity: 1; visibility: visible; }
  .content-wrapper { max-width: 100%; }
  .portal-page-header .page-header-content,
  .content > * { max-width: 48rem; }
  .provider-feed-layout { grid-template-columns: minmax(0, 1fr); }
  .provider-feed-aside { display: none; }
  .portal-mobile-nav {
    position: fixed;
    z-index: 1045;
    left: 0;
    right: 0;
    bottom: 0;
    min-height: 4.05rem;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    border-top: 1px solid #cfd3d7;
    background: rgba(255,255,255,.98);
    box-shadow: 0 -3px 12px rgba(0,0,0,.08);
    padding-bottom: env(safe-area-inset-bottom);
  }
  .portal-mobile-nav a {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .17rem;
    min-width: 0;
    color: #666;
    font-size: .58rem;
    font-weight: 550;
  }
  .portal-mobile-nav a .icon { width: 1.25rem; height: 1.25rem; }
  .portal-mobile-nav a.active { color: var(--findoly-blue-dark); }
  .portal-mobile-nav a.active::before {
    content: "";
    position: absolute;
    top: 0;
    left: 28%;
    right: 28%;
    height: 2px;
    background: var(--findoly-blue);
  }
  .portal-footer { display: none; }
}

@media (max-width: 767.98px) {
  .portal-navbar-actions { margin-left: auto; }
  .portal-user-button > span:first-child { width: 2.15rem; height: 2.15rem; }
  .portal-page-header { padding: .82rem .75rem .55rem; }
  .portal-page-header .page-title { font-size: 1.18rem; }
  .page-subtitle { font-size: .75rem; }
  .content { padding: 0 .65rem 1rem; }
  .provider-lead-tabs { gap: .42rem; }
  .provider-lead-tabs > a { padding: .58rem .62rem; }
  .provider-filter-card { border-radius: .65rem; }
  .provider-filter-grid { grid-template-columns: 1fr; gap: .5rem; padding: .6rem; }
  .provider-filter-search,
  .provider-filter-field { grid-column: auto; }
  .provider-filter-grid .form-control,
  .provider-filter-grid .form-select { min-height: 2.7rem; font-size: .83rem; }
  .provider-filter-apply,
  .provider-filter-clear { width: 100%; }
  .provider-feed-card { border-radius: .65rem; }
  .provider-feed-header { grid-template-columns: 2.35rem minmax(0,1fr); padding: .85rem .8rem .6rem; gap: .65rem; }
  .provider-feed-avatar { width: 2.35rem; height: 2.35rem; }
  .provider-priority-badge { grid-column: 2; justify-self: start; }
  .provider-feed-body { padding: 0 .8rem .75rem; }
  .provider-transparency-row { grid-template-columns: 1fr; }
  .provider-feed-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; }
  .provider-feed-footer { padding: .7rem .8rem; flex-direction: column; align-items: stretch; }
  .provider-feed-footer .btn { width: 100%; }
  .provider-feed-reference { justify-content: space-between; }
  .portal-stat-card { min-height: 6.5rem; padding: .9rem; }
  .portal-stat-card strong { font-size: 1.2rem; }
  .portal-reminder-dialog { width: calc(100% - 1rem); max-height: calc(100dvh - 1rem); margin: .5rem; }
  .portal-reminder-header,
  .portal-reminder-footer { padding-left: .85rem; padding-right: .85rem; }
  .portal-reminder-item { align-items: stretch; flex-direction: column; }
  .portal-reminder-item .btn { width: 100%; }
  .portal-managed-location-main { padding: .8rem; }
  .portal-detail-table th { width: 42%; }
}

@media (max-width: 479.98px) {
  .portal-navbar-inner { gap: .45rem; padding-left: .55rem; padding-right: .55rem; }
  .portal-brand-logo { width: 6.05rem; }
  .portal-mobile-menu { width: 2.15rem; height: 2.15rem; }
  .provider-lead-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); display: grid; }
  .provider-lead-tabs > a { min-width: 0; }
  .provider-tab-copy strong { font-size: .72rem; }
  .provider-tab-icon { width: 1.75rem; min-width: 1.75rem; height: 1.75rem; }
  .provider-feed-facts { grid-template-columns: 1fr; }
  .provider-transparency-item { padding: .55rem .6rem; }
  .portal-profile-hero { align-items: center; flex-direction: column; text-align: center; }
  .portal-profile-hero .d-flex { justify-content: center; }
  .portal-login-shell { width: min(100% - 1rem, 27rem); }
  .portal-login-card .card-body { padding: 1.2rem; }
}

.portal-dashboard-feed { display: grid; }
.portal-dashboard-lead {
  display: grid;
  grid-template-columns: 2.55rem minmax(0, 1fr) auto;
  align-items: center;
  gap: .8rem;
  padding: .85rem 1rem;
  color: var(--findoly-text);
  border-bottom: 1px solid #e8eaed;
}
.portal-dashboard-lead:last-of-type { border-bottom: 0; }
.portal-dashboard-lead:hover { background: #f7f8f9; color: var(--findoly-text); }
.portal-dashboard-lead-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.55rem;
  height: 2.55rem;
  border-radius: 50%;
  background: #e8f2fb;
  color: var(--findoly-blue);
}
.portal-dashboard-lead-main { display: grid; gap: .12rem; }
.portal-dashboard-lead-main > strong { font-size: .82rem; line-height: 1.35; }
.portal-dashboard-lead-main > span { display: flex; flex-wrap: wrap; align-items: center; gap: .28rem; color: #65707c; font-size: .69rem; }
.portal-dashboard-lead-main > span b { color: #47515c; font-weight: 650; }
.portal-dashboard-lead-main > span i { font-style: normal; }
.portal-dashboard-lead-main > small { color: #848b94; font-size: .61rem; }
.portal-dashboard-lead-side { display: grid; justify-items: end; gap: .25rem; text-align: right; }
.portal-dashboard-lead-side > b { font-size: .74rem; }
.portal-dashboard-lead-side > small { color: var(--findoly-blue); font-size: .63rem; font-weight: 700; }
.portal-dashboard-empty { padding: 2.5rem 1rem; color: #777; text-align: center; }

@media (max-width: 575.98px) {
  .portal-dashboard-lead { grid-template-columns: 2.35rem minmax(0, 1fr); padding: .75rem .8rem; }
  .portal-dashboard-lead-icon { width: 2.35rem; height: 2.35rem; }
  .portal-dashboard-lead-side { grid-column: 2; grid-template-columns: auto auto; align-items: center; justify-items: start; justify-content: space-between; width: 100%; text-align: left; }
  .portal-dashboard-lead-side > small { grid-column: 1 / -1; }
}

/* Compact mobile filters: search first, then paired controls. */
@media (max-width: 767.98px) and (min-width: 480px) {
  .provider-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .provider-filter-search { grid-column: 1 / -1; }
  .provider-filter-field { grid-column: auto; }
}
@media (max-width: 479.98px) {
  .provider-filter-grid { grid-template-columns: 1fr; }
  .provider-filter-search { grid-column: auto; }
}

.portal-mobile-lead-action { display: none; }
@media (max-width: 1199.98px) {
  .portal-mobile-lead-action {
    position: sticky;
    z-index: 20;
    bottom: .65rem;
    display: flex !important;
    justify-content: center;
    margin: .75rem auto 0;
    padding: .45rem;
    border: 1px solid rgba(10,102,194,.18);
    border-radius: 2rem;
    background: rgba(255,255,255,.96);
    box-shadow: 0 8px 25px rgba(0,0,0,.14);
    backdrop-filter: blur(10px);
  }
  .portal-mobile-lead-action .btn {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
  }
  .portal-mobile-lead-action .btn strong { font-size: .72rem; }
}
@media (max-width: 991.98px) {
  .portal-mobile-lead-action { bottom: 4.55rem; }
}


/* =========================================================
   Provider focus refinement · 2026-07-18
   Keeps the current UI structure while making primary work
   faster to scan on desktop and mobile.
   ========================================================= */

.provider-filter-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .72rem .8rem 0;
}
.provider-filter-heading > div { display: grid; gap: .08rem; }
.provider-filter-heading strong { color: var(--portal-text); font-size: .78rem; }
.provider-filter-heading span { color: var(--provider-ui-muted); font-size: .68rem; }
.provider-filter-toggle { display: inline-flex; align-items: center; gap: .4rem; flex: 0 0 auto; }
.provider-filter-toggle .icon { width: .9rem; height: .9rem; }
.provider-filter-active-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.25rem;
  height: 1.25rem;
  padding: 0 .3rem;
  border-radius: 999px;
  background: var(--portal-accent);
  color: #fff !important;
  font-size: .62rem !important;
  font-weight: 750;
}

.provider-results-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .9rem;
  margin: 0 0 .72rem;
  padding: .15rem .15rem 0;
}
.provider-results-bar > div { display: grid; gap: .05rem; }
.provider-results-bar strong { color: var(--portal-text); font-size: .76rem; }
.provider-results-bar span { color: var(--provider-ui-muted); font-size: .67rem; line-height: 1.35; }
.provider-results-bar > a { flex: 0 0 auto; color: var(--portal-accent-dark); font-size: .7rem; font-weight: 700; }
.provider-results-bar > a:hover { text-decoration: underline; }

/* More focused lead cards without changing their content. */
.provider-feed-card { position: relative; }
.provider-feed-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: var(--portal-accent);
  opacity: .9;
}
.provider-feed-card.is-unlocked::before { background: #12825b; }
.provider-feed-header { padding-left: 1.12rem; }
.provider-feed-category { text-transform: uppercase; letter-spacing: .035em; font-size: .64rem; }
.provider-feed-identity h2 { font-size: 1.06rem; }
.provider-feed-summary { max-width: 63ch; }
.provider-transparency-row {
  padding: .06rem 0;
  border-top: 1px solid #edf0f3;
  border-bottom: 1px solid #edf0f3;
}
.provider-transparency-item {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: .58rem .2rem;
}
.provider-transparency-item + .provider-transparency-item { border-left: 1px solid #edf0f3; padding-left: .78rem; }
.provider-transparency-item.is-confirmed { border-color: #edf0f3; background: transparent; }
.provider-feed-facts { margin-top: .62rem; }
.provider-feed-footer {
  min-height: 3.5rem;
  padding-top: .62rem;
  padding-bottom: .62rem;
  background: #fafbfc;
}
.provider-feed-footer .btn {
  position: relative;
  min-width: 7.5rem;
  font-weight: 700;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .08);
}
.provider-feed-footer .btn::after { content: "  →"; }

/* Dashboard is a compact work feed instead of a wide table. */
.portal-stat-card.is-marketplace-focus,
.portal-stat-card.is-unlocked-focus { border-top: 3px solid var(--portal-accent); }
.portal-stat-card.is-unlocked-focus { border-top-color: #12825b; }
.portal-dashboard-feed { min-height: 7rem; }
.portal-dashboard-lead { transition: background-color .14s ease; }
.portal-dashboard-lead-action {
  display: grid;
  justify-items: end;
  gap: .36rem;
  min-width: 6.5rem;
}
.portal-dashboard-open { color: var(--portal-accent-dark); font-size: .68rem; font-weight: 750; }
.portal-dashboard-lead:hover .portal-dashboard-open { text-decoration: underline; }
.provider-dashboard-empty {
  display: grid;
  justify-items: center;
  gap: .45rem;
  padding: 2.25rem 1rem;
  color: var(--provider-ui-muted);
  text-align: center;
  font-size: .74rem;
}
.provider-dashboard-empty strong { color: var(--portal-text); font-size: .9rem; }
.provider-dashboard-empty > span { max-width: 31rem; line-height: 1.45; }

/* Keep outcome work visually dominant on unlocked leads. */
.portal-outcome-card { box-shadow: 0 4px 16px rgba(15, 23, 42, .06); }
.portal-outcome-card .card-header { background: linear-gradient(180deg, rgba(var(--portal-accent-rgb), .055), transparent); }
.portal-outcome-radio-grid label { min-height: 5.1rem; }
.portal-sticky-card { top: calc(var(--portal-navbar-height) + .85rem); }

@media (max-width: 767.98px) {
  .provider-filter-heading { padding: .6rem; }
  .provider-filter-heading > div { padding-right: .4rem; }
  .provider-filter-grid { display: none; padding-top: 0; }
  .provider-filter-grid.is-open { display: grid; }
  .provider-results-bar { align-items: flex-start; padding-left: .08rem; padding-right: .08rem; }
  .provider-results-bar > a { margin-top: .06rem; }
  .provider-feed-header { padding-left: .95rem; }
  .provider-feed-card::before { width: 2px; }
  .provider-transparency-row { border-top: 0; border-bottom: 0; gap: .36rem; }
  .provider-transparency-item,
  .provider-transparency-item + .provider-transparency-item {
    padding: .52rem .58rem;
    border: 1px solid #e5e9ed;
    border-radius: .48rem;
  }
  .provider-transparency-item.is-confirmed { border-color: #b8e5cd; background: #effcf5; }
  .provider-feed-footer { background: #fff; }
  .portal-dashboard-lead { grid-template-columns: 2.35rem minmax(0, 1fr); padding: .78rem .82rem; }
  .portal-dashboard-lead-action {
    grid-column: 2;
    grid-template-columns: auto auto;
    justify-content: space-between;
    align-items: center;
    justify-items: start;
    width: 100%;
    min-width: 0;
  }
}

@media (min-width: 768px) {
  .provider-filter-grid { display: grid !important; }
}

@media (max-width: 479.98px) {
  .provider-filter-heading > div span { display: none; }
  .provider-results-bar { flex-direction: column; gap: .25rem; }
  .provider-feed-identity h2 { font-size: .96rem; }
  .provider-feed-footer .btn { min-width: 0; }
}

/* =========================================================
   Minimal provider workspace + advanced filters
   ========================================================= */
.provider-minimal-page { max-width: 68rem; }
.provider-minimal-tabs { max-width: 32rem; }
.provider-minimal-tabs .provider-tab-copy small { display: none; }

.provider-minimal-filter { margin-bottom: .7rem; overflow: visible; }
.provider-filter-toolbar {
  display: grid;
  grid-template-columns: minmax(15rem, 1fr) auto auto;
  gap: .55rem;
  align-items: center;
  padding: .65rem;
}
.provider-minimal-filter .provider-filter-search { min-width: 0; }
.provider-minimal-filter .provider-filter-search .form-control { min-height: 2.55rem; border-radius: .45rem; }
.provider-advanced-toggle { display: inline-flex; align-items: center; gap: .45rem; white-space: nowrap; }
.provider-filter-active-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.25rem;
  height: 1.25rem;
  padding: 0 .3rem;
  border-radius: 999px;
  background: var(--findoly-blue);
  color: #fff;
  font-size: .64rem;
  font-weight: 750;
}
.provider-advanced-panel { border-top: 1px solid var(--findoly-line); background: #fafbfc; }
.provider-advanced-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .7rem;
  padding: .8rem;
}
.provider-advanced-subgrid { display: contents; }
.provider-filter-control { display: grid; gap: .28rem; min-width: 0; margin: 0; }
.provider-filter-control > span:first-child { color: #59636f; font-size: .68rem; font-weight: 700; }
.provider-filter-control .form-control,
.provider-filter-control .form-select { min-height: 2.45rem; border-radius: .42rem; font-size: .78rem; }
.provider-check-control { align-content: end; }
.provider-checkbox-row {
  display: flex;
  align-items: center;
  gap: .48rem;
  min-height: 2.45rem;
  padding: .55rem .65rem;
  border: 1px solid #b7bec7;
  border-radius: .42rem;
  background: #fff;
  color: #30363d;
  font-size: .78rem;
}
.provider-checkbox-row input { width: 1rem; height: 1rem; accent-color: var(--findoly-blue); }
.provider-filter-actions { display: flex; justify-content: flex-end; gap: .5rem; padding: 0 .8rem .8rem; }

.provider-active-filters { display: flex; flex-wrap: wrap; gap: .38rem; margin: 0 0 .65rem; }
.provider-active-filters button {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  min-height: 1.8rem;
  padding: .25rem .55rem;
  border: 1px solid #cbd3dc;
  border-radius: 999px;
  background: #fff;
  color: #3f4b59;
  font-size: .68rem;
}
.provider-active-filters button:hover { border-color: #8aaed0; color: var(--findoly-blue-dark); }
.provider-active-filters button b { font-size: .85rem; line-height: 1; }
.provider-active-filters .is-clear { border-color: transparent; background: transparent; color: var(--findoly-blue); font-weight: 700; }
.provider-minimal-results { margin: .1rem 0 .55rem; color: #5e6874; font-size: .72rem; }
.provider-minimal-results strong { color: #30363d; }

.provider-minimal-list { display: grid; gap: .55rem; }
.provider-minimal-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: center;
  padding: .9rem 1rem;
  border: 1px solid var(--findoly-line);
  border-radius: .7rem;
  background: #fff;
  transition: border-color .14s ease, box-shadow .14s ease;
}
.provider-minimal-card:hover { border-color: #aeb8c3; box-shadow: 0 2px 8px rgba(0,0,0,.055); }
.provider-minimal-card.is-unlocked { border-left: 3px solid #16875d; }
.provider-minimal-card-main { min-width: 0; }
.provider-minimal-title-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .75rem; align-items: start; }
.provider-minimal-category { display: block; color: #66717e; font-size: .66rem; font-weight: 700; }
.provider-minimal-title-row h2 { margin: .12rem 0 .18rem; font-size: .96rem; line-height: 1.32; }
.provider-minimal-title-row h2 a { color: #1f2933; }
.provider-minimal-title-row h2 a:hover { color: var(--findoly-blue); text-decoration: underline; }
.provider-minimal-title-row p { margin: 0; color: #67717c; font-size: .72rem; }
.provider-minimal-signals { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .65rem; }
.provider-minimal-signals > span {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  min-height: 1.65rem;
  padding: .25rem .5rem;
  border-radius: 999px;
  background: #f3f5f7;
  color: #4c5663;
  font-size: .67rem;
}
.provider-minimal-signals .icon { width: .78rem; height: .78rem; }
.provider-minimal-signals .is-confirmed { background: #eaf7f0; color: #08744e; }
.provider-minimal-signals .is-overdue { background: #fff1e8; color: #a44c15; font-weight: 700; }
.provider-outcome-chip.is-success,
.provider-recent-status.is-success { background: #e8f6ef; color: #08744e; }
.provider-outcome-chip.is-neutral,
.provider-recent-status.is-neutral { background: #eef1f4; color: #4f5a67; }
.provider-outcome-chip.is-danger,
.provider-recent-status.is-danger { background: #fff0ef; color: #a1322c; }
.provider-outcome-chip.is-warning,
.provider-recent-status.is-warning { background: #fff7df; color: #8a5900; }
.provider-outcome-chip.is-pending,
.provider-recent-status.is-pending { background: #edf4fb; color: #155f9d; }
.provider-recent-status.is-credit { background: #f2f4f6; color: #4d5865; }
.provider-minimal-card-action {
  display: flex;
  align-items: center;
  gap: .8rem;
  min-width: 12.5rem;
  justify-content: flex-end;
}
.provider-minimal-card-action > div { display: grid; text-align: right; }
.provider-minimal-card-action small { color: #727c87; font-size: .62rem; }
.provider-minimal-card-action strong { color: #202832; font-size: .8rem; }
.provider-minimal-card-action .btn { min-width: 6.9rem; }
.provider-minimal-empty .card-body { display: grid; justify-items: center; gap: .5rem; padding: 2.8rem 1rem; }
.provider-minimal-empty strong { font-size: .9rem; }
.provider-minimal-empty span { color: #66717e; font-size: .74rem; }
.provider-minimal-pagination { display: flex; align-items: center; justify-content: space-between; margin-top: .7rem; padding: .55rem .7rem; font-size: .72rem; }
.provider-minimal-pagination > div { display: flex; gap: .4rem; }

.provider-minimal-dashboard { max-width: 68rem; margin: 0 auto; }
.provider-minimal-reminder { padding: .75rem .9rem; }
.provider-dashboard-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .7rem; margin-bottom: .8rem; }
.provider-dashboard-stat {
  display: grid;
  gap: .25rem;
  min-height: 5.8rem;
  padding: .9rem;
  border: 1px solid var(--findoly-line);
  border-radius: .7rem;
  background: #fff;
  color: #1f2933;
}
button.provider-dashboard-stat { width: 100%; appearance: none; cursor: pointer; }
.provider-dashboard-stat:hover { color: #1f2933; border-color: #aeb8c3; }
.provider-dashboard-stat span { color: #66717e; font-size: .7rem; }
.provider-dashboard-stat strong { margin-top: auto; font-size: 1.25rem; line-height: 1.15; }
.provider-dashboard-recent { overflow: hidden; }
.provider-dashboard-recent .card-header { min-height: 3.35rem; padding: .65rem .85rem; }
.provider-dashboard-recent h5 { font-size: .9rem; }
.provider-recent-list { display: grid; }
.provider-recent-row {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr) auto;
  gap: .7rem;
  align-items: center;
  min-width: 0;
  padding: .72rem .85rem;
  border-bottom: 1px solid #edf0f3;
  color: #1f2933;
}
.provider-recent-row:last-child { border-bottom: 0; }
.provider-recent-row:hover { background: #f7f9fb; color: #1f2933; }
.provider-recent-icon { display: inline-flex; align-items: center; justify-content: center; width: 2rem; height: 2rem; border-radius: 50%; background: #edf4fb; color: var(--findoly-blue); }
.provider-recent-icon .icon { width: .95rem; height: .95rem; }
.provider-recent-main { display: grid; gap: .14rem; }
.provider-recent-main strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .78rem; }
.provider-recent-main small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #6a7581; font-size: .67rem; }
.provider-recent-status { padding: .25rem .5rem; border-radius: 999px; font-size: .64rem; font-weight: 700; white-space: nowrap; }

@media (max-width: 991.98px) {
  .provider-advanced-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .provider-dashboard-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767.98px) {
  .provider-filter-toolbar { grid-template-columns: minmax(0, 1fr) auto; padding: .55rem; }
  .provider-filter-toolbar .provider-filter-apply { grid-column: 1 / -1; width: 100%; }
  .provider-advanced-toggle { padding-left: .75rem; padding-right: .75rem; }
  .provider-advanced-grid { grid-template-columns: 1fr; padding: .65rem; }
  .provider-filter-actions { position: sticky; bottom: 4rem; z-index: 2; padding: .65rem; border-top: 1px solid var(--findoly-line); background: rgba(250,251,252,.97); }
  .provider-filter-actions .btn { flex: 1; }
  .provider-minimal-card { grid-template-columns: 1fr; gap: .75rem; padding: .8rem; }
  .provider-minimal-title-row { grid-template-columns: minmax(0, 1fr); gap: .45rem; }
  .provider-minimal-title-row .provider-priority-badge { justify-self: start; }
  .provider-minimal-card-action { min-width: 0; width: 100%; justify-content: space-between; }
  .provider-minimal-card-action > div { text-align: left; }
  .provider-minimal-card-action .btn { min-width: 7.5rem; }
  .provider-dashboard-summary { gap: .5rem; }
  .provider-dashboard-stat { min-height: 5.1rem; padding: .75rem; }
  .provider-dashboard-stat strong { font-size: 1.05rem; }
}

@media (max-width: 479.98px) {
  .provider-minimal-tabs .provider-tab-copy small { display: none; }
  .provider-filter-toolbar { grid-template-columns: 1fr; }
  .provider-advanced-toggle,
  .provider-filter-toolbar .provider-filter-apply { width: 100%; justify-content: center; }
  .provider-minimal-signals { gap: .3rem; }
  .provider-minimal-signals > span { font-size: .63rem; }
  .provider-minimal-card-action { align-items: stretch; flex-direction: column; }
  .provider-minimal-card-action .btn { width: 100%; }
  .provider-dashboard-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .provider-recent-row { grid-template-columns: 1.8rem minmax(0, 1fr); }
  .provider-recent-icon { width: 1.8rem; height: 1.8rem; }
  .provider-recent-status { grid-column: 2; justify-self: start; }
}

/* =========================================================
   Minimal seller-panel shell · 2026-07-18
   Compact IndiaMART-style workspace with Findoly branding.
   Presentation-only overrides; business logic is unchanged.
   ========================================================= */
:root {
  --portal-navbar-height: 3.55rem;
  --portal-sidebar-width: 13.75rem;
  --seller-bg: #f5f6f7;
  --seller-border: #e2e5e9;
  --seller-muted: #667085;
  --seller-active: #edf5ff;
}

body { background: var(--seller-bg); }

.portal-navbar-minimal {
  min-height: var(--portal-navbar-height);
  background: #fff;
  border-bottom: 1px solid var(--seller-border) !important;
  box-shadow: 0 1px 2px rgba(16, 24, 40, .035);
}
.portal-navbar-minimal .portal-navbar-inner {
  width: 100%;
  max-width: none;
  min-height: var(--portal-navbar-height);
  padding: .3rem .85rem;
  gap: .72rem;
}
.portal-navbar-minimal .portal-brand {
  min-width: 10.4rem;
  gap: .42rem;
}
.portal-navbar-minimal .portal-brand-logo { width: 6.35rem; }
.portal-navbar-minimal .portal-brand-product {
  padding-left: .48rem;
  color: #475467;
  border-left-color: #dfe3e8;
  font-size: .7rem;
  font-weight: 700;
}
.portal-header-context {
  min-width: 0;
  gap: .02rem;
  line-height: 1.18;
}
.portal-header-context strong {
  overflow: hidden;
  color: #1d2939;
  font-size: .78rem;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.portal-header-context span {
  overflow: hidden;
  color: #7a8494;
  font-size: .62rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.portal-navbar-minimal .portal-navbar-actions { gap: .42rem; }
.portal-header-credit,
.portal-header-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.25rem;
  border: 1px solid var(--seller-border);
  border-radius: .38rem;
  background: #fff;
  color: #344054;
}
.portal-header-credit {
  gap: .38rem;
  padding: .38rem .62rem;
  font-size: .65rem;
}
.portal-header-credit .icon,
.portal-header-action .icon { width: .95rem; height: .95rem; }
.portal-header-credit strong { color: var(--portal-accent-dark); font-size: .66rem; font-weight: 750; }
.portal-header-action { width: 2.25rem; padding: 0; }
.portal-header-credit:hover,
.portal-header-action:hover { border-color: #b9c9dc; background: #f8fbff; color: var(--portal-accent-dark); }
.portal-navbar-minimal .portal-user-button {
  gap: .28rem;
  min-height: 2.25rem;
  padding: .18rem .4rem .18rem .2rem;
  border: 1px solid var(--seller-border);
  border-radius: .38rem;
  background: #fff;
}
.portal-navbar-minimal .portal-user-button > span:first-child {
  width: 1.82rem;
  height: 1.82rem;
  font-size: .66rem;
}
.portal-user-caret {
  width: .58rem;
  height: .42rem;
  fill: none;
  stroke: #667085;
  stroke-width: 1.6;
}
.portal-navbar-minimal .portal-mobile-menu {
  width: 2.2rem;
  height: 2.2rem;
  border-radius: .38rem;
}

.page-content { min-height: calc(100vh - var(--portal-navbar-height)); }
.portal-sidebar-minimal {
  width: var(--portal-sidebar-width);
  min-width: var(--portal-sidebar-width);
  padding: 0;
  border-right: 1px solid var(--seller-border);
  background: #fff;
}
.portal-sidebar-minimal .sidebar-content {
  min-height: calc(100vh - var(--portal-navbar-height));
  display: flex;
  flex-direction: column;
  padding: 0;
}
.portal-sidebar-account {
  position: relative;
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  align-items: center;
  gap: .58rem;
  padding: .82rem .82rem .72rem;
  border-bottom: 1px solid #edf0f2;
}
.portal-sidebar-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: .38rem;
  background: var(--portal-accent);
  color: #fff;
  font-size: .7rem;
  font-weight: 750;
}
.portal-sidebar-account > div { display: grid; gap: .08rem; }
.portal-sidebar-account strong { color: #1d2939; font-size: .72rem; }
.portal-sidebar-account small { color: #7a8494; font-size: .59rem; }
.portal-sidebar-minimal .portal-sidebar-nav {
  flex: 1 1 auto;
  margin: 0;
  padding: .55rem .46rem;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.portal-sidebar-minimal .portal-sidebar-nav a {
  position: relative;
  gap: .62rem;
  min-height: 2.45rem;
  margin: .06rem 0;
  padding: .5rem .62rem;
  border-radius: .34rem;
  color: #475467;
  font-size: .7rem;
  font-weight: 560;
}
.portal-sidebar-minimal .portal-sidebar-nav a .icon {
  width: 1rem;
  height: 1rem;
  color: #667085;
}
.portal-sidebar-minimal .portal-sidebar-nav a:hover { background: #f5f7fa; color: #1d2939; }
.portal-sidebar-minimal .portal-sidebar-nav a.active {
  background: var(--seller-active);
  color: var(--portal-accent-dark);
  box-shadow: none;
  font-weight: 700;
}
.portal-sidebar-minimal .portal-sidebar-nav a.active::before {
  content: "";
  position: absolute;
  inset: .42rem auto .42rem -.46rem;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: var(--portal-accent);
}
.portal-sidebar-minimal .portal-sidebar-nav a.active .icon { color: var(--portal-accent); }
.portal-sidebar-divider {
  display: block;
  height: 1px;
  margin: .5rem .58rem;
  background: #edf0f2;
}
.portal-sidebar-footer {
  padding: .58rem;
  border-top: 1px solid #edf0f2;
}
.portal-sidebar-footer button {
  width: 100%;
  display: flex;
  align-items: center;
  gap: .62rem;
  min-height: 2.35rem;
  padding: .48rem .62rem;
  border: 0;
  border-radius: .34rem;
  background: transparent;
  color: #667085;
  font-size: .69rem;
  text-align: left;
}
.portal-sidebar-footer button:hover { background: #fff1f1; color: #b42318; }
.portal-sidebar-footer .icon { width: 1rem; height: 1rem; }
.portal-sidebar-minimal .portal-sidebar-close {
  top: .45rem;
  right: .45rem;
  width: 1.8rem;
  height: 1.8rem;
  background: #f4f6f8;
  font-size: 1rem;
}

.content-wrapper { max-width: calc(100% - var(--portal-sidebar-width)); }
.portal-page-header {
  min-height: 3.05rem;
  padding: .7rem 1rem .55rem;
  border-bottom: 1px solid var(--seller-border) !important;
  background: #fff;
}
.portal-page-header .page-title { color: #1d2939; font-size: 1rem; font-weight: 720; }
.portal-page-header .page-subtitle { color: #7a8494; font-size: .65rem; }
.content { width: 100%; padding: .85rem 1rem 1.25rem; }
.portal-card,
.card.portal-card { border-color: var(--seller-border); border-radius: .45rem; box-shadow: none; }

/* Keep dashboard intentionally small and operational. */
.provider-minimal-dashboard { max-width: 76rem; margin: 0 auto; }
.provider-dashboard-summary {
  gap: .65rem;
  margin-bottom: .75rem;
}
.provider-dashboard-stat {
  min-height: 4.65rem;
  padding: .72rem .78rem;
  border: 1px solid var(--seller-border);
  border-radius: .42rem;
  background: #fff;
  box-shadow: none;
}
.provider-dashboard-stat span { color: #667085; font-size: .64rem; }
.provider-dashboard-stat strong { color: #1d2939; font-size: 1.15rem; line-height: 1.15; }
.provider-dashboard-stat:hover { border-color: #bfd0e4; background: #fbfdff; }
.provider-dashboard-recent .card-header { min-height: 3rem; padding: .65rem .8rem; }
.provider-dashboard-recent .card-header h5 { font-size: .78rem; }
.provider-recent-row { min-height: 3.65rem; padding: .62rem .78rem; }
.provider-recent-icon { width: 2rem; height: 2rem; }
.provider-recent-main strong { font-size: .74rem; }
.provider-recent-main small,
.provider-recent-status { font-size: .62rem; }
.provider-minimal-reminder,
.portal-location-required { border-radius: .42rem; }

/* Lead workspace remains feature-rich but visually restrained. */
.provider-lead-page { max-width: 82rem; }
.provider-minimal-tabs { margin-bottom: .65rem; }
.provider-minimal-tabs > a {
  min-height: 3.3rem;
  padding: .58rem .68rem;
  border-radius: .42rem;
}
.provider-minimal-filter { margin-bottom: .68rem; border-radius: .42rem; }
.provider-filter-toolbar { padding: .58rem; }
.provider-advanced-panel { border-top-color: #edf0f2; }
.provider-minimal-card { border-radius: .42rem; }

@media (max-width: 991.98px) {
  :root { --portal-sidebar-width: 15rem; }
  .portal-sidebar-minimal {
    position: fixed;
    z-index: 1050;
    top: var(--portal-navbar-height);
    bottom: 0;
    left: calc(-1 * var(--portal-sidebar-width));
    transition: left .18s ease;
    box-shadow: 8px 0 24px rgba(16, 24, 40, .12);
  }
  body.portal-sidebar-open .portal-sidebar-minimal { left: 0; }
  .portal-sidebar-minimal .sidebar-content { min-height: 100%; }
  .content-wrapper { max-width: 100%; }
  .portal-page-header { padding-left: .8rem; padding-right: .8rem; }
  .content { padding: .75rem .75rem 5.2rem; }
}

@media (max-width: 767.98px) {
  .portal-navbar-minimal .portal-navbar-inner { padding-left: .55rem; padding-right: .55rem; }
  .portal-navbar-minimal .portal-brand { min-width: 0; }
  .portal-navbar-minimal .portal-brand-logo { width: 5.65rem; }
  .portal-navbar-minimal .portal-brand-product { font-size: .62rem; }
  .portal-header-credit { padding: .32rem .45rem; }
  .portal-header-credit strong { font-size: .61rem; }
  .portal-page-header { min-height: 2.8rem; padding-top: .58rem; padding-bottom: .48rem; }
  .portal-page-header .page-title { font-size: .88rem; }
  .provider-dashboard-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 479.98px) {
  .portal-navbar-minimal .portal-brand-product { display: none; }
  .portal-header-credit > span { display: none !important; }
  .portal-header-credit { gap: .24rem; }
  .portal-header-credit .icon { display: none; }
  .portal-navbar-minimal .portal-user-button { padding-right: .25rem; }
  .portal-user-caret { display: none; }
  .content { padding-left: .55rem; padding-right: .55rem; }
  .provider-dashboard-summary { gap: .5rem; }
  .provider-dashboard-stat { min-height: 4.2rem; padding: .62rem; }
  .provider-dashboard-stat strong { font-size: 1rem; }
}

/* =========================================================
   Focused Findoly marketplace UI · 2026-07-18
   Readable seller workspace with stronger lead context.
   Presentation-only; provider workflows remain unchanged.
   ========================================================= */
:root {
  --seller-bg: #f4f7fb;
  --seller-border: #dbe3ec;
  --seller-muted: #647184;
  --seller-active: #eaf3ff;
  --seller-orange-soft: #fff4ed;
  --seller-blue-soft: #edf5ff;
}

body {
  background: var(--seller-bg);
  font-size: 1rem;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

/* Increase readability across the compact seller shell. */
.portal-header-context strong { font-size: .9rem; }
.portal-header-context span { font-size: .72rem; }
.portal-header-credit { font-size: .78rem; }
.portal-header-credit strong { font-size: .8rem; }
.portal-navbar-minimal .portal-brand-product { font-size: .76rem; }
.portal-sidebar-account strong { font-size: .9rem; }
.portal-sidebar-account small { font-size: .73rem; }
.portal-sidebar-nav a { min-height: 2.9rem; font-size: .88rem; }
.portal-sidebar-nav a .icon { width: 1.08rem; height: 1.08rem; }
.portal-sidebar-footer button { font-size: .84rem; }
.portal-page-header .page-title { font-size: 1.34rem; }
.portal-page-header .page-subtitle { font-size: .84rem; }
.form-control,
.form-select,
.btn { font-size: .9rem; }
.btn { border-radius: .5rem; }
.portal-card { border-radius: .65rem; }

/* Plans and credits: visible wallet summary and no duplicated title block. */
.provider-plans-content { padding-top: 1rem; }
.provider-plans-intro {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
}
.provider-section-kicker {
  display: block;
  margin-bottom: .18rem;
  color: var(--findoly-orange);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.provider-plans-intro h1 { margin: 0; color: #172033; font-size: 1.55rem; letter-spacing: -.025em; }
.provider-plans-intro p { margin: .25rem 0 0; color: var(--seller-muted); font-size: .9rem; }
.provider-wallet-overview > div { min-width: 0; }
.portal-credit-balance-card.provider-credit-overview {
  position: relative;
  overflow: hidden;
  min-height: 13.25rem;
  border: 0 !important;
  background: linear-gradient(135deg, #0f3f78 0%, #0a66c2 68%, #1786d9 100%) !important;
  color: #fff !important;
  box-shadow: 0 14px 30px rgba(15, 63, 120, .2);
}
.portal-credit-balance-card.provider-credit-overview::after {
  content: "";
  position: absolute;
  width: 12rem;
  height: 12rem;
  right: -4.5rem;
  top: -6rem;
  border-radius: 50%;
  background: rgba(255, 101, 40, .24);
}
.provider-credit-overview .card-body { position: relative; z-index: 1; display: flex; flex-direction: column; padding: 1.4rem; }
.provider-credit-overview-heading { display: flex; align-items: center; gap: .72rem; }
.provider-credit-overview-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.55rem;
  min-width: 2.55rem;
  height: 2.55rem;
  border-radius: .65rem;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.18);
}
.provider-credit-overview-icon .icon { width: 1.15rem; height: 1.15rem; }
.provider-credit-overview-heading > div { display: grid; }
.provider-credit-overview-heading span,
.provider-credit-overview-heading small,
.provider-credit-overview-meta { color: rgba(255,255,255,.8) !important; }
.provider-credit-overview-heading span { font-size: .88rem; font-weight: 750; }
.provider-credit-overview-heading small { font-size: .74rem; }
.provider-credit-overview-value {
  display: block !important;
  margin: 1.05rem 0 .2rem !important;
  color: #fff !important;
  font-size: clamp(2rem, 4vw, 2.7rem) !important;
  line-height: 1.05 !important;
  letter-spacing: -.04em;
}
.provider-credit-overview-meta { min-height: 1.35rem; font-size: .76rem; }
.provider-credit-overview-actions { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: auto; padding-top: 1rem; }
.provider-credit-overview-actions .btn { min-width: 7.3rem; font-weight: 720; }
.provider-credit-overview-actions .btn-light { color: #0f3f78; border-color: #fff; background: #fff; }
.provider-credit-overview-actions .btn-outline-light { color: #fff; border-color: rgba(255,255,255,.55); }
.provider-current-plan-card { min-height: 13.25rem; border-color: #d7e1ec; }
.provider-current-plan-card .portal-current-plan { height: 100%; padding: 1.45rem; }
.provider-current-plan-card h5 { font-size: 1.25rem; }
.provider-current-plan-description { max-width: 38rem; font-size: .94rem; line-height: 1.55; }
.portal-current-plan-icon { width: 3.35rem; min-width: 3.35rem; height: 3.35rem; }
.portal-plan-dates span { font-size: .76rem; }
.portal-plan-dates strong { font-size: .9rem; }
.provider-plan-section-heading { scroll-margin-top: calc(var(--portal-navbar-height) + 1rem); }
.provider-plan-section-heading h4 { font-size: 1.42rem; }
.provider-plan-section-heading p { font-size: .92rem; }
.portal-plan-card .card-body { padding: 1.55rem; }
.portal-plan-card h4 { font-size: 1.25rem; }
.portal-plan-card p { font-size: .91rem; }
.portal-plan-price strong { font-size: 2.08rem; }
.portal-plan-price span { font-size: .88rem; }
.portal-tax-label { font-size: .82rem; }
.portal-credit-total span { font-size: .8rem; }
.portal-credit-total strong { font-size: 1.55rem; }
.portal-plan-features li { font-size: .9rem; }
.portal-plan-value { font-size: .77rem; }

/* Lead cards: more context without turning the list into a detail page. */
.provider-minimal-results { font-size: .82rem; }
.provider-minimal-list { gap: .78rem; }
.provider-minimal-card.provider-opportunity-card {
  grid-template-columns: minmax(0, 1fr) minmax(13.5rem, auto);
  gap: 1.25rem;
  align-items: stretch;
  padding: 1.05rem 1.1rem;
  border-radius: .65rem;
  border-color: #d9e1ea;
  box-shadow: 0 3px 12px rgba(15, 23, 42, .035);
}
.provider-minimal-card.provider-opportunity-card.is-marketplace { border-left: 4px solid var(--findoly-orange); }
.provider-minimal-card.provider-opportunity-card.is-unlocked { border-left: 4px solid #16875d; }
.provider-minimal-card.provider-opportunity-card:hover {
  border-color: #b9c8d8;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .075);
}
.provider-minimal-category { color: #5e6c7c; font-size: .76rem; letter-spacing: .01em; }
.provider-minimal-title-row h2 { margin: .12rem 0 .24rem; font-size: 1.17rem; line-height: 1.35; letter-spacing: -.018em; }
.provider-card-location { display: flex; align-items: center; gap: .34rem; color: #667386 !important; font-size: .84rem !important; }
.provider-card-location .icon { width: .92rem; height: .92rem; color: #78879a; }
.provider-priority-badge { min-height: 1.75rem; padding: .28rem .62rem; font-size: .74rem; }
.provider-card-summary {
  display: -webkit-box;
  overflow: hidden;
  margin: .78rem 0 0;
  color: #344054;
  font-size: .89rem;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.provider-card-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .6rem;
  margin-top: .85rem;
}
.provider-card-facts > div {
  display: grid;
  min-width: 0;
  gap: .1rem;
  padding: .62rem .7rem;
  border: 1px solid #e5eaf0;
  border-radius: .52rem;
  background: #f8fafc;
}
.provider-card-facts small { color: #748094; font-size: .7rem; }
.provider-card-facts strong { overflow-wrap: anywhere; color: #263241; font-size: .82rem; font-weight: 700; }
.provider-minimal-signals { gap: .48rem; margin-top: .75rem; }
.provider-minimal-signals > span { min-height: 1.8rem; padding: .3rem .58rem; font-size: .75rem; }
.provider-minimal-signals .icon { width: .84rem; height: .84rem; }
.provider-minimal-card-action {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  gap: .8rem;
  min-width: 13.5rem;
  padding-left: 1rem;
  border-left: 1px solid #e6ebf1;
}
.provider-card-price-block { display: grid; text-align: left !important; }
.provider-minimal-card-action small { font-size: .72rem; }
.provider-minimal-card-action strong { margin-top: .08rem; font-size: 1.05rem; }
.provider-card-actions { display: flex; gap: .55rem; }
.provider-card-actions .btn { min-height: 2.55rem; min-width: 0; flex: 1 1 auto; padding: .55rem .8rem; }
.provider-card-call { display: inline-flex; align-items: center; justify-content: center; gap: .38rem; flex: 0 0 auto !important; }
.provider-card-call .icon { width: .9rem; height: .9rem; }

/* Dashboard and navigation should remain compact, not tiny. */
.provider-dashboard-stat { min-height: 5.5rem; }
.provider-dashboard-stat span { font-size: .76rem; }
.provider-dashboard-stat strong { font-size: 1.32rem; }
.provider-dashboard-recent .card-header h5 { font-size: .96rem; }
.provider-recent-main strong { font-size: .86rem; }
.provider-recent-main small { font-size: .74rem; }
.provider-recent-status { font-size: .7rem; }

@media (max-width: 991.98px) {
  .provider-minimal-card.provider-opportunity-card { grid-template-columns: minmax(0, 1fr); }
  .provider-minimal-card-action {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    min-width: 0;
    padding: .8rem 0 0;
    border-top: 1px solid #e6ebf1;
    border-left: 0;
  }
  .provider-card-actions { min-width: 16rem; }
}

@media (max-width: 767.98px) {
  body { font-size: .98rem; }
  .portal-header-context strong { font-size: .82rem; }
  .portal-page-header .page-title { font-size: 1.15rem; }
  .provider-plans-content { padding-top: .75rem; }
  .provider-plans-intro { align-items: start; }
  .provider-plans-intro h1 { font-size: 1.35rem; }
  .provider-plans-intro p { font-size: .84rem; }
  .provider-plans-intro > a { display: none; }
  .portal-credit-balance-card.provider-credit-overview,
  .provider-current-plan-card { min-height: 11.5rem; }
  .provider-card-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .provider-minimal-title-row h2 { font-size: 1.08rem; }
  .provider-card-summary { font-size: .85rem; }
  .provider-minimal-card-action { align-items: stretch; flex-direction: column; }
  .provider-card-actions { width: 100%; min-width: 0; }
}

@media (max-width: 479.98px) {
  .provider-card-facts { grid-template-columns: 1fr; }
  .provider-minimal-card.provider-opportunity-card { padding: .9rem; }
  .provider-card-actions { flex-direction: column; }
  .provider-card-actions .btn { width: 100%; }
  .provider-credit-overview-actions .btn { flex: 1 1 0; min-width: 0; }
  .provider-dashboard-stat span { font-size: .7rem; }
  .provider-dashboard-stat strong { font-size: 1.15rem; }
}

/* =========================================================
   Findoly Business Workspace · universal provider redesign
   A neutral, high-clarity workspace for healthcare, retail,
   home services, professional services and local businesses.
   ========================================================= */
:root {
  --workspace-primary: #175cd3;
  --workspace-primary-hover: #1249aa;
  --workspace-primary-soft: #eaf2ff;
  --workspace-orange: #ff6528;
  --workspace-navy: #10233f;
  --workspace-navy-2: #173454;
  --workspace-text: #172033;
  --workspace-muted: #667085;
  --workspace-subtle: #8a94a4;
  --workspace-border: #e1e7ef;
  --workspace-border-strong: #cfd8e5;
  --workspace-bg: #f5f7fa;
  --workspace-surface: #ffffff;
  --workspace-soft: #f9fafb;
  --workspace-success: #138a5b;
  --workspace-success-soft: #e8f7f0;
  --workspace-warning: #b76e00;
  --workspace-warning-soft: #fff5db;
  --workspace-danger: #c43d4b;
  --workspace-danger-soft: #fff0f1;
  --workspace-violet: #6b57d9;
  --workspace-violet-soft: #f0edff;
  --workspace-radius: 1rem;
  --workspace-radius-sm: .7rem;
  --workspace-shadow: 0 1px 2px rgba(16, 35, 63, .04), 0 8px 24px rgba(16, 35, 63, .045);
  --workspace-shadow-hover: 0 2px 4px rgba(16, 35, 63, .05), 0 16px 36px rgba(16, 35, 63, .09);
  --portal-sidebar-width: 16.25rem;
  --portal-navbar-height: 4.5rem;
}

html[data-portal-theme="professional-blue"] {
  --portal-accent: var(--workspace-primary);
  --portal-accent-dark: var(--workspace-primary-hover);
  --portal-accent-soft: var(--workspace-primary-soft);
  --portal-page: var(--workspace-bg);
  --portal-text: var(--workspace-text);
  --portal-muted: var(--workspace-muted);
  --portal-border: var(--workspace-border);
  --portal-border-soft: #edf1f5;
}
html[data-portal-theme="teal-professional"] {
  --workspace-primary: #087b72;
  --workspace-primary-hover: #06645d;
  --workspace-primary-soft: #e5f6f3;
}
html[data-portal-theme="navy-premium"] {
  --workspace-primary: #3d76dd;
  --workspace-primary-hover: #2e62bf;
  --workspace-primary-soft: #eaf1ff;
}

body {
  background: var(--workspace-bg);
  color: var(--workspace-text);
  font-size: 15px;
  line-height: 1.5;
  letter-spacing: -.006em;
}

.btn {
  min-height: 2.7rem;
  border-radius: .68rem;
  padding: .58rem .95rem;
  font-size: .9rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .48rem;
}
.btn-sm { min-height: 2.2rem; padding: .42rem .72rem; font-size: .79rem; }
.btn-primary { border-color: var(--workspace-primary); background: var(--workspace-primary); }
.btn-primary:hover, .btn-primary:focus { border-color: var(--workspace-primary-hover); background: var(--workspace-primary-hover); }
.btn-light { border-color: var(--workspace-border); background: #fff; color: var(--workspace-text); }
.btn-light:hover { border-color: var(--workspace-border-strong); background: var(--workspace-soft); color: var(--workspace-text); }
.btn-outline-primary { border-color: #a9c2ed; color: var(--workspace-primary); }

.form-control,
.form-select {
  min-height: 2.75rem;
  border-color: var(--workspace-border-strong);
  border-radius: .68rem;
  background-color: #fff;
  color: var(--workspace-text);
  font-size: .9rem;
}
.form-control:focus,
.form-select:focus {
  border-color: var(--workspace-primary);
  box-shadow: 0 0 0 .2rem rgba(23, 92, 211, .11);
}
.form-label { color: #344054; font-size: .82rem; font-weight: 700; }

/* Workspace shell */
.workspace-topbar.portal-navbar {
  height: var(--portal-navbar-height);
  min-height: var(--portal-navbar-height);
  padding: 0;
  border-bottom: 1px solid var(--workspace-border);
  background: rgba(255,255,255,.96);
  box-shadow: 0 1px 3px rgba(16, 35, 63, .035);
  backdrop-filter: blur(14px);
}
.workspace-topbar-inner {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0 1.35rem;
}
.workspace-brand { min-width: calc(var(--portal-sidebar-width) - 1.35rem); gap: .72rem; }
.workspace-brand .portal-brand-logo { width: 7.2rem; max-height: 2.15rem; object-fit: contain; }
.workspace-brand .portal-brand-product {
  display: inline-flex;
  align-items: center;
  min-height: 1.55rem;
  padding: .2rem .5rem;
  border-left: 1px solid var(--workspace-border-strong);
  color: #526174;
  font-size: .76rem;
  font-weight: 750;
}
.workspace-page-context { gap: .06rem; min-width: 0; padding-left: .3rem; }
.workspace-page-context strong { overflow: hidden; color: var(--workspace-text); font-size: .95rem; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.workspace-page-context span { overflow: hidden; color: var(--workspace-muted); font-size: .72rem; text-overflow: ellipsis; white-space: nowrap; }
.workspace-topbar-actions { display: flex; align-items: center; gap: .55rem; }
.workspace-marketplace-shortcut,
.workspace-icon-button,
.workspace-credit-chip {
  min-height: 2.65rem;
  border: 1px solid var(--workspace-border);
  border-radius: .75rem;
  background: #fff;
  color: #344054;
}
.workspace-marketplace-shortcut { gap: .45rem; padding: .55rem .8rem; font-size: .82rem; font-weight: 720; }
.workspace-marketplace-shortcut:hover { border-color: #b9cae5; color: var(--workspace-primary); }
.workspace-icon-button { width: 2.65rem; justify-content: center; }
.workspace-credit-chip { gap: .45rem; padding: .5rem .75rem; font-size: .78rem; }
.workspace-credit-chip strong { color: var(--workspace-primary); font-size: .82rem; }
.workspace-user-button { min-height: 2.75rem; padding: .25rem .25rem .25rem .38rem; border: 1px solid transparent; border-radius: .82rem; }
.workspace-user-button:hover, .workspace-user-button[aria-expanded="true"] { border-color: var(--workspace-border); background: var(--workspace-soft); }
.workspace-user-button > span:first-child { width: 2.15rem; height: 2.15rem; background: var(--workspace-primary-soft); color: var(--workspace-primary); font-size: .78rem; }
.workspace-user-copy { gap: 0; text-align: left; }
.workspace-user-copy strong { max-width: 9rem; overflow: hidden; color: var(--workspace-text); font-size: .77rem; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.workspace-user-copy small { color: var(--workspace-muted); font-size: .64rem; }
.workspace-profile-menu { min-width: 19rem; border: 1px solid var(--workspace-border); border-radius: .9rem; box-shadow: 0 18px 50px rgba(16, 35, 63, .16); }

.workspace-page-shell { min-height: calc(100vh - var(--portal-navbar-height)); }
.workspace-sidebar.portal-sidebar {
  position: sticky;
  top: var(--portal-navbar-height);
  height: calc(100vh - var(--portal-navbar-height));
  align-self: flex-start;
  overflow: hidden;
  border-right: 1px solid #213b5e;
  background: linear-gradient(180deg, var(--workspace-navy) 0%, #0d1d34 100%);
  color: #e9f0fa;
}
.workspace-sidebar-content { height: 100%; display: flex; flex-direction: column; padding: 1rem .8rem !important; overflow-y: auto; }
.workspace-sidebar-account {
  display: grid;
  grid-template-columns: 2.55rem minmax(0, 1fr);
  align-items: center;
  gap: .72rem;
  margin: 0 .25rem .9rem;
  padding: .72rem;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: .85rem;
  background: rgba(255,255,255,.045);
}
.workspace-sidebar-account .portal-sidebar-avatar { width: 2.55rem; height: 2.55rem; border-radius: .72rem; background: rgba(255,255,255,.12); color: #fff; }
.workspace-sidebar-account strong { display: block; color: #fff; font-size: .82rem; }
.workspace-sidebar-account small { display: block; color: #9fb0c5; font-size: .68rem; }
.workspace-primary-nav-action {
  display: flex;
  align-items: center;
  gap: .62rem;
  margin: 0 .25rem 1rem;
  padding: .72rem .8rem;
  border-radius: .75rem;
  background: var(--workspace-primary);
  color: #fff;
  font-size: .82rem;
  font-weight: 750;
  box-shadow: 0 8px 22px rgba(0,0,0,.13);
}
.workspace-primary-nav-action:hover { background: var(--workspace-primary-hover); color: #fff; }
.workspace-primary-nav-action .workspace-nav-arrow { margin-left: auto; width: .9rem; }
.workspace-sidebar-nav { display: grid; gap: .18rem; }
.workspace-nav-label { display: block; padding: .8rem .72rem .35rem; color: #758aa5; font-size: .62rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.workspace-nav-label-account { margin-top: .5rem; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,.08); }
.workspace-sidebar-nav a {
  display: flex;
  align-items: center;
  gap: .72rem;
  min-height: 2.8rem;
  padding: .66rem .72rem;
  border-radius: .7rem;
  color: #c7d2e0;
  font-size: .82rem;
  font-weight: 620;
}
.workspace-sidebar-nav a .icon { width: 1.05rem; height: 1.05rem; color: #8ea2bb; }
.workspace-sidebar-nav a:hover { background: rgba(255,255,255,.065); color: #fff; }
.workspace-sidebar-nav a.active { background: rgba(64, 136, 245, .2); color: #fff; box-shadow: inset 3px 0 0 #6fa5ff; }
.workspace-sidebar-nav a.active .icon { color: #83b1ff; }
.workspace-sidebar-status {
  display: grid;
  grid-template-columns: .7rem minmax(0,1fr);
  gap: .65rem;
  margin: auto .25rem .65rem;
  padding: .75rem;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: .78rem;
  background: rgba(255,255,255,.035);
}
.workspace-status-dot { width: .62rem; height: .62rem; margin-top: .25rem; border-radius: 50%; background: #f0a431; box-shadow: 0 0 0 .2rem rgba(240,164,49,.12); }
.workspace-status-dot.is-ready { background: #42c88a; box-shadow: 0 0 0 .2rem rgba(66,200,138,.12); }
.workspace-sidebar-status strong { display: block; color: #edf4fc; font-size: .72rem; }
.workspace-sidebar-status small { display: block; margin-top: .12rem; color: #8fa3ba; font-size: .63rem; line-height: 1.4; }
.workspace-sidebar-footer { display: grid; gap: .18rem; border-top: 1px solid rgba(255,255,255,.08); padding: .65rem .2rem 0; }
.workspace-sidebar-footer a,
.workspace-sidebar-footer button { display: flex; align-items: center; gap: .65rem; width: 100%; min-height: 2.55rem; padding: .6rem .62rem; border: 0; border-radius: .65rem; background: transparent; color: #9fb0c5; font-size: .76rem; text-align: left; }
.workspace-sidebar-footer a:hover,
.workspace-sidebar-footer button:hover { background: rgba(255,255,255,.055); color: #fff; }

.content-wrapper { background: var(--workspace-bg); }
.workspace-page-header.portal-page-header { display: none; }
.workspace-content.content { width: 100%; max-width: 94rem; margin: 0 auto; padding: 1.5rem 1.65rem 2.25rem; }
.portal-footer { border-color: var(--workspace-border) !important; background: transparent; color: var(--workspace-subtle); }
.portal-card {
  border: 1px solid var(--workspace-border);
  border-radius: var(--workspace-radius);
  background: #fff;
  box-shadow: var(--workspace-shadow);
}
.portal-card .card-header { padding: 1.1rem 1.25rem; border-color: var(--workspace-border) !important; }
.portal-card .card-body { padding: 1.25rem; }
.workspace-eyebrow { display: block; margin-bottom: .2rem; color: var(--workspace-primary); font-size: .66rem; font-weight: 820; letter-spacing: .095em; text-transform: uppercase; }
.workspace-text-link { display: inline-flex; align-items: center; gap: .35rem; color: var(--workspace-primary); font-size: .78rem; font-weight: 750; }
.workspace-text-link .icon { width: .85rem; }

/* Dashboard */
.workspace-dashboard { display: grid; gap: 1.15rem; }
.workspace-welcome-card {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 2rem;
  min-height: 12.5rem;
  padding: 1.7rem 1.8rem;
  border-radius: 1.2rem;
  background: linear-gradient(130deg, #10233f 0%, #173f6d 62%, #1a5a9d 100%);
  color: #fff;
  box-shadow: 0 16px 38px rgba(16,35,63,.16);
}
.workspace-welcome-card::after { content: ""; position: absolute; right: -5rem; top: -7rem; width: 21rem; height: 21rem; border-radius: 50%; background: radial-gradient(circle, rgba(255,101,40,.3), rgba(255,101,40,0) 70%); }
.workspace-welcome-copy { position: relative; z-index: 1; max-width: 44rem; }
.workspace-welcome-copy .workspace-eyebrow { color: #9dc5ff; }
.workspace-welcome-copy h2 { margin: 0; font-size: clamp(1.45rem, 2.5vw, 2rem); letter-spacing: -.035em; }
.workspace-welcome-copy p { max-width: 42rem; margin: .5rem 0 1.15rem; color: #c8d6e8; font-size: .91rem; }
.workspace-welcome-actions { display: flex; flex-wrap: wrap; gap: .65rem; }
.workspace-welcome-actions .btn-light { border-color: rgba(255,255,255,.22); background: rgba(255,255,255,.1); color: #fff; }
.workspace-welcome-actions .btn-light:hover { background: rgba(255,255,255,.17); }
.workspace-welcome-balance { position: relative; z-index: 1; display: grid; min-width: 14rem; padding: 1rem 1.15rem; border: 1px solid rgba(255,255,255,.16); border-radius: .95rem; background: rgba(255,255,255,.09); backdrop-filter: blur(8px); }
.workspace-welcome-balance span { color: #c5d4e7; font-size: .72rem; }
.workspace-welcome-balance strong { margin: .25rem 0 .65rem; color: #fff; font-size: 1.45rem; letter-spacing: -.035em; }
.workspace-welcome-balance a { display: inline-flex; align-items: center; gap: .3rem; color: #fff; font-size: .72rem; font-weight: 750; }
.workspace-welcome-balance a .icon { width: .8rem; }
.workspace-alert-card {
  display: grid;
  grid-template-columns: 2.6rem minmax(0, 1fr) auto;
  align-items: center;
  gap: .85rem;
  padding: .85rem 1rem;
  border: 1px solid #cfe0f6;
  border-radius: .9rem;
  background: #edf5ff;
}
.workspace-alert-card.is-warning { border-color: #f2dca7; background: #fff8e7; }
.workspace-alert-icon { display: inline-flex; align-items: center; justify-content: center; width: 2.55rem; height: 2.55rem; border-radius: .72rem; background: #fff; color: var(--workspace-primary); box-shadow: 0 1px 3px rgba(16,35,63,.06); }
.workspace-alert-card.is-warning .workspace-alert-icon { color: var(--workspace-warning); }
.workspace-alert-card > div { display: grid; gap: .08rem; }
.workspace-alert-card strong { font-size: .82rem; }
.workspace-alert-card span { color: var(--workspace-muted); font-size: .72rem; }
.workspace-metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: .85rem; }
.workspace-metric-card.provider-dashboard-stat {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  grid-template-rows: auto auto auto;
  gap: .05rem .75rem;
  min-height: 7rem;
  padding: 1rem;
  border: 1px solid var(--workspace-border);
  border-radius: .95rem;
  background: #fff;
  color: var(--workspace-text);
  box-shadow: var(--workspace-shadow);
}
.workspace-metric-card:hover { transform: translateY(-2px); border-color: #c9d6e7; box-shadow: var(--workspace-shadow-hover); }
.workspace-metric-icon { grid-row: 1 / 4; display: inline-flex; align-items: center; justify-content: center; width: 2.75rem; height: 2.75rem; border-radius: .78rem; background: var(--workspace-primary-soft); color: var(--workspace-primary); }
.workspace-metric-card.is-violet .workspace-metric-icon { background: var(--workspace-violet-soft); color: var(--workspace-violet); }
.workspace-metric-card.is-amber .workspace-metric-icon { background: var(--workspace-warning-soft); color: var(--workspace-warning); }
.workspace-metric-card.is-green .workspace-metric-icon { background: var(--workspace-success-soft); color: var(--workspace-success); }
.workspace-metric-label { color: var(--workspace-muted); font-size: .7rem; font-weight: 680; }
.workspace-metric-card strong { overflow-wrap: anywhere; font-size: 1.28rem; line-height: 1.25; letter-spacing: -.035em; }
.workspace-metric-card small { color: var(--workspace-subtle); font-size: .65rem; }
.workspace-dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(18rem, .8fr); gap: 1rem; align-items: start; }
.workspace-panel { overflow: hidden; }
.workspace-panel-header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 4.65rem; padding: 1rem 1.15rem !important; }
.workspace-panel-header h3 { margin: 0; font-size: 1.02rem; }
.workspace-recent-list { display: grid; }
.workspace-recent-row.provider-recent-row { display: grid; grid-template-columns: 2.55rem minmax(0,1fr) auto 1rem; align-items: center; gap: .8rem; min-height: 4.7rem; padding: .75rem 1.1rem; border-bottom: 1px solid var(--workspace-border); color: var(--workspace-text); }
.workspace-recent-row:last-child { border-bottom: 0; }
.workspace-recent-row:hover { background: #fafcff; }
.workspace-recent-row .provider-recent-icon { width: 2.55rem; height: 2.55rem; border-radius: .75rem; background: var(--workspace-primary-soft); color: var(--workspace-primary); }
.workspace-recent-row .provider-recent-main strong { font-size: .82rem; }
.workspace-recent-row .provider-recent-main small { color: var(--workspace-muted); font-size: .69rem; }
.workspace-recent-row .provider-recent-status { font-size: .67rem; }
.workspace-row-arrow { width: .82rem; color: #98a2b3; }
.workspace-priority-panel { overflow: hidden; border: 1px solid var(--workspace-border); border-radius: 1rem; background: #fff; box-shadow: var(--workspace-shadow); }
.workspace-action-list { display: grid; }
.workspace-action-list > a { display: grid; grid-template-columns: 2.55rem minmax(0,1fr) .9rem; align-items: center; gap: .75rem; padding: .85rem 1rem; border-top: 1px solid var(--workspace-border); color: var(--workspace-text); }
.workspace-action-list > a:hover { background: #fafcff; }
.workspace-action-list > a > span:nth-child(2) { display: grid; gap: .08rem; }
.workspace-action-list strong { font-size: .78rem; }
.workspace-action-list small { color: var(--workspace-muted); font-size: .66rem; line-height: 1.4; }
.workspace-action-icon { display: inline-flex; align-items: center; justify-content: center; width: 2.5rem; height: 2.5rem; border-radius: .72rem; background: var(--workspace-primary-soft); color: var(--workspace-primary); }
.workspace-action-icon.is-amber { background: var(--workspace-warning-soft); color: var(--workspace-warning); }
.workspace-action-icon.is-green { background: var(--workspace-success-soft); color: var(--workspace-success); }
.workspace-action-list > a > .icon { width: .8rem; color: #98a2b3; }
.workspace-trust-note { display: flex; gap: .65rem; margin: .85rem; padding: .78rem; border-radius: .75rem; background: #f6f8fb; color: var(--workspace-muted); font-size: .66rem; line-height: 1.45; }
.workspace-trust-note > .icon { flex: 0 0 auto; color: var(--workspace-success); }
.workspace-trust-note strong { display: block; color: var(--workspace-text); }
.workspace-empty-icon { display: inline-flex; align-items: center; justify-content: center; width: 3rem; height: 3rem; border-radius: .85rem; background: var(--workspace-primary-soft); color: var(--workspace-primary); }

/* Marketplace and My Leads */
.workspace-leads-page { display: grid; gap: 1rem; }
.workspace-lead-command { position: sticky; top: calc(var(--portal-navbar-height) + .5rem); z-index: 20; display: grid; gap: .65rem; }
.workspace-lead-tabs.provider-lead-tabs { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .65rem; margin: 0; }
.workspace-lead-tabs > a { min-height: 4rem; padding: .7rem .85rem; border: 1px solid var(--workspace-border); border-radius: .9rem; background: #fff; box-shadow: 0 1px 3px rgba(16,35,63,.03); }
.workspace-lead-tabs > a:hover { border-color: #bfd0e8; }
.workspace-lead-tabs > a.active { border-color: #a8c4ee; background: #f5f9ff; box-shadow: inset 0 0 0 1px #d9e8ff; }
.workspace-lead-tabs .provider-tab-icon { width: 2.35rem; height: 2.35rem; border-radius: .7rem; background: #f0f3f7; color: #667085; }
.workspace-lead-tabs > a.active .provider-tab-icon { background: var(--workspace-primary); color: #fff; }
.workspace-lead-tabs .provider-tab-copy strong { font-size: .82rem; }
.workspace-lead-tabs .provider-tab-copy small { color: var(--workspace-muted); font-size: .66rem; }
.workspace-lead-tabs .provider-tab-count { min-width: 1.65rem; height: 1.65rem; background: #edf2f7; color: #475467; }
.workspace-filter-card.provider-minimal-filter { overflow: visible; border-radius: .9rem; box-shadow: var(--workspace-shadow); }
.workspace-filter-toolbar.provider-filter-toolbar { display: grid; grid-template-columns: minmax(0,1fr) auto auto; gap: .55rem; padding: .65rem; }
.workspace-search-field { position: relative; display: block; }
.workspace-search-field .icon { position: absolute; z-index: 2; left: .85rem; top: 50%; transform: translateY(-50%); color: #7b8798; }
.workspace-search-field .form-control { padding-left: 2.6rem; border-color: transparent; background: #f4f6f9; }
.workspace-search-field .form-control:focus { border-color: #a9c4ed; background: #fff; }
.workspace-filter-toggle .icon { width: .95rem; }
.workspace-filter-panel { border-top: 1px solid var(--workspace-border); background: #fbfcfe; }
.workspace-filter-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 1.1rem .2rem; }
.workspace-filter-heading > div { display: grid; }
.workspace-filter-heading strong { font-size: .86rem; }
.workspace-filter-heading span { color: var(--workspace-muted); font-size: .69rem; }
.workspace-filter-heading > button { border: 0; background: transparent; color: var(--workspace-muted); font-size: 1.3rem; }
.workspace-filter-grid.provider-advanced-grid { grid-template-columns: repeat(5, minmax(0,1fr)); gap: .75rem; padding: .9rem 1.1rem; }
.workspace-filter-subgrid.provider-advanced-subgrid { display: contents; }
.workspace-filter-grid .provider-filter-control { display: grid; gap: .28rem; }
.workspace-filter-grid .provider-filter-control > span:first-child { color: #475467; font-size: .68rem; font-weight: 700; }
.workspace-filter-actions { display: flex; justify-content: flex-end; gap: .55rem; padding: .8rem 1.1rem 1rem; border-top: 1px solid var(--workspace-border); }
.workspace-active-filters { display: flex; flex-wrap: wrap; gap: .4rem; }
.workspace-active-filters button { display: inline-flex; align-items: center; gap: .4rem; min-height: 1.9rem; padding: .28rem .55rem; border: 1px solid #cad8ea; border-radius: 999px; background: #fff; color: #41546c; font-size: .66rem; }
.workspace-active-filters .is-clear { border-color: transparent; background: transparent; color: var(--workspace-primary); }
.workspace-results-bar { display: flex; align-items: end; justify-content: space-between; gap: 1rem; padding: .1rem .15rem; }
.workspace-results-bar > div { display: grid; }
.workspace-results-bar strong { font-size: .87rem; }
.workspace-results-bar span { color: var(--workspace-muted); font-size: .68rem; }
.workspace-results-sort { padding: .3rem .55rem; border-radius: .5rem; background: #eaf0f7; color: #526174 !important; font-weight: 700; }
.workspace-lead-grid.provider-minimal-list { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .9rem; }
.workspace-lead-card.provider-minimal-card.provider-opportunity-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 24rem;
  padding: 0;
  gap: 0;
  overflow: hidden;
  border: 1px solid var(--workspace-border);
  border-left: 1px solid var(--workspace-border);
  border-radius: 1rem;
  background: #fff;
  box-shadow: var(--workspace-shadow);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.workspace-lead-card.provider-opportunity-card:hover { transform: translateY(-3px); border-color: #bfd0e4; box-shadow: var(--workspace-shadow-hover); }
.workspace-lead-card.is-marketplace { border-top: 3px solid var(--workspace-primary); }
.workspace-lead-card.is-unlocked { border-top: 3px solid var(--workspace-success); }
.workspace-lead-card-main { flex: 1; padding: 1.05rem 1.1rem .9rem; }
.workspace-card-topline { display: flex; align-items: center; justify-content: space-between; gap: .75rem; }
.workspace-lead-card .provider-minimal-category { overflow: hidden; color: #667085; font-size: .68rem; font-weight: 760; letter-spacing: .055em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.workspace-lead-card .provider-priority-badge { flex: 0 0 auto; min-height: 1.65rem; padding: .25rem .5rem; border-radius: 999px; font-size: .66rem; }
.workspace-lead-title-row h2 { margin: .55rem 0 .22rem; font-size: 1.08rem; line-height: 1.35; letter-spacing: -.025em; }
.workspace-lead-title-row h2 a { color: var(--workspace-text); }
.workspace-lead-title-row h2 a:hover { color: var(--workspace-primary); }
.workspace-lead-card .provider-card-location { display: flex; align-items: center; gap: .32rem; margin: 0; color: #667085 !important; font-size: .73rem !important; }
.workspace-lead-card .provider-card-location .icon { width: .85rem; height: .85rem; }
.workspace-lead-card .provider-card-summary { min-height: 2.75rem; margin: .75rem 0 0; color: #475467; font-size: .78rem; line-height: 1.5; -webkit-line-clamp: 2; }
.workspace-card-facts.provider-card-facts { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: .42rem; margin-top: .8rem; }
.workspace-card-facts > div { min-width: 0; padding: .55rem .58rem; border: 1px solid #e8edf3; border-radius: .62rem; background: #fafbfd; }
.workspace-card-facts small { display: block; color: #8a94a4; font-size: .6rem; }
.workspace-card-facts strong { display: block; margin-top: .1rem; overflow: hidden; color: #344054; font-size: .69rem; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.workspace-lead-signals.provider-minimal-signals { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .7rem; }
.workspace-lead-signals > span { display: inline-flex; align-items: center; gap: .28rem; min-height: 1.75rem; padding: .27rem .48rem; border: 1px solid #e3e9f0; border-radius: 999px; background: #fff; color: #596779; font-size: .63rem; }
.workspace-lead-signals > span.is-confirmed { border-color: #bfe7d4; background: var(--workspace-success-soft); color: #08764b; }
.workspace-lead-signals > span.is-overdue { border-color: #f2d49d; background: var(--workspace-warning-soft); color: #986000; }
.workspace-lead-card-footer.provider-minimal-card-action { display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: .75rem; min-width: 0; margin-top: auto; padding: .85rem 1.1rem; border-top: 1px solid var(--workspace-border); border-left: 0; background: #fbfcfe; }
.workspace-lead-card-footer .provider-card-price-block small { display: block; color: var(--workspace-muted); font-size: .62rem; }
.workspace-lead-card-footer .provider-card-price-block strong { display: block; margin-top: .05rem; font-size: .88rem; }
.workspace-lead-card-footer .provider-card-actions { display: flex; gap: .45rem; min-width: 0; }
.workspace-lead-card-footer .provider-card-actions .btn { flex: 0 0 auto; min-height: 2.35rem; padding: .45rem .65rem; font-size: .72rem; }
.workspace-lead-card-footer .provider-card-actions .btn .icon { width: .82rem; }
.workspace-empty-state { grid-column: 1 / -1; min-height: 15rem; display: grid; place-items: center; }
.workspace-empty-state .card-body > div:last-child { display: grid; justify-items: center; gap: .4rem; }
.workspace-pagination { display: flex; align-items: center; justify-content: space-between; padding: .65rem .75rem; }

/* Lead detail workspace */
.workspace-lead-detail-page { max-width: 88rem; margin: 0 auto; }
.workspace-lead-detail-grid { --bs-gutter-x: 1rem; }
.workspace-detail-hero { overflow: hidden; border: 0; background: linear-gradient(135deg, #10233f 0%, #174d83 100%); color: #fff; box-shadow: 0 15px 35px rgba(16,35,63,.16); }
.workspace-detail-hero .card-header { border-color: rgba(255,255,255,.14) !important; background: transparent; }
.workspace-detail-hero h3 { color: #fff; font-size: 1.35rem; }
.workspace-detail-hero .text-muted { color: #c5d4e7 !important; }
.workspace-detail-hero .portal-price-box { min-width: 10rem; padding: .65rem .8rem; border: 1px solid rgba(255,255,255,.15); border-radius: .8rem; background: rgba(255,255,255,.08); }
.workspace-detail-hero .portal-price-box span,
.workspace-detail-hero .portal-price-box small { color: #c5d4e7; }
.workspace-detail-hero .portal-facts { overflow: hidden; border: 0; border-radius: .8rem; background: rgba(255,255,255,.07); }
.workspace-detail-hero .portal-facts > div { border-color: rgba(255,255,255,.12); background: transparent; }
.workspace-detail-hero .portal-facts span { color: #b8c9de; }
.workspace-detail-hero .portal-facts strong { color: #fff; }
.workspace-signal-strip.portal-marketplace-trust { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .65rem; padding: .75rem; border: 1px solid var(--workspace-border); border-radius: 1rem; background: #fff; box-shadow: var(--workspace-shadow); }
.workspace-signal-strip > div { display: grid; gap: .12rem; padding: .65rem .75rem; border: 0; border-radius: .72rem; background: #f7f9fc; }
.workspace-signal-strip span { color: var(--workspace-muted); font-size: .64rem; }
.workspace-signal-strip strong { font-size: .77rem; }
.workspace-outcome-panel { border-top: 3px solid var(--workspace-warning); }
.workspace-outcome-panel .portal-outcome-radio-grid label { border-radius: .8rem; }
.workspace-detail-section .card-header h5,
.workspace-contact-panel .card-header h5 { font-size: 1rem; }
.workspace-contact-panel { border-top: 3px solid var(--workspace-success); }
.workspace-access-panel { overflow: hidden; border-top: 3px solid var(--workspace-primary); box-shadow: 0 12px 30px rgba(16,35,63,.09); }
.workspace-access-panel .card-header { background: #fbfcfe; }
.portal-detail-table th { color: #475467; font-size: .75rem; }
.portal-detail-table td { color: #344054; font-size: .78rem; }

/* Credits and plans */
.provider-plans-content.workspace-content,
.provider-plans-content { max-width: 94rem; margin: 0 auto; padding: 1.5rem 1.65rem 2.25rem; }
.provider-plans-intro { margin-bottom: 1rem !important; }
.provider-plans-intro h1 { font-size: 1.45rem; }
.provider-wallet-overview { align-items: stretch; }
.provider-credit-overview.portal-credit-balance-card { min-height: 12rem; border-radius: 1.05rem; background: linear-gradient(135deg, #10233f 0%, #175cd3 100%) !important; box-shadow: 0 14px 34px rgba(16,35,63,.16); }
.provider-current-plan-card { min-height: 12rem; border-radius: 1.05rem; }
.portal-plan-grid { align-items: stretch; }
.portal-plan-card { border-radius: 1rem; }
.portal-plan-card:hover { transform: translateY(-4px); box-shadow: var(--workspace-shadow-hover); }
.portal-plan-card.is-recommended { border-color: #9dbdef; }
.portal-plan-card .portal-plan-ribbon { background: var(--workspace-orange); }
.portal-plan-price strong { color: var(--workspace-text); }
.portal-credit-total { border-radius: .8rem; background: #f7f9fc; }
.portal-billing-toggle { border-radius: .82rem; }
.portal-billing-toggle button { border-radius: .62rem; }

/* Profile */
.portal-profile-hero { padding: 1.35rem !important; }
.portal-profile-avatar { border-radius: 1rem; background: linear-gradient(135deg, var(--workspace-primary), #6c8fe8); color: #fff; }
.portal-location-card { border-top: 3px solid var(--workspace-primary); }
.portal-managed-location { border-radius: .85rem; }
.portal-profile-status > div { padding: .75rem 0; }
.portal-profile-status span { color: var(--workspace-muted); font-size: .72rem; }
.portal-profile-status strong { font-size: .75rem; }

/* Login */
.portal-login-body { position: relative; overflow: hidden; background: linear-gradient(135deg, #eef3f9 0%, #f8fafc 52%, #edf4ff 100%); }
.portal-login-body::before,
.portal-login-body::after { content: ""; position: fixed; border-radius: 50%; pointer-events: none; }
.portal-login-body::before { width: 28rem; height: 28rem; left: -10rem; bottom: -13rem; background: rgba(23,92,211,.09); }
.portal-login-body::after { width: 22rem; height: 22rem; right: -8rem; top: -9rem; background: rgba(255,101,40,.08); }
.portal-login-shell { position: relative; z-index: 1; width: min(30rem,100%); }
.portal-login-brand { margin-bottom: 1rem; }
.portal-login-logo { width: 9rem; }
.portal-login-brand > span { padding-left: .7rem; border-left: 1px solid var(--workspace-border-strong); color: #667085; font-size: .78rem; font-weight: 720; }
.portal-login-card { overflow: hidden; border: 1px solid rgba(207,216,229,.9); border-radius: 1.15rem; box-shadow: 0 22px 60px rgba(16,35,63,.12); }
.portal-login-card::before { content: ""; display: block; height: .3rem; background: linear-gradient(90deg, var(--workspace-primary), #4a85df 65%, var(--workspace-orange)); }
.portal-login-card .card-body { padding: 1.75rem; }
.portal-login-lock { width: 3.5rem; height: 3.5rem; border-radius: 1rem; }
.portal-login-card h1 { color: var(--workspace-text); font-size: 1.5rem; letter-spacing: -.03em; }
.portal-login-help { border-radius: .8rem; background: #f8fafc; }

/* Mobile */
.workspace-mobile-nav.portal-mobile-nav { border-top: 1px solid var(--workspace-border); background: rgba(255,255,255,.97); box-shadow: 0 -8px 25px rgba(16,35,63,.08); backdrop-filter: blur(12px); }
.workspace-mobile-nav a { color: #718096; }
.workspace-mobile-nav a.active { color: var(--workspace-primary); }
.workspace-mobile-nav a.active::before { background: var(--workspace-primary); }

@media (max-width: 1279.98px) {
  .workspace-filter-grid.provider-advanced-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .workspace-lead-grid.provider-minimal-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 1099.98px) {
  .workspace-metric-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .workspace-dashboard-grid { grid-template-columns: 1fr; }
  .workspace-filter-grid.provider-advanced-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .workspace-card-facts.provider-card-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 991.98px) {
  :root { --portal-navbar-height: 4rem; }
  .workspace-topbar-inner { padding: 0 .8rem; }
  .workspace-brand { min-width: 0; }
  .workspace-brand .portal-brand-logo { width: 6.4rem; }
  .workspace-brand .portal-brand-product { display: none; }
  .workspace-sidebar.portal-sidebar { position: fixed; top: var(--portal-navbar-height); height: calc(100dvh - var(--portal-navbar-height)); z-index: 1040; }
  .workspace-content.content,
  .provider-plans-content { padding: 1rem 1rem 5.5rem; }
  .workspace-page-header.portal-page-header { display: block; padding: .8rem 1rem; }
  .workspace-page-header .page-title { font-size: 1.1rem; }
  .workspace-page-header .page-subtitle { font-size: .72rem; }
  .workspace-lead-command { top: calc(var(--portal-navbar-height) + .35rem); }
  .workspace-lead-grid.provider-minimal-list { grid-template-columns: 1fr; }
  .workspace-lead-card.provider-minimal-card.provider-opportunity-card { min-height: 0; }
  .workspace-signal-strip.portal-marketplace-trust { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 767.98px) {
  body { font-size: 15px; }
  .workspace-topbar-actions { gap: .35rem; }
  .workspace-credit-chip { min-height: 2.35rem; padding: .42rem .55rem; }
  .workspace-credit-chip > span { display: none !important; }
  .workspace-welcome-card { grid-template-columns: 1fr; min-height: 0; padding: 1.25rem; }
  .workspace-welcome-copy h2 { font-size: 1.45rem; }
  .workspace-welcome-balance { min-width: 0; }
  .workspace-metric-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .workspace-metric-card.provider-dashboard-stat { min-height: 6.5rem; grid-template-columns: 2.3rem minmax(0,1fr); padding: .8rem; }
  .workspace-metric-icon { width: 2.3rem; height: 2.3rem; }
  .workspace-metric-card strong { font-size: 1.05rem; }
  .workspace-alert-card { grid-template-columns: 2.35rem minmax(0,1fr); }
  .workspace-alert-card > .btn { grid-column: 2; justify-self: start; }
  .workspace-recent-row.provider-recent-row { grid-template-columns: 2.35rem minmax(0,1fr) auto; padding: .7rem .85rem; }
  .workspace-recent-row .provider-recent-status { grid-column: 2; justify-self: start; }
  .workspace-row-arrow { grid-row: 1 / 3; grid-column: 3; }
  .workspace-lead-tabs .provider-tab-copy small { display: none; }
  .workspace-filter-toolbar.provider-filter-toolbar { grid-template-columns: minmax(0,1fr) auto; }
  .workspace-filter-toolbar .provider-filter-apply { grid-column: 1 / -1; }
  .workspace-filter-grid.provider-advanced-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .workspace-card-facts.provider-card-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .workspace-lead-card-footer.provider-minimal-card-action { align-items: stretch; flex-direction: column; }
  .workspace-lead-card-footer .provider-card-actions { width: 100%; }
  .workspace-lead-card-footer .provider-card-actions .btn { flex: 1 1 auto; }
  .workspace-signal-strip.portal-marketplace-trust { grid-template-columns: 1fr 1fr; }
  .provider-plans-intro { align-items: start; flex-direction: column; }
}
@media (max-width: 479.98px) {
  .workspace-content.content,
  .provider-plans-content { padding: .75rem .7rem 5.25rem; }
  .workspace-brand .portal-brand-logo { width: 5.65rem; }
  .workspace-user-copy { display: none !important; }
  .workspace-welcome-actions { display: grid; grid-template-columns: 1fr; }
  .workspace-welcome-actions .btn { width: 100%; }
  .workspace-metric-grid { gap: .55rem; }
  .workspace-metric-card.provider-dashboard-stat { grid-template-columns: 1fr; grid-template-rows: auto auto auto auto; gap: .1rem; min-height: 7.3rem; }
  .workspace-metric-icon { grid-row: auto; width: 2.25rem; height: 2.25rem; }
  .workspace-filter-grid.provider-advanced-grid { grid-template-columns: 1fr; }
  .workspace-filter-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .workspace-lead-tabs > a { padding: .6rem; }
  .workspace-lead-tabs .provider-tab-icon { width: 2rem; height: 2rem; }
  .workspace-lead-tabs .provider-tab-copy strong { font-size: .72rem; }
  .workspace-card-facts.provider-card-facts { grid-template-columns: 1fr 1fr; }
  .workspace-lead-card-footer .provider-card-actions { display: grid; grid-template-columns: 1fr; }
  .workspace-signal-strip.portal-marketplace-trust { grid-template-columns: 1fr; }
}

/* =========================================================
   Findoly Calm Workspace · restrained, WhatsApp-inspired UI
   White and neutral surfaces with one accent colour. Colour is
   reserved for primary actions and meaningful status feedback.
   ========================================================= */
:root {
  --workspace-primary: #147a62;
  --workspace-primary-hover: #10654f;
  --workspace-primary-soft: #edf7f3;
  --workspace-orange: #68736f;
  --workspace-navy: #ffffff;
  --workspace-navy-2: #ffffff;
  --workspace-text: #202724;
  --workspace-muted: #66716d;
  --workspace-subtle: #89928f;
  --workspace-border: #e2e7e4;
  --workspace-border-strong: #d2d9d5;
  --workspace-bg: #f5f7f6;
  --workspace-surface: #ffffff;
  --workspace-soft: #f8faf9;
  --workspace-success: #147a62;
  --workspace-success-soft: #edf7f3;
  --workspace-warning: #9a6817;
  --workspace-warning-soft: #fff8e8;
  --workspace-danger: #b74444;
  --workspace-danger-soft: #fff1f1;
  --workspace-violet: #5e6965;
  --workspace-violet-soft: #f1f3f2;
  --workspace-radius: .82rem;
  --workspace-radius-sm: .62rem;
  --workspace-shadow: 0 1px 2px rgba(24, 39, 33, .035);
  --workspace-shadow-hover: 0 3px 12px rgba(24, 39, 33, .065);
}

html[data-portal-theme="professional-blue"] {
  --workspace-primary: #2870b8;
  --workspace-primary-hover: #205e9c;
  --workspace-primary-soft: #eef5fb;
}
html[data-portal-theme="teal-professional"] {
  --workspace-primary: #147a62;
  --workspace-primary-hover: #10654f;
  --workspace-primary-soft: #edf7f3;
}
html[data-portal-theme="navy-premium"] {
  --workspace-primary: #53645f;
  --workspace-primary-hover: #43524e;
  --workspace-primary-soft: #f0f3f2;
}

body { background: var(--workspace-bg); color: var(--workspace-text); }

/* Calm shell */
.workspace-topbar.portal-navbar {
  border-bottom-color: var(--workspace-border);
  background: rgba(255, 255, 255, .98);
  box-shadow: none;
  backdrop-filter: blur(10px);
}
.workspace-marketplace-shortcut,
.workspace-icon-button,
.workspace-credit-chip {
  border-color: transparent;
  background: transparent;
}
.workspace-marketplace-shortcut:hover,
.workspace-icon-button:hover,
.workspace-credit-chip:hover {
  border-color: var(--workspace-border);
  background: var(--workspace-soft);
}
.workspace-credit-chip strong { color: var(--workspace-text); }
.workspace-user-button > span:first-child { background: #eef1ef; color: #45514d; }
.workspace-profile-menu { box-shadow: 0 10px 30px rgba(24, 39, 33, .12); }

.workspace-sidebar.portal-sidebar {
  border-right: 1px solid var(--workspace-border);
  background: #ffffff;
  color: var(--workspace-text);
}
.workspace-sidebar-account {
  border-color: var(--workspace-border);
  background: var(--workspace-soft);
}
.workspace-sidebar-account .portal-sidebar-avatar { background: #e9eeeb; color: #44514c; }
.workspace-sidebar-account strong { color: var(--workspace-text); }
.workspace-sidebar-account small { color: var(--workspace-muted); }
.workspace-primary-nav-action {
  background: var(--workspace-primary);
  box-shadow: none;
}
.workspace-nav-label { color: var(--workspace-subtle); }
.workspace-nav-label-account { border-top-color: var(--workspace-border); }
.workspace-sidebar-nav a { color: #4f5b57; }
.workspace-sidebar-nav a .icon { color: #818b87; }
.workspace-sidebar-nav a:hover { background: #f4f6f5; color: var(--workspace-text); }
.workspace-sidebar-nav a:hover .icon { color: #53605c; }
.workspace-sidebar-nav a.active {
  background: var(--workspace-primary-soft);
  color: var(--workspace-primary-hover);
  box-shadow: inset 3px 0 0 var(--workspace-primary);
}
.workspace-sidebar-nav a.active .icon { color: var(--workspace-primary); }
.workspace-sidebar-status {
  border-color: var(--workspace-border);
  background: #fafbfa;
}
.workspace-sidebar-status strong { color: var(--workspace-text); }
.workspace-sidebar-status small { color: var(--workspace-muted); }
.workspace-sidebar-footer { border-top-color: var(--workspace-border); }
.workspace-sidebar-footer a,
.workspace-sidebar-footer button { color: var(--workspace-muted); }
.workspace-sidebar-footer a:hover,
.workspace-sidebar-footer button:hover { background: #f4f6f5; color: var(--workspace-text); }
.workspace-status-dot { box-shadow: none; }
.workspace-status-dot.is-ready { background: var(--workspace-success); box-shadow: none; }

/* Flat surfaces */
.portal-card,
.workspace-priority-panel,
.workspace-lead-card.provider-minimal-card.provider-opportunity-card {
  border-color: var(--workspace-border);
  box-shadow: var(--workspace-shadow);
}
.portal-card:hover { box-shadow: var(--workspace-shadow); }
.workspace-content.content { padding-top: 1.25rem; }
.workspace-eyebrow { color: var(--workspace-muted); letter-spacing: .07em; }
.workspace-text-link { color: var(--workspace-primary); }

/* Dashboard: remove gradient and decorative colour */
.workspace-welcome-card {
  min-height: 10.5rem;
  border: 1px solid var(--workspace-border);
  background: #ffffff;
  color: var(--workspace-text);
  box-shadow: var(--workspace-shadow);
}
.workspace-welcome-card::after { display: none; }
.workspace-welcome-copy .workspace-eyebrow { color: var(--workspace-muted); }
.workspace-welcome-copy h2 { color: var(--workspace-text); }
.workspace-welcome-copy p { color: var(--workspace-muted); }
.workspace-welcome-actions .btn-light {
  border-color: var(--workspace-border);
  background: #ffffff;
  color: var(--workspace-text);
}
.workspace-welcome-actions .btn-light:hover { background: var(--workspace-soft); }
.workspace-welcome-balance {
  border-color: var(--workspace-border);
  background: var(--workspace-soft);
  backdrop-filter: none;
}
.workspace-welcome-balance span { color: var(--workspace-muted); }
.workspace-welcome-balance strong { color: var(--workspace-text); }
.workspace-welcome-balance a { color: var(--workspace-primary); }
.workspace-alert-card {
  border-color: var(--workspace-border);
  background: #ffffff;
}
.workspace-alert-card.is-warning {
  border-color: #eed9aa;
  background: var(--workspace-warning-soft);
}
.workspace-alert-icon {
  background: #f2f4f3;
  color: #5d6965;
  box-shadow: none;
}
.workspace-alert-card.is-warning .workspace-alert-icon { color: var(--workspace-warning); }
.workspace-metric-card.provider-dashboard-stat {
  border-color: var(--workspace-border);
  background: #fff;
  box-shadow: none;
}
.workspace-metric-card:hover { transform: none; border-color: var(--workspace-border-strong); box-shadow: var(--workspace-shadow); }
.workspace-metric-icon,
.workspace-metric-card.is-violet .workspace-metric-icon,
.workspace-metric-card.is-green .workspace-metric-icon {
  background: #f0f3f1;
  color: #56635e;
}
.workspace-metric-card.is-amber .workspace-metric-icon {
  background: var(--workspace-warning-soft);
  color: var(--workspace-warning);
}
.workspace-recent-row:hover,
.workspace-action-list > a:hover { background: var(--workspace-soft); }
.workspace-recent-row .provider-recent-icon,
.workspace-action-icon,
.workspace-action-icon.is-green {
  background: #f0f3f1;
  color: #5b6763;
}
.workspace-action-icon.is-amber { background: var(--workspace-warning-soft); color: var(--workspace-warning); }
.workspace-trust-note { background: #f7f9f8; }
.workspace-empty-icon { background: #f0f3f1; color: #5d6965; }

/* Marketplace: neutral cards and restrained signals */
.workspace-lead-tabs > a {
  border-color: var(--workspace-border);
  box-shadow: none;
}
.workspace-lead-tabs > a:hover { border-color: var(--workspace-border-strong); background: var(--workspace-soft); }
.workspace-lead-tabs > a.active {
  border-color: #c9ded6;
  background: var(--workspace-primary-soft);
  box-shadow: none;
}
.workspace-lead-tabs .provider-tab-icon,
.workspace-lead-tabs > a.active .provider-tab-icon {
  background: #edf0ee;
  color: #596560;
}
.workspace-lead-tabs > a.active .provider-tab-icon { color: var(--workspace-primary); }
.workspace-lead-tabs .provider-tab-count { background: #eef1ef; color: #55615d; }
.workspace-filter-card.provider-minimal-filter { box-shadow: none; }
.workspace-search-field .form-control { background: #f4f6f5; }
.workspace-filter-panel { background: #fafbfa; }
.workspace-active-filters button { border-color: var(--workspace-border); color: #53605c; }
.workspace-results-sort { background: #eef1ef; color: #596560 !important; }
.workspace-lead-card.provider-minimal-card.provider-opportunity-card {
  border-radius: .82rem;
  box-shadow: none;
}
.workspace-lead-card.provider-opportunity-card:hover {
  transform: none;
  border-color: var(--workspace-border-strong);
  box-shadow: var(--workspace-shadow-hover);
}
.workspace-lead-card.is-marketplace,
.workspace-lead-card.is-unlocked { border-top: 1px solid var(--workspace-border); }
.workspace-lead-card .provider-priority-badge,
.provider-priority-badge.is-high,
.provider-priority-badge.is-medium,
.provider-priority-badge.is-low,
.provider-priority-badge.is-not_assessed {
  border-color: #dde3e0;
  background: #f4f6f5;
  color: #53605c;
}
.provider-priority-badge.is-high { color: var(--workspace-primary-hover); }
.workspace-card-facts > div {
  border-color: #e8ecea;
  background: #fafbfa;
}
.workspace-lead-signals > span {
  border-color: #e2e7e4;
  background: #ffffff;
  color: #5d6864;
}
.workspace-lead-signals > span.is-confirmed {
  border-color: #c5e1d5;
  background: var(--workspace-success-soft);
  color: var(--workspace-success);
}
.workspace-lead-signals > span.is-overdue {
  border-color: #ecd7a6;
  background: var(--workspace-warning-soft);
  color: var(--workspace-warning);
}
.workspace-lead-card-footer.provider-minimal-card-action { background: #fafbfa; }

/* Detail pages: replace dark hero with a simple information card */
.workspace-detail-hero {
  border: 1px solid var(--workspace-border);
  background: #ffffff;
  color: var(--workspace-text);
  box-shadow: var(--workspace-shadow);
}
.workspace-detail-hero .card-header { border-color: var(--workspace-border) !important; background: #ffffff; }
.workspace-detail-hero h3 { color: var(--workspace-text); }
.workspace-detail-hero .text-muted { color: var(--workspace-muted) !important; }
.workspace-detail-hero .portal-price-box {
  border-color: var(--workspace-border);
  background: var(--workspace-soft);
}
.workspace-detail-hero .portal-price-box span,
.workspace-detail-hero .portal-price-box small { color: var(--workspace-muted); }
.workspace-detail-hero .portal-facts {
  border: 1px solid var(--workspace-border);
  background: #fafbfa;
}
.workspace-detail-hero .portal-facts > div { border-color: var(--workspace-border); background: transparent; }
.workspace-detail-hero .portal-facts span { color: var(--workspace-muted); }
.workspace-detail-hero .portal-facts strong { color: var(--workspace-text); }
.workspace-outcome-panel.portal-outcome-card { border-top: 1px solid var(--workspace-border); }
.portal-outcome-radio-grid label:hover,
.portal-outcome-radio-grid label.selected {
  border-color: #bad8cc;
  box-shadow: 0 0 0 .15rem rgba(20, 122, 98, .08);
}
.workspace-signal-strip.portal-marketplace-trust { box-shadow: none; }

/* Credits and plans */
.provider-credit-overview-card,
.provider-plan-card { box-shadow: none !important; }
.provider-plan-card:hover { transform: none !important; box-shadow: var(--workspace-shadow) !important; }
.provider-plan-card.is-popular,
.provider-plan-card.is-selected { border-color: #bfd9cf !important; }
.provider-plan-popular,
.provider-plan-selected { background: var(--workspace-primary-soft) !important; color: var(--workspace-primary-hover) !important; }

/* Status colours remain meaningful only */
.provider-outcome-chip.is-success,
.is-success { color: var(--workspace-success) !important; }
.provider-outcome-chip.is-danger,
.is-danger { color: var(--workspace-danger) !important; }
.provider-outcome-chip.is-warning,
.is-warning { color: var(--workspace-warning) !important; }
.provider-outcome-chip.is-neutral,
.provider-outcome-chip.is-pending { color: #5d6864 !important; }

/* Calm notifications and mobile navigation */
.portal-pending-banner,
.portal-location-required { box-shadow: none; }
.portal-reminder-backdrop { background: rgba(27, 36, 32, .4); }
.portal-reminder-dialog { border: 1px solid var(--workspace-border); box-shadow: 0 18px 50px rgba(24, 39, 33, .18); }
.workspace-mobile-nav.portal-mobile-nav {
  border-top-color: var(--workspace-border);
  background: rgba(255,255,255,.98);
  box-shadow: 0 -2px 10px rgba(24,39,33,.06);
}
.workspace-mobile-nav a { color: #737e79; }
.workspace-mobile-nav a.active { color: var(--workspace-primary); }

@media (max-width: 767.98px) {
  .workspace-welcome-card { padding: 1.1rem; }
  .workspace-welcome-balance { padding: .8rem .9rem; }
  .workspace-lead-card.provider-minimal-card.provider-opportunity-card { border-radius: .72rem; }
}

/* =========================================================
   Findoly Lightweight Theme System · 10 neutral style choices
   All themes remain light. They vary accent, spacing, corners and
   interaction treatment without changing functional status colours.
   ========================================================= */
:root {
  --theme-card-radius: .78rem;
  --theme-control-radius: .56rem;
  --theme-nav-radius: .52rem;
  --theme-card-shadow: 0 1px 2px rgba(24, 39, 33, .035);
  --theme-card-shadow-hover: 0 4px 16px rgba(24, 39, 33, .07);
  --theme-sidebar-active-width: 3px;
  --theme-label-spacing: .075em;
  --theme-surface-tint: #fafbfa;
}

html[data-portal-theme="network-blue"] {
  --portal-accent: #0a66c2;
  --portal-accent-dark: #084f96;
  --portal-accent-rgb: 10, 102, 194;
  --portal-accent-soft: #edf5fc;
  --portal-page: #f4f7fa;
  --workspace-primary: #0a66c2;
  --workspace-primary-hover: #084f96;
  --workspace-primary-soft: #edf5fc;
  --workspace-bg: #f4f7fa;
  --workspace-soft: #f7f9fb;
  --workspace-border: #dde4ea;
  --workspace-border-strong: #c9d3dd;
  --workspace-text: #1d2733;
  --workspace-muted: #66737f;
  --theme-card-radius: .48rem;
  --theme-control-radius: .42rem;
  --theme-nav-radius: .38rem;
  --theme-card-shadow: 0 1px 2px rgba(28, 48, 66, .035);
  --theme-card-shadow-hover: 0 3px 12px rgba(28, 48, 66, .075);
  --theme-surface-tint: #f7f9fb;
}

html[data-portal-theme="social-sky"] {
  --portal-accent: #1877f2;
  --portal-accent-dark: #0f5fc7;
  --portal-accent-rgb: 24, 119, 242;
  --portal-accent-soft: #edf4ff;
  --portal-page: #f3f5f8;
  --workspace-primary: #1877f2;
  --workspace-primary-hover: #0f5fc7;
  --workspace-primary-soft: #edf4ff;
  --workspace-bg: #f3f5f8;
  --workspace-soft: #f7f9fc;
  --workspace-border: #dfe4eb;
  --workspace-border-strong: #cbd3dd;
  --workspace-text: #1c2530;
  --workspace-muted: #687482;
  --theme-card-radius: .9rem;
  --theme-control-radius: .75rem;
  --theme-nav-radius: .7rem;
  --theme-card-shadow: 0 1px 3px rgba(31, 42, 55, .045);
  --theme-card-shadow-hover: 0 4px 14px rgba(31, 42, 55, .075);
  --theme-surface-tint: #f8fafc;
}

html[data-portal-theme="calm-chat"] {
  --portal-accent: #147a62;
  --portal-accent-dark: #10654f;
  --portal-accent-rgb: 20, 122, 98;
  --portal-accent-soft: #edf7f3;
  --portal-page: #f5f7f6;
  --workspace-primary: #147a62;
  --workspace-primary-hover: #10654f;
  --workspace-primary-soft: #edf7f3;
  --workspace-bg: #f5f7f6;
  --workspace-soft: #f8faf9;
  --workspace-border: #e2e7e4;
  --workspace-border-strong: #d2d9d5;
  --workspace-text: #202724;
  --workspace-muted: #66716d;
  --theme-card-radius: .82rem;
  --theme-control-radius: .62rem;
  --theme-nav-radius: .58rem;
  --theme-card-shadow: 0 1px 2px rgba(24, 39, 33, .035);
  --theme-card-shadow-hover: 0 3px 12px rgba(24, 39, 33, .065);
  --theme-surface-tint: #fafbfa;
}

html[data-portal-theme="creative-mint"] {
  --portal-accent: #159b61;
  --portal-accent-dark: #107b4d;
  --portal-accent-rgb: 21, 155, 97;
  --portal-accent-soft: #ecf8f2;
  --portal-page: #f5f8f6;
  --workspace-primary: #159b61;
  --workspace-primary-hover: #107b4d;
  --workspace-primary-soft: #ecf8f2;
  --workspace-bg: #f5f8f6;
  --workspace-soft: #f8fbf9;
  --workspace-border: #dfe8e3;
  --workspace-border-strong: #cad9d1;
  --workspace-text: #1f2a25;
  --workspace-muted: #66736d;
  --theme-card-radius: .42rem;
  --theme-control-radius: .38rem;
  --theme-nav-radius: .36rem;
  --theme-card-shadow: none;
  --theme-card-shadow-hover: 0 3px 10px rgba(24, 52, 38, .06);
  --theme-surface-tint: #f8fbf9;
}

html[data-portal-theme="talent-green"] {
  --portal-accent: #2f8f2f;
  --portal-accent-dark: #247225;
  --portal-accent-rgb: 47, 143, 47;
  --portal-accent-soft: #eff8ed;
  --portal-page: #f5f8f4;
  --workspace-primary: #2f8f2f;
  --workspace-primary-hover: #247225;
  --workspace-primary-soft: #eff8ed;
  --workspace-bg: #f5f8f4;
  --workspace-soft: #f8faf7;
  --workspace-border: #dfe7dc;
  --workspace-border-strong: #cad7c6;
  --workspace-text: #222a21;
  --workspace-muted: #697167;
  --theme-card-radius: .7rem;
  --theme-control-radius: .52rem;
  --theme-nav-radius: .52rem;
  --theme-card-shadow: 0 1px 2px rgba(34, 53, 31, .035);
  --theme-card-shadow-hover: 0 4px 14px rgba(34, 53, 31, .065);
  --theme-surface-tint: #f8faf7;
}

html[data-portal-theme="trade-orange"] {
  --portal-accent: #d96b20;
  --portal-accent-dark: #b45517;
  --portal-accent-rgb: 217, 107, 32;
  --portal-accent-soft: #fff3e9;
  --portal-page: #f8f6f3;
  --workspace-primary: #d96b20;
  --workspace-primary-hover: #b45517;
  --workspace-primary-soft: #fff3e9;
  --workspace-bg: #f8f6f3;
  --workspace-soft: #fbfaf8;
  --workspace-border: #e7e1da;
  --workspace-border-strong: #d7cec4;
  --workspace-text: #2d2925;
  --workspace-muted: #746c64;
  --theme-card-radius: .5rem;
  --theme-control-radius: .42rem;
  --theme-nav-radius: .4rem;
  --theme-card-shadow: none;
  --theme-card-shadow-hover: 0 3px 12px rgba(70, 48, 31, .065);
  --theme-surface-tint: #fbfaf8;
}

html[data-portal-theme="local-coral"] {
  --portal-accent: #d9574f;
  --portal-accent-dark: #b9443d;
  --portal-accent-rgb: 217, 87, 79;
  --portal-accent-soft: #fff0ef;
  --portal-page: #f8f5f4;
  --workspace-primary: #d9574f;
  --workspace-primary-hover: #b9443d;
  --workspace-primary-soft: #fff0ef;
  --workspace-bg: #f8f5f4;
  --workspace-soft: #fbf9f8;
  --workspace-border: #e8dfdd;
  --workspace-border-strong: #d8cbc8;
  --workspace-text: #2d2827;
  --workspace-muted: #746b69;
  --theme-card-radius: .68rem;
  --theme-control-radius: .56rem;
  --theme-nav-radius: .5rem;
  --theme-card-shadow: 0 1px 2px rgba(66, 36, 33, .03);
  --theme-card-shadow-hover: 0 4px 14px rgba(66, 36, 33, .065);
  --theme-surface-tint: #fbf9f8;
}

html[data-portal-theme="care-teal"] {
  --portal-accent: #087f8c;
  --portal-accent-dark: #066873;
  --portal-accent-rgb: 8, 127, 140;
  --portal-accent-soft: #eaf7f8;
  --portal-page: #f3f8f8;
  --workspace-primary: #087f8c;
  --workspace-primary-hover: #066873;
  --workspace-primary-soft: #eaf7f8;
  --workspace-bg: #f3f8f8;
  --workspace-soft: #f7fbfb;
  --workspace-border: #dce9e9;
  --workspace-border-strong: #c6dada;
  --workspace-text: #1e292a;
  --workspace-muted: #647476;
  --theme-card-radius: .95rem;
  --theme-control-radius: .72rem;
  --theme-nav-radius: .7rem;
  --theme-card-shadow: 0 1px 3px rgba(18, 52, 56, .035);
  --theme-card-shadow-hover: 0 4px 15px rgba(18, 52, 56, .065);
  --theme-surface-tint: #f7fbfb;
}

html[data-portal-theme="clear-neutral"] {
  --portal-accent: #477064;
  --portal-accent-dark: #38594f;
  --portal-accent-rgb: 71, 112, 100;
  --portal-accent-soft: #eef3f1;
  --portal-page: #f6f6f5;
  --workspace-primary: #477064;
  --workspace-primary-hover: #38594f;
  --workspace-primary-soft: #eef3f1;
  --workspace-bg: #f6f6f5;
  --workspace-soft: #fafafa;
  --workspace-border: #e2e2df;
  --workspace-border-strong: #d1d1cd;
  --workspace-text: #242624;
  --workspace-muted: #6d706d;
  --theme-card-radius: .62rem;
  --theme-control-radius: .48rem;
  --theme-nav-radius: .46rem;
  --theme-card-shadow: none;
  --theme-card-shadow-hover: 0 3px 12px rgba(34, 38, 35, .055);
  --theme-surface-tint: #fafafa;
}

html[data-portal-theme="warm-sand"] {
  --portal-accent: #a7623c;
  --portal-accent-dark: #885033;
  --portal-accent-rgb: 167, 98, 60;
  --portal-accent-soft: #f8eee7;
  --portal-page: #faf7f2;
  --workspace-primary: #a7623c;
  --workspace-primary-hover: #885033;
  --workspace-primary-soft: #f8eee7;
  --workspace-bg: #faf7f2;
  --workspace-soft: #fcfaf7;
  --workspace-border: #e8e0d6;
  --workspace-border-strong: #d8ccbd;
  --workspace-text: #2e2924;
  --workspace-muted: #766d64;
  --theme-card-radius: 1rem;
  --theme-control-radius: .74rem;
  --theme-nav-radius: .72rem;
  --theme-card-shadow: 0 1px 3px rgba(57, 42, 31, .035);
  --theme-card-shadow-hover: 0 4px 15px rgba(57, 42, 31, .065);
  --theme-surface-tint: #fcfaf7;
}

/* Theme-aware shapes and light surfaces */
body { background: var(--workspace-bg); }
.portal-card,
.workspace-priority-panel,
.workspace-lead-card.provider-minimal-card.provider-opportunity-card,
.workspace-welcome-card,
.workspace-alert-card,
.workspace-metric-card.provider-dashboard-stat {
  border-radius: var(--theme-card-radius);
  box-shadow: var(--theme-card-shadow);
}
.portal-card:hover,
.workspace-lead-card.provider-opportunity-card:hover { box-shadow: var(--theme-card-shadow-hover); }
.btn,
.form-control,
.form-select,
.input-group-text,
.workspace-filter-toggle,
.workspace-marketplace-shortcut,
.workspace-credit-chip { border-radius: var(--theme-control-radius); }
.workspace-sidebar-nav a,
.workspace-primary-nav-action,
.workspace-sidebar-footer a,
.workspace-sidebar-footer button { border-radius: var(--theme-nav-radius); }
.workspace-sidebar-nav a.active { box-shadow: inset var(--theme-sidebar-active-width) 0 0 var(--workspace-primary); }
.workspace-card-facts > div,
.workspace-filter-panel,
.workspace-lead-card-footer.provider-minimal-card-action,
.workspace-sidebar-account,
.workspace-sidebar-status { background: var(--theme-surface-tint); }

/* Stable sticky layering: lead cards never render over or under the header. */
html { scroll-padding-top: calc(var(--portal-navbar-height) + 1rem); }
.workspace-topbar.portal-navbar {
  position: sticky;
  top: 0;
  z-index: 1100;
  isolation: isolate;
}
.workspace-page-shell,
.content-wrapper,
.content-inner { position: relative; isolation: isolate; }
.workspace-content.content { position: relative; z-index: 1; }
.workspace-lead-command {
  position: sticky;
  top: calc(var(--portal-navbar-height) + .45rem);
  z-index: 1020;
  isolation: isolate;
  margin: -.45rem -.35rem .85rem;
  padding: .45rem .35rem .75rem;
  background: var(--workspace-bg);
}
.workspace-lead-command::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-bottom: 1px solid rgba(0, 0, 0, .025);
  background: var(--workspace-bg);
}
.workspace-lead-grid,
.workspace-results-bar,
.workspace-active-filters,
.workspace-pagination { position: relative; z-index: 1; }

/* Compact marketplace dashboard strip. */
.workspace-market-dashboard {
  display: grid;
  grid-template-columns: minmax(14rem, 1fr) auto;
  gap: 1rem;
  align-items: stretch;
  border: 1px solid var(--workspace-border);
  border-radius: var(--theme-card-radius);
  background: #fff;
  box-shadow: var(--theme-card-shadow);
}
.workspace-market-dashboard-copy {
  display: grid;
  align-content: center;
  min-width: 0;
  padding: .85rem 1rem;
}
.workspace-market-dashboard-copy > strong {
  margin-top: .18rem;
  color: var(--workspace-text);
  font-size: 1rem;
  line-height: 1.25;
}
.workspace-market-dashboard-copy > small {
  margin-top: .2rem;
  color: var(--workspace-muted);
  font-size: .72rem;
  line-height: 1.4;
}
.workspace-market-dashboard-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(6.5rem, auto));
  border-left: 1px solid var(--workspace-border);
}
.workspace-market-dashboard-metrics > div {
  display: grid;
  align-content: center;
  min-width: 0;
  padding: .75rem .9rem;
  border-left: 1px solid var(--workspace-border);
}
.workspace-market-dashboard-metrics > div:first-child { border-left: 0; }
.workspace-market-dashboard-metrics strong {
  margin-top: .18rem;
  color: var(--workspace-text);
  font-size: .92rem;
  line-height: 1.25;
  white-space: nowrap;
}
.workspace-compact-label,
.workspace-nav-label,
.workspace-eyebrow,
.provider-filter-control > span,
.workspace-card-facts small,
.workspace-lead-card-footer small,
.portal-table thead th,
.provider-card-price-block small {
  color: var(--workspace-muted);
  font-size: .62rem;
  font-weight: 760;
  letter-spacing: var(--theme-label-spacing);
  line-height: 1.2;
  text-transform: uppercase;
}
.workspace-filter-heading strong,
.workspace-results-bar strong,
.workspace-lead-tabs strong { letter-spacing: -.01em; }

/* Ten-theme picker remains compact inside the account menu. */
.portal-profile-menu { width: min(23rem, calc(100vw - 1.5rem)); }
.portal-inline-themes-grid {
  max-height: min(30rem, calc(100vh - var(--portal-navbar-height) - 10rem));
  overflow-y: auto;
  overscroll-behavior: contain;
}
.portal-inline-theme { grid-template-columns: 2.8rem minmax(0, 1fr) 1rem; }
.portal-inline-theme-preview { width: 2.8rem; }
.portal-theme-preview-network i:nth-child(1) { background: #0a66c2; }
.portal-theme-preview-network i:nth-child(2) { background: #edf5fc; }
.portal-theme-preview-network i:nth-child(3) { background: #ffffff; }
.portal-theme-preview-network i:nth-child(4) { background: #1d2733; }
.portal-theme-preview-social i:nth-child(1) { background: #1877f2; }
.portal-theme-preview-social i:nth-child(2) { background: #edf4ff; }
.portal-theme-preview-social i:nth-child(3) { background: #ffffff; }
.portal-theme-preview-social i:nth-child(4) { background: #1c2530; }
.portal-theme-preview-chat i:nth-child(1) { background: #147a62; }
.portal-theme-preview-chat i:nth-child(2) { background: #edf7f3; }
.portal-theme-preview-chat i:nth-child(3) { background: #ffffff; }
.portal-theme-preview-chat i:nth-child(4) { background: #202724; }
.portal-theme-preview-creative i:nth-child(1) { background: #159b61; }
.portal-theme-preview-creative i:nth-child(2) { background: #ecf8f2; }
.portal-theme-preview-creative i:nth-child(3) { background: #ffffff; }
.portal-theme-preview-creative i:nth-child(4) { background: #1f2a25; }
.portal-theme-preview-talent i:nth-child(1) { background: #2f8f2f; }
.portal-theme-preview-talent i:nth-child(2) { background: #eff8ed; }
.portal-theme-preview-talent i:nth-child(3) { background: #ffffff; }
.portal-theme-preview-talent i:nth-child(4) { background: #222a21; }
.portal-theme-preview-trade i:nth-child(1) { background: #d96b20; }
.portal-theme-preview-trade i:nth-child(2) { background: #fff3e9; }
.portal-theme-preview-trade i:nth-child(3) { background: #ffffff; }
.portal-theme-preview-trade i:nth-child(4) { background: #2d2925; }
.portal-theme-preview-local i:nth-child(1) { background: #d9574f; }
.portal-theme-preview-local i:nth-child(2) { background: #fff0ef; }
.portal-theme-preview-local i:nth-child(3) { background: #ffffff; }
.portal-theme-preview-local i:nth-child(4) { background: #2d2827; }
.portal-theme-preview-care i:nth-child(1) { background: #087f8c; }
.portal-theme-preview-care i:nth-child(2) { background: #eaf7f8; }
.portal-theme-preview-care i:nth-child(3) { background: #ffffff; }
.portal-theme-preview-care i:nth-child(4) { background: #1e292a; }
.portal-theme-preview-clear i:nth-child(1) { background: #477064; }
.portal-theme-preview-clear i:nth-child(2) { background: #eef3f1; }
.portal-theme-preview-clear i:nth-child(3) { background: #ffffff; }
.portal-theme-preview-clear i:nth-child(4) { background: #242624; }
.portal-theme-preview-warm i:nth-child(1) { background: #a7623c; }
.portal-theme-preview-warm i:nth-child(2) { background: #f8eee7; }
.portal-theme-preview-warm i:nth-child(3) { background: #ffffff; }
.portal-theme-preview-warm i:nth-child(4) { background: #2e2924; }

@media (max-width: 991.98px) {
  .workspace-lead-command {
    top: calc(var(--portal-navbar-height) + .25rem);
    margin-left: -.15rem;
    margin-right: -.15rem;
    padding-left: .15rem;
    padding-right: .15rem;
  }
  .workspace-market-dashboard { grid-template-columns: 1fr; }
  .workspace-market-dashboard-metrics { border-top: 1px solid var(--workspace-border); border-left: 0; }
}

@media (max-width: 575.98px) {
  .workspace-lead-command {
    position: relative;
    top: auto;
    z-index: 1;
    margin: 0 0 .75rem;
    padding: 0;
  }
  .workspace-lead-command::before { display: none; }
  .workspace-market-dashboard-copy { padding: .75rem .8rem; }
  .workspace-market-dashboard-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .workspace-market-dashboard-metrics > div { padding: .65rem .55rem; }
  .workspace-market-dashboard-metrics strong { overflow: hidden; font-size: .78rem; text-overflow: ellipsis; }
  .portal-profile-menu { width: calc(100vw - 1.1rem); }
  .portal-inline-theme { grid-template-columns: 2.5rem minmax(0, 1fr) 1rem; }
  .portal-inline-theme-preview { width: 2.5rem; }
}

/* =========================================================
   Full-portal lightweight themes · shell, content and typography
   Each saved appearance now applies to every provider page while
   preserving the fixed semantic colours for success, warning and error.
   ========================================================= */
:root {
  --theme-font-body: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --theme-font-heading: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --theme-body-weight: 450;
  --theme-heading-weight: 760;
  --theme-body-letter-spacing: -.006em;
  --theme-heading-letter-spacing: -.022em;
  --theme-header-bg: rgba(255, 255, 255, .98);
  --theme-sidebar-bg: #ffffff;
  --theme-sidebar-account-bg: var(--theme-surface-tint);
  --theme-card-bg: #ffffff;
  --theme-control-bg: #ffffff;
  --theme-table-head-bg: var(--theme-surface-tint);
  --theme-footer-bg: #ffffff;
  --theme-mobile-nav-bg: rgba(255, 255, 255, .98);
  --theme-menu-bg: #ffffff;
  --theme-section-bg: var(--theme-surface-tint);
  --theme-divider: var(--workspace-border);
  --theme-heading-case: none;
}

html[data-portal-theme="network-blue"] {
  --theme-font-body: "Segoe UI", Inter, Arial, sans-serif;
  --theme-font-heading: "Segoe UI", Inter, Arial, sans-serif;
  --theme-body-weight: 450;
  --theme-heading-weight: 700;
  --theme-body-letter-spacing: 0;
  --theme-heading-letter-spacing: -.018em;
  --theme-header-bg: rgba(247, 250, 255, .98);
  --theme-sidebar-bg: #f4f8fc;
  --theme-sidebar-account-bg: #edf4fb;
  --theme-card-bg: #ffffff;
  --theme-control-bg: #fbfdff;
  --theme-table-head-bg: #f3f7fb;
  --theme-footer-bg: #f8fbfe;
  --theme-mobile-nav-bg: rgba(247, 250, 255, .98);
  --theme-menu-bg: #ffffff;
  --theme-section-bg: #f7fafe;
}

html[data-portal-theme="social-sky"] {
  --theme-font-body: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --theme-font-heading: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --theme-body-weight: 450;
  --theme-heading-weight: 720;
  --theme-body-letter-spacing: -.004em;
  --theme-heading-letter-spacing: -.025em;
  --theme-header-bg: rgba(247, 249, 255, .98);
  --theme-sidebar-bg: #f0f5ff;
  --theme-sidebar-account-bg: #eaf2ff;
  --theme-card-bg: #ffffff;
  --theme-control-bg: #fbfcff;
  --theme-table-head-bg: #f2f6fd;
  --theme-footer-bg: #f7f9fd;
  --theme-mobile-nav-bg: rgba(247, 249, 255, .98);
  --theme-menu-bg: #ffffff;
  --theme-section-bg: #f7f9fd;
}

html[data-portal-theme="calm-chat"] {
  --theme-font-body: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --theme-font-heading: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --theme-body-weight: 450;
  --theme-heading-weight: 720;
  --theme-body-letter-spacing: -.006em;
  --theme-heading-letter-spacing: -.02em;
  --theme-header-bg: rgba(248, 252, 250, .98);
  --theme-sidebar-bg: #f1f8f5;
  --theme-sidebar-account-bg: #eaf5f0;
  --theme-card-bg: #ffffff;
  --theme-control-bg: #fbfdfc;
  --theme-table-head-bg: #f3f8f6;
  --theme-footer-bg: #f8fbf9;
  --theme-mobile-nav-bg: rgba(248, 252, 250, .98);
  --theme-menu-bg: #ffffff;
  --theme-section-bg: #f7faf8;
}

html[data-portal-theme="creative-mint"] {
  --theme-font-body: "Avenir Next", Avenir, "Segoe UI", Arial, sans-serif;
  --theme-font-heading: "Avenir Next", Avenir, "Segoe UI", Arial, sans-serif;
  --theme-body-weight: 450;
  --theme-heading-weight: 700;
  --theme-body-letter-spacing: -.003em;
  --theme-heading-letter-spacing: -.016em;
  --theme-header-bg: rgba(247, 253, 250, .98);
  --theme-sidebar-bg: #eef9f3;
  --theme-sidebar-account-bg: #e6f5ed;
  --theme-card-bg: #ffffff;
  --theme-control-bg: #fbfefc;
  --theme-table-head-bg: #f2faf6;
  --theme-footer-bg: #f7fcf9;
  --theme-mobile-nav-bg: rgba(247, 253, 250, .98);
  --theme-menu-bg: #ffffff;
  --theme-section-bg: #f6fbf8;
}

html[data-portal-theme="talent-green"] {
  --theme-font-body: "Segoe UI", Inter, Arial, sans-serif;
  --theme-font-heading: "Segoe UI", Inter, Arial, sans-serif;
  --theme-body-weight: 450;
  --theme-heading-weight: 680;
  --theme-body-letter-spacing: 0;
  --theme-heading-letter-spacing: -.014em;
  --theme-header-bg: rgba(249, 252, 247, .98);
  --theme-sidebar-bg: #f1f8ef;
  --theme-sidebar-account-bg: #eaf4e7;
  --theme-card-bg: #ffffff;
  --theme-control-bg: #fcfefb;
  --theme-table-head-bg: #f4f8f2;
  --theme-footer-bg: #f9fbf8;
  --theme-mobile-nav-bg: rgba(249, 252, 247, .98);
  --theme-menu-bg: #ffffff;
  --theme-section-bg: #f8faf7;
}

html[data-portal-theme="trade-orange"] {
  --theme-font-body: Arial, "Helvetica Neue", sans-serif;
  --theme-font-heading: Arial, "Helvetica Neue", sans-serif;
  --theme-body-weight: 450;
  --theme-heading-weight: 700;
  --theme-body-letter-spacing: .002em;
  --theme-heading-letter-spacing: -.01em;
  --theme-header-bg: rgba(255, 251, 247, .98);
  --theme-sidebar-bg: #fff5eb;
  --theme-sidebar-account-bg: #ffeddc;
  --theme-card-bg: #ffffff;
  --theme-control-bg: #fffdfb;
  --theme-table-head-bg: #fbf6f0;
  --theme-footer-bg: #fffaf5;
  --theme-mobile-nav-bg: rgba(255, 251, 247, .98);
  --theme-menu-bg: #ffffff;
  --theme-section-bg: #fbf8f4;
}

html[data-portal-theme="local-coral"] {
  --theme-font-body: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --theme-font-heading: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --theme-body-weight: 450;
  --theme-heading-weight: 720;
  --theme-body-letter-spacing: -.002em;
  --theme-heading-letter-spacing: -.022em;
  --theme-header-bg: rgba(255, 249, 248, .98);
  --theme-sidebar-bg: #fff1ef;
  --theme-sidebar-account-bg: #ffe9e6;
  --theme-card-bg: #ffffff;
  --theme-control-bg: #fffdfc;
  --theme-table-head-bg: #fbf4f3;
  --theme-footer-bg: #fff9f8;
  --theme-mobile-nav-bg: rgba(255, 249, 248, .98);
  --theme-menu-bg: #ffffff;
  --theme-section-bg: #fbf8f7;
}

html[data-portal-theme="care-teal"] {
  --theme-font-body: "Segoe UI", Inter, Arial, sans-serif;
  --theme-font-heading: "Segoe UI", Inter, Arial, sans-serif;
  --theme-body-weight: 450;
  --theme-heading-weight: 680;
  --theme-body-letter-spacing: 0;
  --theme-heading-letter-spacing: -.014em;
  --theme-header-bg: rgba(247, 253, 253, .98);
  --theme-sidebar-bg: #edf8f8;
  --theme-sidebar-account-bg: #e4f3f4;
  --theme-card-bg: #ffffff;
  --theme-control-bg: #fbfefe;
  --theme-table-head-bg: #f1f9f9;
  --theme-footer-bg: #f7fcfc;
  --theme-mobile-nav-bg: rgba(247, 253, 253, .98);
  --theme-menu-bg: #ffffff;
  --theme-section-bg: #f6fbfb;
}

html[data-portal-theme="clear-neutral"] {
  --theme-font-body: ui-sans-serif, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --theme-font-heading: ui-sans-serif, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --theme-body-weight: 430;
  --theme-heading-weight: 650;
  --theme-body-letter-spacing: -.008em;
  --theme-heading-letter-spacing: -.025em;
  --theme-header-bg: rgba(250, 250, 249, .98);
  --theme-sidebar-bg: #f2f2f0;
  --theme-sidebar-account-bg: #ebebe8;
  --theme-card-bg: #ffffff;
  --theme-control-bg: #fcfcfb;
  --theme-table-head-bg: #f4f4f2;
  --theme-footer-bg: #fafaf9;
  --theme-mobile-nav-bg: rgba(250, 250, 249, .98);
  --theme-menu-bg: #ffffff;
  --theme-section-bg: #fafafa;
}

html[data-portal-theme="warm-sand"] {
  --theme-font-body: "Avenir Next", Avenir, "Segoe UI", sans-serif;
  --theme-font-heading: Georgia, "Times New Roman", serif;
  --theme-body-weight: 430;
  --theme-heading-weight: 600;
  --theme-body-letter-spacing: 0;
  --theme-heading-letter-spacing: -.018em;
  --theme-header-bg: rgba(255, 251, 245, .98);
  --theme-sidebar-bg: #f8f0e6;
  --theme-sidebar-account-bg: #f1e6d8;
  --theme-card-bg: #fffefd;
  --theme-control-bg: #fffdfa;
  --theme-table-head-bg: #f9f4ed;
  --theme-footer-bg: #fffaf4;
  --theme-mobile-nav-bg: rgba(255, 251, 245, .98);
  --theme-menu-bg: #fffefd;
  --theme-section-bg: #fcf8f2;
}

/* Typography is a first-class part of every appearance. */
body,
button,
input,
select,
textarea,
.form-control,
.form-select,
.btn,
.dropdown-menu,
.portal-table {
  font-family: var(--theme-font-body);
  font-weight: var(--theme-body-weight);
  letter-spacing: var(--theme-body-letter-spacing);
}

h1, h2, h3, h4, h5, h6,
.portal-page-header .page-title,
.workspace-page-context strong,
.workspace-welcome-copy h2,
.workspace-lead-title-row h2,
.workspace-market-dashboard-copy > strong,
.provider-minimal-title-row h2,
.provider-plans-intro h1,
.provider-credit-overview-value,
.portal-plan-price,
.portal-profile-hero h2,
.portal-login-brand h1,
.portal-error-card h1 {
  font-family: var(--theme-font-heading);
  font-weight: var(--theme-heading-weight);
  letter-spacing: var(--theme-heading-letter-spacing);
  text-transform: var(--theme-heading-case);
}

/* Full shell theming. */
body,
.workspace-page-shell,
.content-wrapper,
.content-inner,
.workspace-content.content,
.provider-plans-content,
.portal-login-body,
.portal-error-body {
  background: var(--workspace-bg);
  color: var(--workspace-text);
}

.workspace-topbar.portal-navbar,
.portal-navbar,
.portal-page-header {
  background: var(--theme-header-bg);
  color: var(--workspace-text);
  border-color: var(--workspace-border);
}

.workspace-sidebar.portal-sidebar,
.portal-sidebar {
  background: var(--theme-sidebar-bg);
  color: var(--workspace-text);
  border-color: var(--workspace-border);
}

.workspace-sidebar-account,
.portal-sidebar-account {
  background: var(--theme-sidebar-account-bg);
  border-color: var(--workspace-border);
}

.workspace-sidebar-nav a,
.workspace-sidebar-footer a,
.workspace-sidebar-footer button,
.portal-sidebar .nav-link {
  color: var(--workspace-muted);
}

.workspace-sidebar-nav a:hover,
.workspace-sidebar-footer a:hover,
.workspace-sidebar-footer button:hover,
.portal-sidebar .nav-link:hover {
  background: var(--theme-section-bg);
  color: var(--workspace-text);
}

.workspace-sidebar-nav a.active,
.portal-sidebar .nav-link.active {
  background: var(--workspace-primary-soft);
  color: var(--workspace-primary-hover);
}

.workspace-topbar .workspace-marketplace-shortcut,
.workspace-topbar .workspace-icon-button,
.workspace-topbar .workspace-credit-chip,
.workspace-topbar .workspace-user-button:hover,
.workspace-topbar .workspace-user-button[aria-expanded="true"] {
  background: var(--theme-control-bg);
  border-color: var(--workspace-border);
}

.workspace-profile-menu,
.portal-profile-menu,
.dropdown-menu,
.portal-inline-themes,
.portal-reminder-dialog,
.modal-content,
.offcanvas,
.popover {
  background: var(--theme-menu-bg);
  color: var(--workspace-text);
  border-color: var(--workspace-border);
}

.portal-inline-theme:hover,
.portal-inline-theme.active,
.dropdown-item:hover,
.dropdown-item:focus {
  background: var(--workspace-primary-soft);
  color: var(--workspace-primary-hover);
}

/* Full body and component theming. */
.portal-card,
.card,
.workspace-welcome-card,
.workspace-alert-card,
.workspace-metric-card.provider-dashboard-stat,
.workspace-priority-panel,
.workspace-panel,
.workspace-detail-section,
.workspace-contact-panel,
.workspace-access-panel,
.workspace-detail-hero,
.workspace-lead-card.provider-minimal-card.provider-opportunity-card,
.workspace-market-dashboard,
.workspace-filter-card,
.provider-minimal-filter,
.provider-credit-overview-card,
.provider-current-plan-card,
.provider-plan-card,
.portal-login-card,
.portal-error-card,
.portal-location-card,
.portal-managed-location,
.portal-outcome-card,
.portal-price-box,
.portal-facts,
.portal-wallet-summary,
.portal-current-plan,
.portal-plan-card {
  background: var(--theme-card-bg);
  color: var(--workspace-text);
  border-color: var(--workspace-border);
}

.card-header,
.card-footer,
.workspace-panel-header,
.workspace-lead-card-footer.provider-minimal-card-action,
.provider-minimal-card-action,
.portal-card .card-header,
.portal-card .card-footer {
  background: var(--theme-card-bg);
  color: var(--workspace-text);
  border-color: var(--workspace-border);
}

.workspace-filter-panel,
.workspace-card-facts > div,
.provider-card-facts > div,
.workspace-welcome-balance,
.workspace-trust-note,
.workspace-results-sort,
.workspace-lead-tabs .provider-tab-count,
.portal-facts,
.portal-managed-location-note,
.portal-login-help,
.portal-direct-payment-breakdown,
.portal-payment-row,
.portal-plan-features,
.portal-location-required,
.portal-pending-banner,
.workspace-market-dashboard-copy,
.workspace-market-dashboard-metrics > div {
  background: var(--theme-section-bg);
  border-color: var(--workspace-border);
}

.form-control,
.form-select,
.input-group-text,
.workspace-search-field .form-control,
.provider-filter-control .form-control,
.provider-filter-control .form-select,
.portal-otp-input {
  background-color: var(--theme-control-bg);
  color: var(--workspace-text);
  border-color: var(--workspace-border-strong);
}

.form-control::placeholder,
.portal-global-search input::placeholder { color: var(--workspace-subtle); }

.form-control:focus,
.form-select:focus,
.portal-otp-input:focus {
  background-color: var(--theme-card-bg);
  border-color: var(--workspace-primary);
  box-shadow: 0 0 0 .2rem rgba(var(--portal-accent-rgb), .11);
}

.portal-table,
.table {
  color: var(--workspace-text);
  --bs-table-bg: transparent;
  --bs-table-color: var(--workspace-text);
  --bs-table-border-color: var(--workspace-border);
  --bs-table-hover-bg: var(--theme-section-bg);
}

.portal-table thead th,
.table thead th {
  background: var(--theme-table-head-bg);
  color: var(--workspace-muted);
  border-color: var(--workspace-border);
}

.portal-table td,
.table td,
.table th { border-color: var(--workspace-border); }

.portal-footer {
  background: var(--theme-footer-bg);
  color: var(--workspace-muted);
  border-top: 1px solid var(--workspace-border);
}

.workspace-mobile-nav.portal-mobile-nav,
.portal-mobile-nav {
  background: var(--theme-mobile-nav-bg);
  border-color: var(--workspace-border);
}

.portal-login-shell,
.portal-login-brand,
.portal-login-card,
.portal-error-card {
  color: var(--workspace-text);
}

.portal-login-logo,
.portal-brand-logo { filter: none; }

/* Keep semantic status colours fixed across all ten appearances. */
.alert-success,
.portal-toast-success,
.provider-outcome-chip.is-success { color: var(--workspace-success); }
.alert-warning,
.portal-toast-warning,
.provider-outcome-chip.is-warning { color: var(--workspace-warning); }
.alert-danger,
.portal-toast-error,
.provider-outcome-chip.is-danger { color: var(--workspace-danger); }

@media (max-width: 991.98px) {
  .workspace-sidebar.portal-sidebar {
    background: var(--theme-sidebar-bg);
  }
  .portal-sidebar-overlay { background: rgba(20, 28, 25, .32); }
}

/* =========================================================
   Three lightweight full-portal themes + navigation/scroll fixes
   ========================================================= */
:root {
  --theme-font-body: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --theme-font-heading: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --theme-body-weight: 450;
  --theme-heading-weight: 720;
  --theme-body-letter-spacing: -.004em;
  --theme-heading-letter-spacing: -.02em;
  --theme-card-radius: .68rem;
  --theme-control-radius: .52rem;
  --theme-nav-radius: .48rem;
  --theme-card-shadow: 0 1px 2px rgba(24, 34, 46, .035);
  --theme-card-shadow-hover: 0 4px 14px rgba(24, 34, 46, .07);
  --theme-header-bg: #ffffff;
  --theme-sidebar-bg: #f7f9fb;
  --theme-sidebar-account-bg: #eef3f8;
  --theme-card-bg: #ffffff;
  --theme-control-bg: #ffffff;
  --theme-table-head-bg: #f5f7f9;
  --theme-footer-bg: #ffffff;
  --theme-mobile-nav-bg: #ffffff;
  --theme-menu-bg: #ffffff;
  --theme-section-bg: #f7f9fb;
}

html[data-portal-theme="professional-blue"] {
  --portal-accent: #0a66c2;
  --portal-accent-dark: #084f96;
  --portal-accent-rgb: 10, 102, 194;
  --portal-accent-soft: #eaf3fb;
  --workspace-primary: #0a66c2;
  --workspace-primary-hover: #084f96;
  --workspace-primary-soft: #eaf3fb;
  --workspace-bg: #f4f6f8;
  --workspace-soft: #f7f9fb;
  --workspace-border: #dde3e9;
  --workspace-border-strong: #cbd4dd;
  --workspace-text: #1f2933;
  --workspace-muted: #687581;
  --workspace-subtle: #89949e;
  --theme-font-body: "Segoe UI", Inter, Arial, sans-serif;
  --theme-font-heading: "Segoe UI", Inter, Arial, sans-serif;
  --theme-heading-weight: 700;
  --theme-card-radius: .5rem;
  --theme-control-radius: .42rem;
  --theme-nav-radius: .4rem;
  --theme-header-bg: #ffffff;
  --theme-sidebar-bg: #f5f8fb;
  --theme-sidebar-account-bg: #edf3f9;
  --theme-section-bg: #f7f9fb;
  --theme-table-head-bg: #f2f6f9;
}

html[data-portal-theme="pure-monochrome"] {
  --portal-accent: #111111;
  --portal-accent-dark: #000000;
  --portal-accent-rgb: 17, 17, 17;
  --portal-accent-soft: #eeeeee;
  --workspace-primary: #111111;
  --workspace-primary-hover: #000000;
  --workspace-primary-soft: #eeeeee;
  --workspace-bg: #f6f6f6;
  --workspace-soft: #fafafa;
  --workspace-border: #dedede;
  --workspace-border-strong: #c8c8c8;
  --workspace-text: #171717;
  --workspace-muted: #666666;
  --workspace-subtle: #8a8a8a;
  --theme-font-body: Inter, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
  --theme-font-heading: Inter, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
  --theme-heading-weight: 680;
  --theme-card-radius: .42rem;
  --theme-control-radius: .35rem;
  --theme-nav-radius: .34rem;
  --theme-card-shadow: none;
  --theme-card-shadow-hover: 0 3px 12px rgba(0, 0, 0, .055);
  --theme-header-bg: #ffffff;
  --theme-sidebar-bg: #ffffff;
  --theme-sidebar-account-bg: #f3f3f3;
  --theme-card-bg: #ffffff;
  --theme-control-bg: #ffffff;
  --theme-section-bg: #f5f5f5;
  --theme-table-head-bg: #f2f2f2;
}

html[data-portal-theme="marketplace-green"] {
  --portal-accent: #178a57;
  --portal-accent-dark: #116d44;
  --portal-accent-rgb: 23, 138, 87;
  --portal-accent-soft: #eaf7f0;
  --workspace-primary: #178a57;
  --workspace-primary-hover: #116d44;
  --workspace-primary-soft: #eaf7f0;
  --workspace-bg: #f5f8f6;
  --workspace-soft: #f8fbf9;
  --workspace-border: #dce6e0;
  --workspace-border-strong: #c8d6ce;
  --workspace-text: #1e2923;
  --workspace-muted: #66736c;
  --workspace-subtle: #87928c;
  --theme-font-body: Arial, "Helvetica Neue", Inter, sans-serif;
  --theme-font-heading: Arial, "Helvetica Neue", Inter, sans-serif;
  --theme-heading-weight: 700;
  --theme-body-letter-spacing: 0;
  --theme-heading-letter-spacing: -.012em;
  --theme-card-radius: .52rem;
  --theme-control-radius: .42rem;
  --theme-nav-radius: .4rem;
  --theme-card-shadow: none;
  --theme-card-shadow-hover: 0 3px 12px rgba(23, 77, 49, .06);
  --theme-header-bg: #ffffff;
  --theme-sidebar-bg: #f2f8f5;
  --theme-sidebar-account-bg: #e9f4ee;
  --theme-card-bg: #ffffff;
  --theme-control-bg: #ffffff;
  --theme-section-bg: #f6faf8;
  --theme-table-head-bg: #f1f7f4;
}

/* New theme previews. */
.portal-theme-preview-professional i:nth-child(1) { background: #0a66c2; }
.portal-theme-preview-professional i:nth-child(2) { background: #eaf3fb; }
.portal-theme-preview-professional i:nth-child(3) { background: #ffffff; }
.portal-theme-preview-professional i:nth-child(4) { background: #1f2933; }
.portal-theme-preview-monochrome i:nth-child(1) { background: #111111; }
.portal-theme-preview-monochrome i:nth-child(2) { background: #eeeeee; }
.portal-theme-preview-monochrome i:nth-child(3) { background: #ffffff; }
.portal-theme-preview-monochrome i:nth-child(4) { background: #666666; }
.portal-theme-preview-marketplace i:nth-child(1) { background: #178a57; }
.portal-theme-preview-marketplace i:nth-child(2) { background: #eaf7f0; }
.portal-theme-preview-marketplace i:nth-child(3) { background: #ffffff; }
.portal-theme-preview-marketplace i:nth-child(4) { background: #1e2923; }

/* Full portal appearance uses the selected theme. */
body,
button,
input,
select,
textarea,
.form-control,
.form-select,
.btn,
.dropdown-menu,
.portal-table {
  font-family: var(--theme-font-body);
  font-weight: var(--theme-body-weight);
  letter-spacing: var(--theme-body-letter-spacing);
}

h1, h2, h3, h4, h5, h6,
.portal-page-header .page-title,
.workspace-page-context strong,
.workspace-lead-title-row h2,
.provider-minimal-title-row h2,
.workspace-market-dashboard-copy > strong {
  font-family: var(--theme-font-heading);
  font-weight: var(--theme-heading-weight);
  letter-spacing: var(--theme-heading-letter-spacing);
}

.workspace-topbar.portal-navbar { background: var(--theme-header-bg); }
.workspace-sidebar.portal-sidebar { background: var(--theme-sidebar-bg); }
.workspace-sidebar-account { background: var(--theme-sidebar-account-bg); }
.portal-profile-menu,
.portal-inline-themes { background: var(--theme-menu-bg); }
.portal-card,
.workspace-lead-card.provider-minimal-card.provider-opportunity-card,
.workspace-market-dashboard,
.workspace-filter-card,
.provider-credit-overview-card,
.provider-current-plan-card,
.provider-plan-card,
.portal-login-card,
.portal-error-card,
.portal-location-card,
.portal-managed-location,
.portal-outcome-card,
.portal-price-box,
.portal-facts,
.portal-wallet-summary,
.portal-current-plan,
.portal-plan-card {
  background: var(--theme-card-bg);
  border-color: var(--workspace-border);
  border-radius: var(--theme-card-radius);
  box-shadow: var(--theme-card-shadow);
}
.portal-card:hover,
.workspace-lead-card.provider-opportunity-card:hover { box-shadow: var(--theme-card-shadow-hover); }

.btn,
.form-control,
.form-select,
.input-group-text,
.workspace-filter-toggle,
.workspace-marketplace-shortcut,
.workspace-credit-chip { border-radius: var(--theme-control-radius); }
.workspace-sidebar-nav a,
.workspace-primary-nav-action,
.workspace-sidebar-footer a,
.workspace-sidebar-footer button { border-radius: var(--theme-nav-radius); }

/* Fixed header and explicit content offset: cards scroll underneath, never over it. */
html { scroll-padding-top: calc(var(--portal-navbar-height) + 1rem); }
.workspace-topbar.portal-navbar {
  position: fixed !important;
  inset: 0 0 auto 0;
  z-index: 1300 !important;
  isolation: isolate;
  background: var(--theme-header-bg) !important;
  border-bottom: 1px solid var(--workspace-border);
  box-shadow: 0 1px 4px rgba(20, 30, 40, .06);
  backdrop-filter: none;
}
.page-content.workspace-page-shell {
  padding-top: var(--portal-navbar-height);
  overflow: visible;
}
.content-wrapper,
.content-inner,
.workspace-content.content,
.workspace-lead-grid,
.workspace-lead-card { position: relative; z-index: 1; }
.workspace-lead-command {
  position: sticky;
  top: calc(var(--portal-navbar-height) + .5rem);
  z-index: 900 !important;
  isolation: isolate;
  background: var(--workspace-bg);
}
.workspace-lead-command::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -.55rem -.4rem -.45rem;
  background: var(--workspace-bg);
}
.workspace-lead-card.provider-minimal-card.provider-opportunity-card {
  position: relative;
  z-index: 1 !important;
  isolation: auto;
}

/* Reliable mobile drawer with explicit pointer states. */
@media (max-width: 991.98px) {
  .workspace-sidebar.portal-sidebar {
    position: fixed !important;
    top: var(--portal-navbar-height) !important;
    bottom: 0;
    left: 0 !important;
    width: min(19rem, 86vw);
    min-width: 0;
    height: auto !important;
    z-index: 1220 !important;
    transform: translate3d(-105%, 0, 0) !important;
    visibility: hidden;
    pointer-events: none;
    transition: transform .22s ease, visibility 0s linear .22s;
    box-shadow: 10px 0 30px rgba(17, 24, 39, .12);
  }
  body.portal-sidebar-open .workspace-sidebar.portal-sidebar {
    transform: translate3d(0, 0, 0) !important;
    visibility: visible;
    pointer-events: auto;
    transition: transform .22s ease;
  }
  .portal-sidebar-overlay {
    display: block !important;
    position: fixed;
    inset: var(--portal-navbar-height) 0 0;
    z-index: 1210 !important;
    background: rgba(17, 24, 39, .32);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .2s ease, visibility 0s linear .2s;
  }
  body.portal-sidebar-open .portal-sidebar-overlay {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: opacity .2s ease;
  }
  body.portal-sidebar-open { overflow: hidden; }
  .portal-mobile-menu { position: relative; z-index: 2; pointer-events: auto; }
  .workspace-lead-command { top: calc(var(--portal-navbar-height) + .3rem); }
}

@media (min-width: 992px) {
  .workspace-sidebar.portal-sidebar {
    top: var(--portal-navbar-height);
    height: calc(100vh - var(--portal-navbar-height));
  }
  .portal-sidebar-overlay { display: none !important; }
}

@media (max-width: 575.98px) {
  .workspace-lead-command {
    position: relative;
    top: auto;
    z-index: 1 !important;
    background: transparent;
  }
  .workspace-lead-command::before { display: none; }
}

/* =====================================================================
   Findoly Provider Operations UX · task-first final optimization
   ===================================================================== */
:root {
  --provider-content-max: 92rem;
  --provider-focus-ring: 0 0 0 .2rem rgba(var(--portal-accent-rgb), .14);
}

body {
  font-size: 15.5px;
  line-height: 1.55;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

.workspace-content.content {
  max-width: var(--provider-content-max);
  padding: 1.35rem 1.5rem 2.5rem;
}

.workspace-topbar-inner { max-width: none; }
.workspace-sidebar.portal-sidebar { width: 15.5rem; min-width: 15.5rem; }
.workspace-brand { min-width: 14rem; }
.workspace-sidebar-nav a { font-size: .86rem; }
.workspace-sidebar-account strong { font-size: .86rem; }
.workspace-sidebar-account small { font-size: .71rem; }

/* Dashboard command centre */
.provider-dashboard-command {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(17rem, .65fr);
  gap: 1rem;
  align-items: stretch;
  margin-bottom: 1rem;
}
.provider-dashboard-command-copy,
.provider-dashboard-credit {
  border: 1px solid var(--workspace-border);
  border-radius: var(--theme-card-radius);
  background: var(--theme-card-bg);
  box-shadow: var(--theme-card-shadow);
}
.provider-dashboard-command-copy { padding: 1.25rem 1.35rem; }
.provider-dashboard-command-copy h2 {
  margin: .18rem 0 .28rem;
  color: var(--workspace-text);
  font-size: clamp(1.25rem, 2vw, 1.65rem);
}
.provider-dashboard-command-copy p {
  max-width: 46rem;
  margin: 0;
  color: var(--workspace-muted);
  font-size: .9rem;
}
.provider-dashboard-command-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
  margin-top: 1rem;
}
.provider-dashboard-credit {
  display: grid;
  grid-template-columns: 2.7rem minmax(0,1fr) 1.1rem;
  align-items: center;
  gap: .75rem;
  padding: 1.1rem;
  color: var(--workspace-text);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.provider-dashboard-credit:hover {
  color: var(--workspace-text);
  border-color: rgba(var(--portal-accent-rgb), .4);
  box-shadow: var(--theme-card-shadow-hover);
  transform: translateY(-1px);
}
.provider-dashboard-credit-icon {
  display: inline-flex;
  width: 2.7rem;
  height: 2.7rem;
  align-items: center;
  justify-content: center;
  border-radius: .75rem;
  background: var(--portal-accent-soft);
  color: var(--portal-accent);
}
.provider-dashboard-credit > span:nth-child(2) { display: grid; gap: .08rem; min-width: 0; }
.provider-dashboard-credit small { color: var(--workspace-muted); font-size: .7rem; font-weight: 750; letter-spacing: .065em; text-transform: uppercase; }
.provider-dashboard-credit strong { color: var(--workspace-text); font-size: 1.25rem; line-height: 1.15; }
.provider-dashboard-credit em { color: var(--workspace-muted); font-size: .73rem; font-style: normal; }
.provider-dashboard-credit-arrow { color: var(--workspace-subtle); }

.provider-dashboard-metrics.workspace-metric-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .75rem;
  margin: 1rem 0;
}
.provider-dashboard-metrics .workspace-metric-card {
  min-height: 8.2rem;
  padding: 1rem;
  border: 1px solid var(--workspace-border);
  background: var(--theme-card-bg);
  box-shadow: var(--theme-card-shadow);
  text-align: left;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.provider-dashboard-metrics .workspace-metric-card:hover {
  transform: translateY(-2px);
  border-color: rgba(var(--portal-accent-rgb), .34);
  box-shadow: var(--theme-card-shadow-hover);
}
.provider-dashboard-metrics .workspace-metric-icon {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: .65rem;
  background: var(--portal-accent-soft);
  color: var(--portal-accent);
}
.provider-dashboard-metrics .workspace-metric-label {
  margin-top: .68rem;
  color: var(--workspace-muted);
  font-size: .69rem;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.provider-dashboard-metrics strong { font-size: 1.35rem; }
.provider-dashboard-metrics small { font-size: .72rem; }

.provider-dashboard-workgrid {
  display: grid;
  grid-template-columns: minmax(19rem, .82fr) minmax(0, 1.18fr);
  gap: 1rem;
  align-items: start;
}
.provider-priority-queue,
.provider-dashboard-recent { overflow: hidden; }
.provider-queue-state {
  display: inline-flex;
  align-items: center;
  min-height: 1.7rem;
  padding: .25rem .55rem;
  border-radius: 999px;
  background: var(--workspace-soft);
  color: var(--workspace-muted);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .045em;
  text-transform: uppercase;
}
.provider-queue-state.is-attention { background: #fff3d6; color: #925e00; }
.provider-queue-state.is-clear { background: #eaf7f0; color: #176a45; }
.provider-priority-list { display: grid; }
.provider-priority-list > a {
  display: grid;
  grid-template-columns: 2.35rem minmax(0,1fr) auto 1rem;
  gap: .75rem;
  align-items: center;
  min-height: 4.65rem;
  padding: .85rem 1rem;
  border-top: 1px solid var(--workspace-border);
  color: var(--workspace-text);
  transition: background .16s ease;
}
.provider-priority-list > a:first-child { border-top: 0; }
.provider-priority-list > a:hover { background: var(--workspace-soft); color: var(--workspace-text); }
.provider-priority-list > a.is-urgent { background: rgba(245, 158, 11, .055); }
.provider-priority-icon {
  display: inline-flex;
  width: 2.35rem;
  height: 2.35rem;
  align-items: center;
  justify-content: center;
  border-radius: .65rem;
  background: var(--portal-accent-soft);
  color: var(--portal-accent);
}
.provider-priority-list > a > span:nth-child(2) { display: grid; gap: .1rem; min-width: 0; }
.provider-priority-list strong { font-size: .86rem; }
.provider-priority-list small { color: var(--workspace-muted); font-size: .72rem; line-height: 1.35; }
.provider-priority-list b {
  min-width: 1.75rem;
  color: var(--workspace-text);
  font-size: 1rem;
  text-align: right;
}
.provider-priority-arrow { color: var(--workspace-subtle); }

/* Marketplace command centre */
.workspace-lead-command {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(24rem, .75fr);
  gap: .7rem;
  padding-bottom: .15rem;
}
.workspace-lead-tabs { grid-column: 1; grid-row: 1; }
.workspace-market-dashboard { grid-column: 2; grid-row: 1; }
.provider-quick-filters,
.workspace-filter-card { grid-column: 1 / -1; }
.workspace-market-dashboard {
  min-height: 100%;
  padding: .85rem 1rem;
  border: 1px solid var(--workspace-border);
  border-radius: var(--theme-card-radius);
  background: var(--theme-card-bg);
  box-shadow: var(--theme-card-shadow);
}
.workspace-market-dashboard-copy > strong { font-size: .94rem; }
.workspace-market-dashboard-copy small { font-size: .7rem; }
.workspace-market-dashboard-metrics { gap: .75rem; }
.workspace-market-dashboard-metrics > div { min-width: 5.2rem; }
.workspace-market-dashboard-metrics strong { font-size: .92rem; }

.provider-quick-filters {
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
}
.provider-quick-filters::-webkit-scrollbar { display: none; }
.provider-quick-filter-track {
  display: flex;
  gap: .45rem;
  min-width: max-content;
  padding: .05rem 0 .12rem;
}
.provider-quick-filter-track button {
  min-height: 2.15rem;
  padding: .42rem .72rem;
  border: 1px solid var(--workspace-border);
  border-radius: 999px;
  background: var(--theme-card-bg);
  color: var(--workspace-muted);
  font: inherit;
  font-size: .76rem;
  font-weight: 720;
  white-space: nowrap;
}
.provider-quick-filter-track button:hover { border-color: var(--workspace-border-strong); color: var(--workspace-text); }
.provider-quick-filter-track button.active {
  border-color: rgba(var(--portal-accent-rgb), .42);
  background: var(--portal-accent-soft);
  color: var(--portal-accent-dark);
}

.workspace-filter-card {
  overflow: visible;
  border-color: var(--workspace-border);
  box-shadow: var(--theme-card-shadow);
}
.workspace-filter-toolbar { padding: .65rem; }
.workspace-search-field input { font-size: .88rem; }
.provider-advanced-panel { border-top: 1px solid var(--workspace-border); }

.workspace-lead-grid.provider-minimal-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
}
.workspace-lead-card.provider-opportunity-card {
  min-height: 100%;
  border: 1px solid var(--workspace-border);
  background: var(--theme-card-bg);
  box-shadow: var(--theme-card-shadow);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.workspace-lead-card.provider-opportunity-card:hover {
  transform: translateY(-2px);
  border-color: rgba(var(--portal-accent-rgb), .34);
  box-shadow: var(--theme-card-shadow-hover);
}
.workspace-lead-card-main { padding: 1rem 1.05rem .9rem; }
.workspace-lead-title-row h2 { margin-top: .35rem; font-size: 1.05rem; line-height: 1.35; }
.workspace-lead-title-row h2 a { color: var(--workspace-text); }
.workspace-lead-title-row h2 a:hover { color: var(--portal-accent); }
.provider-card-summary {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  min-height: 2.65rem;
  margin: .62rem 0 .75rem;
  color: var(--workspace-muted);
  font-size: .82rem;
  line-height: 1.55;
}
.workspace-card-facts {
  grid-template-columns: repeat(2, minmax(0,1fr));
  border: 1px solid var(--workspace-border);
  border-radius: calc(var(--theme-card-radius) - .12rem);
  background: var(--theme-section-bg);
}
.workspace-card-facts > div { padding: .7rem .75rem; }
.workspace-card-facts small { font-size: .62rem; letter-spacing: .055em; text-transform: uppercase; }
.workspace-card-facts strong { font-size: .78rem; }
.workspace-lead-signals { min-height: 2.2rem; margin-top: .72rem; }
.workspace-lead-card-footer {
  padding: .75rem 1rem;
  border-top: 1px solid var(--workspace-border);
  background: var(--theme-section-bg);
}
.provider-card-price-block small { font-size: .62rem; letter-spacing: .055em; text-transform: uppercase; }
.provider-card-price-block strong { font-size: .98rem; }
.provider-card-actions { flex-wrap: wrap; }
.provider-card-actions .btn { min-height: 2.25rem; padding: .44rem .65rem; font-size: .76rem; }
.provider-card-whatsapp { color: #176a45; }

/* Lead detail productivity */
.provider-detail-breadcrumb {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: .75rem;
  color: var(--workspace-muted);
  font-size: .76rem;
}
.provider-detail-breadcrumb a { display: inline-flex; align-items: center; gap: .4rem; color: var(--workspace-muted); font-weight: 700; }
.provider-detail-breadcrumb a:hover { color: var(--portal-accent); }
.provider-detail-breadcrumb-id { max-width: 48%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.provider-detail-quick-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin: 0 0 1rem;
  padding: .85rem 1rem;
  border: 1px solid var(--workspace-border);
  border-radius: var(--theme-card-radius);
  background: var(--theme-card-bg);
  box-shadow: var(--theme-card-shadow);
}
.provider-detail-quick-copy { display: grid; gap: .04rem; min-width: 0; }
.provider-detail-quick-copy strong { overflow: hidden; color: var(--workspace-text); font-size: .9rem; text-overflow: ellipsis; white-space: nowrap; }
.provider-detail-quick-copy small { color: var(--workspace-muted); font-size: .73rem; }
.provider-detail-quick-buttons { display: flex; flex-wrap: wrap; gap: .5rem; }
.provider-detail-quick-buttons .btn { min-height: 2.25rem; padding: .43rem .68rem; font-size: .76rem; }
.workspace-outcome-panel { scroll-margin-top: calc(var(--portal-navbar-height) + 1rem); }
.portal-outcome-radio-grid label { transition: border-color .18s ease, background .18s ease, transform .18s ease; }
.portal-outcome-radio-grid label:hover { transform: translateY(-1px); }
.portal-outcome-radio-grid label.selected { border-color: var(--portal-accent); background: var(--portal-accent-soft); }

/* Keyboard and touch quality */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 0;
  box-shadow: var(--provider-focus-ring) !important;
}

@media (max-width: 1399.98px) {
  .provider-dashboard-metrics.workspace-metric-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .workspace-lead-grid.provider-minimal-list { grid-template-columns: 1fr; }
}

@media (max-width: 1199.98px) {
  .provider-dashboard-command { grid-template-columns: 1fr; }
  .provider-dashboard-credit { grid-template-columns: 2.7rem minmax(0,1fr) 1.1rem; }
  .provider-dashboard-workgrid { grid-template-columns: 1fr; }
  .workspace-lead-command { grid-template-columns: 1fr; }
  .workspace-lead-tabs,
  .workspace-market-dashboard,
  .provider-quick-filters,
  .workspace-filter-card { grid-column: 1; grid-row: auto; }
}

@media (max-width: 991.98px) {
  .workspace-content.content { padding: 1rem 1rem 5.4rem; }
  .provider-dashboard-metrics.workspace-metric-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .workspace-sidebar.portal-sidebar { width: min(18rem, 86vw); min-width: 0; }
  .workspace-brand { min-width: 0; }
  .provider-detail-quick-actions { align-items: flex-start; flex-direction: column; }
  .provider-detail-quick-buttons { width: 100%; }
  .provider-detail-quick-buttons .btn { flex: 1 1 auto; }
}

@media (max-width: 575.98px) {
  body { font-size: 15px; }
  .workspace-content.content { padding: .8rem .75rem 5.6rem; }
  .provider-dashboard-command-copy { padding: 1rem; }
  .provider-dashboard-command-actions { display: grid; grid-template-columns: 1fr; }
  .provider-dashboard-command-actions .btn { width: 100%; }
  .provider-dashboard-credit { padding: .9rem; }
  .provider-dashboard-metrics.workspace-metric-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: .6rem; }
  .provider-dashboard-metrics .workspace-metric-card { min-height: 7.2rem; padding: .8rem; }
  .provider-dashboard-metrics .workspace-metric-card:last-child { grid-column: 1 / -1; }
  .provider-priority-list > a { grid-template-columns: 2.15rem minmax(0,1fr) auto; padding: .75rem; }
  .provider-priority-arrow { display: none; }
  .workspace-market-dashboard { display: grid; gap: .65rem; }
  .workspace-market-dashboard-metrics { justify-content: space-between; }
  .workspace-lead-card-main { padding: .9rem; }
  .workspace-card-facts { grid-template-columns: 1fr 1fr; }
  .workspace-lead-card-footer { align-items: stretch; flex-direction: column; }
  .provider-card-actions { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); width: 100%; }
  .provider-card-actions .btn-primary { grid-column: 1 / -1; }
  .provider-card-price-block { display: flex; align-items: center; justify-content: space-between; width: 100%; }
  .provider-detail-breadcrumb-id { display: none; }
  .provider-detail-quick-buttons { display: grid; grid-template-columns: 1fr 1fr; }
  .provider-detail-quick-buttons button { grid-column: 1 / -1; }
}

/* =====================================================================
   Lead workspace top summary + responsive navigation correction
   ===================================================================== */
.workspace-market-dashboard-top {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(29rem, 1fr);
  align-items: stretch;
  gap: 0;
  width: 100%;
  min-width: 0;
  margin: 0 0 .8rem;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--workspace-border);
  border-radius: var(--theme-card-radius);
  background: var(--theme-card-bg);
  box-shadow: var(--theme-card-shadow);
}
.workspace-market-dashboard-top .workspace-market-dashboard-copy {
  display: grid;
  align-content: center;
  gap: .22rem;
  min-width: 0;
  padding: 1rem 1.15rem;
}
.workspace-market-dashboard-top .workspace-market-dashboard-copy > strong {
  max-width: 100%;
  overflow-wrap: anywhere;
  color: var(--workspace-text);
  font-size: clamp(1rem, 1.2vw, 1.18rem);
  line-height: 1.28;
}
.workspace-market-dashboard-top .workspace-market-dashboard-copy > small {
  max-width: 44rem;
  color: var(--workspace-muted);
  font-size: .78rem;
  line-height: 1.45;
}
.workspace-market-dashboard-top .workspace-market-dashboard-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  min-width: 0;
  border-left: 1px solid var(--workspace-border);
  background: var(--theme-section-bg);
}
.workspace-market-dashboard-top .workspace-market-dashboard-metrics > div {
  display: grid;
  align-content: center;
  gap: .28rem;
  min-width: 0;
  padding: .9rem 1rem;
  border-left: 1px solid var(--workspace-border);
}
.workspace-market-dashboard-top .workspace-market-dashboard-metrics > div:first-child { border-left: 0; }
.workspace-market-dashboard-top .workspace-market-dashboard-metrics .workspace-compact-label {
  white-space: normal;
  overflow-wrap: anywhere;
  font-size: .61rem;
  line-height: 1.25;
}
.workspace-market-dashboard-top .workspace-market-dashboard-metrics strong {
  min-width: 0;
  overflow: visible;
  color: var(--workspace-text);
  font-size: clamp(.88rem, 1vw, 1.02rem);
  line-height: 1.3;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: anywhere;
}

/* The summary sits at the true top; only actions remain sticky. */
.workspace-lead-command {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: .58rem;
}
.workspace-lead-tabs,
.provider-quick-filters,
.workspace-filter-card {
  grid-column: 1 !important;
  grid-row: auto !important;
}
.workspace-lead-command > .workspace-market-dashboard { display: none !important; }

/* Tighter transition from filters to results. */
.workspace-active-filters {
  margin: .55rem 0 .45rem;
  min-height: 0;
}
.workspace-results-bar {
  margin: .15rem 0 .65rem;
  padding: .5rem .15rem;
}
.workspace-results-bar > div { min-width: 0; }
.workspace-results-bar strong,
.workspace-results-bar span { overflow-wrap: anywhere; }

/* Laptop cards use the available workspace rather than becoming oversized rows. */
@media (min-width: 1200px) {
  .workspace-lead-grid.provider-minimal-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1279.98px) {
  .workspace-market-dashboard-top {
    grid-template-columns: minmax(0, 1fr);
  }
  .workspace-market-dashboard-top .workspace-market-dashboard-metrics {
    border-top: 1px solid var(--workspace-border);
    border-left: 0;
  }
}

@media (max-width: 767.98px) {
  .workspace-market-dashboard-top {
    margin-bottom: .65rem;
    border-radius: calc(var(--theme-card-radius) - .08rem);
  }
  .workspace-market-dashboard-top .workspace-market-dashboard-copy {
    padding: .85rem .9rem;
  }
  .workspace-market-dashboard-top .workspace-market-dashboard-copy > small {
    font-size: .73rem;
  }
  .workspace-market-dashboard-top .workspace-market-dashboard-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .workspace-market-dashboard-top .workspace-market-dashboard-metrics > div {
    padding: .68rem .58rem;
  }
  .workspace-market-dashboard-top .workspace-market-dashboard-metrics strong {
    font-size: .8rem;
  }
  .workspace-filter-toolbar {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }
  .workspace-filter-toolbar .provider-filter-apply {
    grid-column: 1 / -1;
    width: 100%;
  }
}

@media (max-width: 479.98px) {
  .workspace-market-dashboard-top .workspace-market-dashboard-metrics {
    grid-template-columns: 1fr 1fr;
  }
  .workspace-market-dashboard-top .workspace-market-dashboard-metrics > div:nth-child(3) {
    grid-column: 1 / -1;
    border-top: 1px solid var(--workspace-border);
    border-left: 0;
  }
  .workspace-market-dashboard-top .workspace-market-dashboard-metrics > div:nth-child(2) {
    border-left: 1px solid var(--workspace-border);
  }
  .provider-quick-filter-track button {
    min-height: 2.35rem;
    padding: .48rem .78rem;
  }
}

/* Mobile navigation must stay tappable above page content. */
@media (max-width: 991.98px) {
  .workspace-topbar.portal-navbar,
  .portal-mobile-menu,
  .workspace-mobile-nav.portal-mobile-nav,
  .workspace-mobile-nav.portal-mobile-nav a {
    pointer-events: auto !important;
    touch-action: manipulation;
  }
  .workspace-mobile-nav.portal-mobile-nav {
    z-index: 1200 !important;
    isolation: isolate;
  }
  .workspace-mobile-nav.portal-mobile-nav a {
    z-index: 1;
    min-height: 4.05rem;
  }
  .portal-mobile-menu {
    z-index: 1400 !important;
    cursor: pointer;
  }
  body.portal-sidebar-open .workspace-mobile-nav.portal-mobile-nav {
    pointer-events: none !important;
  }
  .workspace-sidebar.portal-sidebar {
    z-index: 1450 !important;
  }
  .portal-sidebar-overlay {
    z-index: 1440 !important;
  }
}

/* =====================================================================
   Provider Unlock Conversion UI — task-first marketplace correction
   ===================================================================== */
.provider-lead-page.workspace-leads-page {
  display: block !important;
  width: 100%;
  min-width: 0;
}
.provider-lead-page > * { min-width: 0; }

/* Full-width top summary: never participates in the command grid. */
.provider-conversion-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(32rem, .9fr);
  grid-column: 1 / -1 !important;
  grid-row: auto !important;
  width: 100%;
  min-width: 0;
  margin: 0 0 .85rem;
  overflow: hidden;
  border: 1px solid var(--workspace-border);
  border-radius: var(--theme-card-radius);
  background: var(--theme-card-bg);
  box-shadow: var(--theme-card-shadow);
}
.provider-conversion-hero-copy {
  display: grid;
  align-content: center;
  gap: .34rem;
  min-width: 0;
  padding: 1.15rem 1.25rem;
  border-left: 4px solid var(--portal-accent);
}
.provider-eyebrow {
  color: var(--portal-accent-dark);
  font-size: .65rem;
  font-weight: 850;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.provider-conversion-hero h1 {
  margin: 0;
  color: var(--workspace-text);
  font-family: var(--theme-font-heading);
  font-size: clamp(1.25rem, 1.8vw, 1.72rem);
  font-weight: 780;
  line-height: 1.18;
  letter-spacing: -.035em;
  overflow-wrap: normal;
  word-break: normal;
}
.provider-conversion-hero p {
  max-width: 44rem;
  margin: 0;
  color: var(--workspace-muted);
  font-size: .82rem;
  line-height: 1.5;
}
.provider-conversion-hero-points {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem .9rem;
  margin-top: .2rem;
  color: var(--workspace-muted);
  font-size: .69rem;
  font-weight: 650;
}
.provider-conversion-hero-points span { display: inline-flex; align-items: center; gap: .32rem; }
.provider-conversion-hero-points .icon { width: .78rem; height: .78rem; color: var(--portal-accent); }
.provider-conversion-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  min-width: 0;
  border-left: 1px solid var(--workspace-border);
  background: var(--theme-section-bg);
}
.provider-conversion-stat {
  display: grid;
  align-content: center;
  gap: .22rem;
  min-width: 0;
  padding: 1rem .9rem;
  border-left: 1px solid var(--workspace-border);
  color: var(--workspace-text);
}
.provider-conversion-stat:first-child { border-left: 0; }
a.provider-conversion-stat:hover { background: var(--portal-accent-soft); color: var(--workspace-text); }
.provider-conversion-stat > span {
  color: var(--workspace-muted);
  font-size: .59rem;
  font-weight: 830;
  letter-spacing: .075em;
  line-height: 1.25;
  text-transform: uppercase;
}
.provider-conversion-stat > strong {
  min-width: 0;
  color: var(--workspace-text);
  font-size: clamp(.92rem, 1.1vw, 1.12rem);
  font-weight: 780;
  line-height: 1.25;
  overflow-wrap: normal;
  word-break: normal;
}
.provider-conversion-stat > small { color: var(--workspace-muted); font-size: .65rem; line-height: 1.25; }
.provider-conversion-credit > strong { color: var(--portal-accent-dark); }

/* Command area is compact and does not consume half the page. */
.workspace-lead-command {
  position: relative !important;
  top: auto !important;
  z-index: 10 !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: .58rem !important;
  margin: 0 0 .65rem !important;
  padding: 0 !important;
  background: transparent !important;
}
.workspace-lead-command::before { display: none !important; }
.workspace-lead-tabs.provider-lead-tabs {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
}
.workspace-lead-tabs > a {
  min-height: 3.75rem;
  border-color: var(--workspace-border);
  background: var(--theme-card-bg);
  box-shadow: none;
}
.workspace-lead-tabs > a.active {
  border-color: rgba(var(--portal-accent-rgb), .42);
  background: var(--portal-accent-soft);
}
.workspace-filter-card { margin: 0 !important; }
.workspace-active-filters { margin: .55rem 0 .35rem !important; }
.workspace-results-bar { margin: 0 0 .65rem !important; padding: .42rem .1rem !important; }

/* Conversion-focused opportunity cards. */
.workspace-lead-grid.provider-minimal-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1rem;
  align-items: stretch;
}
.provider-conversion-card {
  position: relative;
  display: flex !important;
  flex-direction: column;
  min-width: 0;
  min-height: 0 !important;
  overflow: hidden;
  border: 1px solid var(--workspace-border) !important;
  border-radius: var(--theme-card-radius) !important;
  background: var(--theme-card-bg) !important;
  box-shadow: var(--theme-card-shadow) !important;
}
.provider-conversion-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: var(--portal-accent);
  opacity: .72;
}
.provider-conversion-card.is-unlocked::before { background: var(--workspace-success); }
.provider-conversion-card.is-high-priority::before { width: 5px; opacity: 1; }
.provider-conversion-card:hover {
  transform: translateY(-2px);
  border-color: rgba(var(--portal-accent-rgb), .34) !important;
  box-shadow: var(--theme-card-shadow-hover) !important;
}
.provider-conversion-card-main {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  padding: 1rem 1.05rem .9rem 1.15rem;
}
.provider-conversion-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .65rem;
  min-width: 0;
}
.provider-conversion-card-labels { display: flex; align-items: center; gap: .45rem; min-width: 0; }
.provider-conversion-card .provider-minimal-category {
  overflow: hidden;
  color: var(--workspace-muted);
  font-size: .64rem;
  font-weight: 820;
  letter-spacing: .07em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}
.provider-recommended-badge {
  flex: 0 0 auto;
  padding: .22rem .42rem;
  border-radius: 999px;
  background: #fff3d6;
  color: #8a5700;
  font-size: .58rem;
  font-weight: 820;
  letter-spacing: .035em;
  text-transform: uppercase;
}
.provider-conversion-title {
  margin: .65rem 0 .25rem;
  color: var(--workspace-text);
  font-size: clamp(1.03rem, 1.25vw, 1.18rem);
  font-weight: 780;
  line-height: 1.32;
  letter-spacing: -.025em;
}
.provider-conversion-title a { color: inherit; }
.provider-conversion-title a:hover { color: var(--portal-accent-dark); }
.provider-conversion-summary {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  min-height: 2.55rem !important;
  margin: .15rem 0 .7rem !important;
  color: var(--workspace-muted) !important;
  font-size: .79rem !important;
  line-height: 1.55 !important;
}
.provider-conversion-location {
  display: flex;
  align-items: center;
  gap: .38rem;
  min-width: 0;
  padding: .55rem .65rem;
  border-radius: calc(var(--theme-control-radius) - .05rem);
  background: var(--theme-section-bg);
  color: var(--workspace-muted);
  font-size: .72rem;
}
.provider-conversion-location .icon { flex: 0 0 auto; width: .82rem; height: .82rem; color: var(--portal-accent); }
.provider-conversion-location > span { overflow: hidden; min-width: 0; text-overflow: ellipsis; white-space: nowrap; }
.provider-conversion-location > b { flex: 0 0 auto; margin-left: auto; color: var(--workspace-text); font-size: .68rem; }
.provider-conversion-highlights {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem;
  margin-top: .65rem;
}
.provider-conversion-highlights > div {
  display: grid;
  gap: .14rem;
  min-width: 0;
  padding: .62rem .68rem;
  border: 1px solid var(--workspace-border);
  border-radius: calc(var(--theme-control-radius) - .04rem);
  background: var(--theme-card-bg);
}
.provider-conversion-highlights span,
.provider-conversion-price > span {
  color: var(--workspace-muted);
  font-size: .58rem;
  font-weight: 820;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.provider-conversion-highlights strong {
  min-width: 0;
  color: var(--workspace-text);
  font-size: .72rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.provider-conversion-market-signals {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .5rem;
  margin-top: .65rem;
}
.provider-conversion-market-signals > div {
  display: flex;
  align-items: center;
  gap: .42rem;
  min-width: 0;
  padding: .55rem .62rem;
  border-radius: calc(var(--theme-control-radius) - .04rem);
  background: var(--theme-section-bg);
  color: var(--workspace-muted);
  font-size: .67rem;
  line-height: 1.3;
}
.provider-conversion-market-signals .icon { flex: 0 0 auto; width: .78rem; height: .78rem; color: var(--portal-accent); }
.provider-conversion-market-signals > div.is-confirmed { background: #edf9f3; color: #176a45; }
.provider-conversion-market-signals > div.is-confirmed .icon { color: #176a45; }
.provider-unlock-preview {
  display: flex;
  align-items: center;
  gap: .65rem;
  margin-top: .7rem;
  padding: .65rem .7rem;
  border: 1px dashed rgba(var(--portal-accent-rgb), .34);
  border-radius: calc(var(--theme-control-radius) - .02rem);
  background: rgba(var(--portal-accent-rgb), .04);
}
.provider-unlock-preview-icon {
  display: inline-flex;
  flex: 0 0 auto;
  width: 2rem;
  height: 2rem;
  align-items: center;
  justify-content: center;
  border-radius: .55rem;
  background: var(--portal-accent-soft);
  color: var(--portal-accent-dark);
}
.provider-unlock-preview-icon .icon { width: .9rem; height: .9rem; }
.provider-unlock-preview > div { display: grid; gap: .08rem; min-width: 0; }
.provider-unlock-preview strong { color: var(--workspace-text); font-size: .72rem; }
.provider-unlock-preview small { color: var(--workspace-muted); font-size: .64rem; line-height: 1.35; }
.provider-unlocked-status {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .45rem;
  margin-top: .7rem;
  min-height: 2rem;
}
.provider-unlocked-status > span:not(.provider-outcome-chip) { display: inline-flex; align-items: center; gap: .28rem; color: var(--workspace-muted); font-size: .68rem; }
.provider-unlocked-status .icon { width: .75rem; height: .75rem; }
.provider-unlocked-status .is-overdue { color: #9a6200 !important; }
.provider-conversion-card-footer {
  margin-top: auto;
  padding: .78rem .9rem .78rem 1.05rem;
  border-top: 1px solid var(--workspace-border);
  background: var(--theme-section-bg);
}
.provider-conversion-unlock-row,
.provider-conversion-unlocked-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  min-width: 0;
}
.provider-conversion-price { display: grid; gap: .12rem; min-width: 0; }
.provider-conversion-price strong { color: var(--workspace-text); font-size: .95rem; line-height: 1.25; }
.provider-unlock-cta {
  display: inline-flex;
  min-width: 12.8rem;
  min-height: 3rem;
  align-items: center;
  justify-content: space-between;
  gap: .8rem;
  padding: .55rem .72rem .55rem .85rem;
  border: 0;
  box-shadow: 0 7px 18px rgba(var(--portal-accent-rgb), .18);
}
.provider-unlock-cta > span { display: grid; gap: .03rem; text-align: left; }
.provider-unlock-cta b { font-size: .8rem; line-height: 1.25; }
.provider-unlock-cta small { color: rgba(255, 255, 255, .8); font-size: .58rem; font-weight: 600; }
.provider-unlock-cta .icon { flex: 0 0 auto; }
.provider-conversion-actions { display: flex; justify-content: flex-end; gap: .42rem; }
.provider-conversion-actions .btn { min-height: 2.4rem; }

/* Keep cards below the fixed header; mobile controls remain tappable. */
.workspace-topbar.portal-navbar { z-index: 1300 !important; }
.workspace-lead-grid,
.provider-conversion-card { z-index: 1 !important; }
.portal-mobile-menu,
.workspace-mobile-nav.portal-mobile-nav,
.workspace-mobile-nav.portal-mobile-nav a { pointer-events: auto !important; touch-action: manipulation; }

@media (max-width: 1399.98px) {
  .provider-conversion-hero { grid-template-columns: minmax(0, 1fr); }
  .provider-conversion-stats { border-top: 1px solid var(--workspace-border); border-left: 0; }
  .workspace-lead-grid.provider-minimal-list { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 1099.98px) {
  .workspace-lead-grid.provider-minimal-list { grid-template-columns: 1fr !important; }
}
@media (max-width: 767.98px) {
  .provider-conversion-hero-copy { padding: .95rem; }
  .provider-conversion-hero h1 { font-size: 1.28rem; }
  .provider-conversion-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .provider-conversion-stat { padding: .72rem .58rem; }
  .provider-conversion-stat > strong { font-size: .82rem; }
  .provider-conversion-stat > small { display: none; }
  .provider-conversion-hero-points { display: grid; gap: .28rem; }
  .workspace-lead-tabs.provider-lead-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workspace-lead-tabs .provider-tab-copy small { display: none; }
  .provider-conversion-card-main { padding: .9rem .85rem .8rem .95rem; }
  .provider-conversion-location > span { white-space: normal; }
  .provider-conversion-market-signals { grid-template-columns: 1fr; }
  .provider-conversion-card-footer { padding: .72rem .8rem .75rem .9rem; }
  .provider-conversion-unlock-row,
  .provider-conversion-unlocked-row { align-items: stretch; flex-direction: column; }
  .provider-conversion-price { display: flex; align-items: center; justify-content: space-between; width: 100%; }
  .provider-unlock-cta { width: 100%; min-width: 0; }
  .provider-conversion-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; }
  .provider-conversion-actions .btn-primary { grid-column: 1 / -1; }
}
@media (max-width: 479.98px) {
  .provider-conversion-stats { grid-template-columns: 1fr 1fr; }
  .provider-conversion-stat:nth-child(3) { grid-column: 1 / -1; border-top: 1px solid var(--workspace-border); border-left: 0; }
  .provider-conversion-highlights { grid-template-columns: 1fr; }
  .workspace-filter-toolbar { grid-template-columns: minmax(0, 1fr) auto !important; }
  .workspace-filter-toolbar .provider-filter-apply { grid-column: 1 / -1; width: 100%; }
}

/* Locked lead conversion banner. */
.provider-detail-unlock-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.05rem;
  border: 1px solid rgba(var(--portal-accent-rgb), .28);
  border-radius: var(--theme-card-radius);
  background: linear-gradient(90deg, rgba(var(--portal-accent-rgb), .075), rgba(var(--portal-accent-rgb), .025));
  box-shadow: var(--theme-card-shadow);
}
.provider-detail-unlock-banner-copy { display: grid; gap: .14rem; min-width: 0; }
.provider-detail-unlock-banner-copy > strong { color: var(--workspace-text); font-size: .95rem; }
.provider-detail-unlock-banner-copy > small { max-width: 42rem; color: var(--workspace-muted); font-size: .72rem; line-height: 1.45; }
.provider-detail-unlock-banner-action { display: flex; flex: 0 0 auto; align-items: center; gap: .8rem; }
.provider-detail-unlock-banner-action > span { display: grid; gap: .08rem; min-width: 7.5rem; text-align: right; }
.provider-detail-unlock-banner-action small { color: var(--workspace-muted); font-size: .57rem; font-weight: 820; letter-spacing: .07em; }
.provider-detail-unlock-banner-action strong { color: var(--workspace-text); font-size: .95rem; }
.provider-detail-unlock-banner-action .btn { min-height: 2.75rem; padding: .58rem .85rem; box-shadow: 0 7px 18px rgba(var(--portal-accent-rgb), .16); }
@media (max-width: 767.98px) {
  .provider-detail-unlock-banner { align-items: stretch; flex-direction: column; }
  .provider-detail-unlock-banner-action { align-items: stretch; flex-direction: column; }
  .provider-detail-unlock-banner-action > span { display: flex; align-items: center; justify-content: space-between; width: 100%; text-align: left; }
  .provider-detail-unlock-banner-action .btn { width: 100%; }
}

/* =====================================================================
   Findoly Provider Conversion Workspace · definitive navigation + cards
   ===================================================================== */

/* Compact lead switcher; the provider should reach opportunities quickly. */
.workspace-lead-tabs.provider-lead-tabs {
  display: flex !important;
  width: fit-content;
  max-width: 100%;
  gap: .35rem !important;
  padding: .25rem;
  border: 1px solid var(--workspace-border);
  border-radius: .85rem;
  background: #fff;
}
.workspace-lead-tabs.provider-lead-tabs > a {
  flex: 0 1 auto;
  min-width: 10rem;
  min-height: 2.85rem !important;
  padding: .45rem .65rem !important;
  border: 0 !important;
  border-radius: .65rem !important;
  background: transparent !important;
  box-shadow: none !important;
}
.workspace-lead-tabs.provider-lead-tabs > a.active {
  background: var(--portal-accent-soft) !important;
  color: var(--portal-accent-dark) !important;
}
.workspace-lead-tabs .provider-tab-icon {
  width: 1.9rem !important;
  height: 1.9rem !important;
  border-radius: .52rem !important;
}
.workspace-lead-tabs .provider-tab-copy strong { font-size: .78rem !important; }
.workspace-lead-tabs .provider-tab-copy small { display: none !important; }
.workspace-lead-tabs .provider-tab-count { min-width: 1.45rem !important; height: 1.45rem !important; font-size: .65rem; }

/* Conversion cards are full-width decision rows on laptop/desktop. */
.workspace-lead-grid.provider-minimal-list.provider-conversion-list {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: .85rem !important;
}
.provider-decision-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(15.5rem, 18rem);
  min-height: 15.5rem;
  overflow: hidden;
  border: 1px solid var(--workspace-border) !important;
  border-radius: .95rem !important;
  background: #fff !important;
  box-shadow: 0 3px 14px rgba(16, 35, 63, .055) !important;
}
.provider-decision-card::before {
  width: 4px !important;
  background: var(--portal-accent) !important;
}
.provider-decision-card.is-unlocked::before { background: #12a36d !important; }
.provider-decision-card.is-overdue::before { background: #e59a18 !important; }
.provider-decision-card:hover {
  transform: translateY(-1px) !important;
  border-color: rgba(var(--portal-accent-rgb), .38) !important;
  box-shadow: 0 10px 28px rgba(16, 35, 63, .09) !important;
}
.provider-decision-main {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 1.05rem 1.15rem 1rem 1.3rem;
}
.provider-decision-main .provider-conversion-title {
  margin: .58rem 0 .22rem;
  font-size: clamp(1.08rem, 1.35vw, 1.28rem);
}
.provider-decision-main .provider-conversion-summary {
  min-height: auto !important;
  max-width: 56rem;
  margin: .12rem 0 .7rem !important;
  font-size: .82rem !important;
}
.provider-decision-location {
  display: flex;
  align-items: center;
  gap: .4rem;
  min-width: 0;
  color: var(--workspace-muted);
  font-size: .75rem;
}
.provider-decision-location .icon { flex: 0 0 auto; width: .9rem; height: .9rem; color: var(--portal-accent); }
.provider-decision-location > span { overflow: hidden; min-width: 0; text-overflow: ellipsis; white-space: nowrap; }
.provider-decision-location > b { flex: 0 0 auto; margin-left: .35rem; color: var(--workspace-text); font-size: .72rem; }
.provider-decision-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem;
  margin-top: .8rem;
}
.provider-decision-facts > div {
  display: grid;
  gap: .12rem;
  min-width: 0;
  padding: .58rem .65rem;
  border: 1px solid var(--workspace-border);
  border-radius: .65rem;
  background: #fbfcfe;
}
.provider-decision-facts span,
.provider-action-kicker {
  color: #718096;
  font-size: .59rem;
  font-weight: 820;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.provider-decision-facts strong { overflow-wrap: anywhere; color: var(--workspace-text); font-size: .75rem; line-height: 1.35; }
.provider-decision-signals {
  display: flex;
  flex-wrap: wrap;
  gap: .42rem;
  margin-top: .72rem;
}
.provider-decision-signals > span {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  min-height: 1.85rem;
  padding: .3rem .5rem;
  border: 1px solid #e1e8f0;
  border-radius: 999px;
  background: #fff;
  color: #58677a;
  font-size: .66rem;
}
.provider-decision-signals .icon { width: .78rem; height: .78rem; }
.provider-decision-signals .is-confirmed { border-color: #b9e5cf; background: #edf9f3; color: #116b45; }
.provider-decision-signals .is-open { border-color: #c8daf3; background: #f1f6fd; color: #175a9d; }
.provider-decision-signals .is-overdue { border-color: #efd097; background: #fff7e7; color: #8f5b00; }

.provider-decision-action {
  display: flex;
  min-width: 0;
  border-left: 1px solid var(--workspace-border);
  background: #f5f9ff;
}
.provider-decision-action.is-unlocked-action { background: #f6fbf8; }
.provider-decision-action-inner {
  display: flex;
  width: 100%;
  flex-direction: column;
  justify-content: center;
  gap: .65rem;
  padding: 1rem;
}
.provider-action-cost { display: grid; gap: .05rem; }
.provider-action-cost strong { color: var(--portal-accent-dark); font-size: 1.28rem; line-height: 1.2; }
.provider-action-cost small,
.provider-action-balance,
.provider-customer-mobile { color: var(--workspace-muted); font-size: .68rem; line-height: 1.4; }
.provider-action-benefits { display: grid; gap: .38rem; padding: .65rem 0; border-top: 1px solid rgba(var(--portal-accent-rgb), .13); border-bottom: 1px solid rgba(var(--portal-accent-rgb), .13); }
.provider-action-benefits > span { display: flex; align-items: center; gap: .42rem; color: #405167; font-size: .71rem; }
.provider-action-benefits .icon { width: .8rem; height: .8rem; color: var(--portal-accent); }
.provider-decision-primary {
  width: 100%;
  min-width: 0 !important;
  min-height: 3.05rem !important;
  border-radius: .7rem !important;
  box-shadow: 0 8px 20px rgba(var(--portal-accent-rgb), .2) !important;
}
.provider-decision-primary > span { min-width: 0; }
.provider-decision-primary b,
.provider-decision-primary > span { font-size: .82rem; font-weight: 790; }
.provider-decision-contact-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .45rem; }
.provider-decision-contact-actions .btn { min-height: 2.55rem; justify-content: center; }
.provider-customer-name { overflow-wrap: anywhere; color: var(--workspace-text); font-size: 1rem; line-height: 1.3; }

/* Definitive mobile drawer: full viewport overlay below a drawer that owns all taps. */
@media (max-width: 991.98px) {
  html.portal-sidebar-open,
  body.portal-sidebar-open { overflow: hidden !important; overscroll-behavior: none; }

  .workspace-sidebar.portal-sidebar {
    position: fixed !important;
    inset: 0 auto 0 0 !important;
    z-index: 2100 !important;
    width: min(19rem, 88vw) !important;
    max-width: 100%;
    height: 100dvh !important;
    transform: translate3d(-102%, 0, 0) !important;
    visibility: hidden !important;
    opacity: 0;
    pointer-events: none !important;
    transition: transform .22s ease, opacity .18s ease, visibility 0s linear .22s !important;
    box-shadow: 18px 0 45px rgba(16, 24, 40, .22) !important;
    contain: paint;
    will-change: transform;
  }
  body.portal-sidebar-open .workspace-sidebar.portal-sidebar {
    transform: translate3d(0, 0, 0) !important;
    visibility: visible !important;
    opacity: 1;
    pointer-events: auto !important;
    transition: transform .22s ease, opacity .18s ease !important;
  }
  .workspace-sidebar.portal-sidebar *,
  body.portal-sidebar-open .workspace-sidebar.portal-sidebar a,
  body.portal-sidebar-open .workspace-sidebar.portal-sidebar button {
    pointer-events: auto !important;
    touch-action: manipulation;
  }
  .workspace-sidebar-content { height: 100%; overflow-y: auto; overscroll-behavior: contain; }
  .portal-sidebar-overlay {
    display: block !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 2090 !important;
    background: rgba(15, 23, 42, .42) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity .18s ease, visibility 0s linear .18s !important;
    -webkit-tap-highlight-color: transparent;
  }
  body.portal-sidebar-open .portal-sidebar-overlay {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transition: opacity .18s ease !important;
  }
  .portal-mobile-menu,
  .workspace-mobile-nav.portal-mobile-nav,
  .workspace-mobile-nav.portal-mobile-nav a {
    pointer-events: auto !important;
    touch-action: manipulation !important;
  }
  body:not(.portal-sidebar-open) .workspace-mobile-nav.portal-mobile-nav { z-index: 1500 !important; }
  body.portal-sidebar-open .workspace-mobile-nav.portal-mobile-nav { z-index: 1000 !important; pointer-events: none !important; }
}

@media (max-width: 1099.98px) {
  .provider-decision-card { grid-template-columns: minmax(0, 1fr) 15rem; }
}

@media (max-width: 767.98px) {
  .workspace-lead-tabs.provider-lead-tabs { width: 100%; }
  .workspace-lead-tabs.provider-lead-tabs > a { flex: 1 1 0; min-width: 0; }
  .provider-decision-card { display: flex !important; min-height: 0; flex-direction: column; }
  .provider-decision-main { padding: .92rem .9rem .82rem 1rem; }
  .provider-decision-location { align-items: flex-start; flex-wrap: wrap; }
  .provider-decision-location > span { flex: 1 1 12rem; white-space: normal; }
  .provider-decision-location > b { margin-left: 1.28rem; }
  .provider-decision-action { border-top: 1px solid var(--workspace-border); border-left: 0; }
  .provider-decision-action-inner { padding: .85rem .9rem .92rem; }
  .provider-action-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 479.98px) {
  .provider-decision-facts,
  .provider-action-benefits { grid-template-columns: 1fr; }
  .provider-decision-contact-actions { grid-template-columns: 1fr 1fr; }
  .provider-decision-primary { min-height: 3.2rem !important; }
}

/* =====================================================================
   Provider action language + visible filters + definitive mobile drawer
   ===================================================================== */
:root {
  --provider-mobile-drawer-width: min(19rem, 82vw);
}

/* Common filters are visible without opening the advanced panel. */
.provider-visible-filters {
  display: grid;
  grid-template-columns: minmax(11rem, 1.15fr) minmax(10rem, 1fr) minmax(10rem, .9fr) minmax(10rem, .9fr);
  gap: .65rem;
  padding: .75rem .85rem .85rem;
  border-top: 1px solid #e7ebf1;
  background: #fbfcfe;
}
.provider-visible-filters > label {
  display: grid;
  gap: .3rem;
  min-width: 0;
}
.provider-visible-filters > label > span {
  color: #667085;
  font-size: .68rem;
  font-weight: 760;
  letter-spacing: .035em;
}
.provider-visible-filters .form-control,
.provider-visible-filters .form-select {
  min-width: 0;
  min-height: 2.8rem;
  border-color: #d8dee8;
  border-radius: .72rem;
  background-color: #fff;
  font-size: .82rem;
  box-shadow: none;
}
.provider-visible-filters .form-control:focus,
.provider-visible-filters .form-select:focus {
  border-color: #78a9e2;
  box-shadow: 0 0 0 .2rem rgba(20, 104, 194, .11);
}
.provider-conversion-search-row .provider-action-outline,
.provider-conversion-search-row .provider-action-primary {
  min-height: 3.05rem;
}

/* One clear, friendly action language across every provider surface. */
.provider-action-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: .72rem;
  min-height: 3.25rem !important;
  padding: .72rem 1rem !important;
  border-radius: .78rem !important;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 1rem !important;
  font-weight: 620 !important;
  line-height: 1.15 !important;
  letter-spacing: -.012em;
  text-decoration: none !important;
  white-space: normal;
  box-shadow: none !important;
  transition: border-color .16s ease, background-color .16s ease, color .16s ease, transform .16s ease, box-shadow .16s ease;
}
.provider-action-button .icon {
  width: 1.22rem !important;
  height: 1.22rem !important;
  flex: 0 0 auto;
  stroke-width: 1.8;
}
.provider-action-button:hover:not(.disabled):not(:disabled) {
  transform: translateY(-1px);
}
.provider-action-call {
  border: 1px solid #d6dde7 !important;
  background: #fff !important;
  color: #202938 !important;
}
.provider-action-call:hover:not(.disabled) {
  border-color: #aeb9c8 !important;
  background: #f8fafc !important;
}
.provider-action-whatsapp {
  border: 1px solid #d6dde7 !important;
  background: #fff !important;
  color: #147445 !important;
}
.provider-action-whatsapp:hover:not(.disabled) {
  border-color: #9acdb0 !important;
  background: #f3fbf7 !important;
}
.provider-action-primary {
  min-height: 3.55rem !important;
  border: 1px solid #1266be !important;
  background: #1468c2 !important;
  color: #fff !important;
  font-size: 1.02rem !important;
  font-weight: 720 !important;
  box-shadow: 0 8px 18px rgba(20, 104, 194, .17) !important;
}
.provider-action-primary:hover:not(:disabled) {
  border-color: #0d58a7 !important;
  background: #0f5eb2 !important;
  box-shadow: 0 10px 22px rgba(20, 104, 194, .22) !important;
}
.provider-action-primary > .icon:last-child {
  margin-left: .15rem;
}
.provider-action-primary small {
  color: rgba(255,255,255,.82) !important;
  font-size: .68rem !important;
  font-weight: 540 !important;
}
.provider-decision-contact-actions {
  gap: .55rem !important;
}
.provider-decision-contact-actions .provider-action-button {
  min-height: 3.1rem !important;
}
.provider-decision-primary.provider-action-button {
  width: 100%;
  margin-top: .05rem;
}
.provider-detail-quick-buttons {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem !important;
  width: min(36rem, 100%);
}
.provider-detail-quick-buttons .provider-action-primary {
  grid-column: 1 / -1;
}
.provider-detail-quick-buttons .provider-action-button {
  width: 100%;
}

/* The overlay never covers or dims the drawer itself. */
@media (max-width: 991.98px) {
  .workspace-sidebar.portal-sidebar {
    width: var(--provider-mobile-drawer-width) !important;
    z-index: 3000 !important;
    isolation: isolate;
    contain: layout paint;
    background: #fff !important;
    filter: none !important;
  }
  .portal-sidebar-overlay {
    inset: 0 0 0 var(--provider-mobile-drawer-width) !important;
    z-index: 2990 !important;
    width: auto !important;
    background: rgba(15, 23, 42, .42) !important;
  }
  body.portal-sidebar-open .workspace-sidebar.portal-sidebar {
    opacity: 1 !important;
    filter: none !important;
  }
  body.portal-sidebar-open .workspace-sidebar.portal-sidebar,
  body.portal-sidebar-open .workspace-sidebar.portal-sidebar * {
    pointer-events: auto !important;
  }
  body.portal-sidebar-open .workspace-sidebar.portal-sidebar a,
  body.portal-sidebar-open .workspace-sidebar.portal-sidebar button {
    position: relative;
    z-index: 2;
  }
  .provider-visible-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .provider-detail-quick-buttons {
    width: 100%;
  }
}

@media (max-width: 767.98px) {
  .provider-conversion-search-row {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }
  .provider-conversion-search-row .workspace-search-field {
    grid-column: 1 / -1;
  }
  .provider-conversion-search-row .provider-filter-apply {
    min-width: 6.7rem;
  }
  .provider-visible-filters {
    display: flex;
    gap: .55rem;
    overflow-x: auto;
    padding: .68rem .72rem .82rem;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
  }
  .provider-visible-filters > label {
    flex: 0 0 min(12rem, 68vw);
    scroll-snap-align: start;
  }
  .provider-visible-filters > label:last-child {
    flex-basis: min(10.5rem, 58vw);
  }
  .provider-action-button {
    min-height: 3.2rem !important;
    padding: .72rem .85rem !important;
    font-size: .97rem !important;
  }
  .provider-action-primary {
    min-height: 3.55rem !important;
  }
}

@media (max-width: 479.98px) {
  :root { --provider-mobile-drawer-width: min(18.25rem, 86vw); }
  .provider-decision-contact-actions,
  .provider-detail-quick-buttons {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .provider-detail-quick-buttons .provider-action-primary {
    grid-column: 1 / -1;
  }
  .provider-action-button {
    gap: .55rem;
    padding-left: .68rem !important;
    padding-right: .68rem !important;
  }
}

/* =====================================================================
   Provider navigation + customer-card consistency correction
   ===================================================================== */
:root {
  --portal-sidebar-width: 14.75rem;
  --provider-mobile-drawer-width: min(19.5rem, calc(100vw - 3.25rem));
}

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

/* The account identity already lives in the header/profile menu. */
.portal-sidebar-account,
.workspace-sidebar-account {
  display: none !important;
}

.workspace-sidebar.portal-sidebar {
  width: var(--portal-sidebar-width) !important;
  min-width: var(--portal-sidebar-width) !important;
  border-right: 1px solid #e4e9f0;
  background: #f8fafc !important;
}

.workspace-sidebar-content {
  height: 100%;
  padding: .85rem .68rem .72rem !important;
  overflow-x: hidden;
}

.workspace-sidebar-mobile-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 3rem;
  margin: -.15rem -.05rem .65rem;
  padding: .2rem .28rem .55rem .55rem;
  border-bottom: 1px solid #e5eaf0;
}
.workspace-sidebar-mobile-head strong {
  color: #263447;
  font-size: .92rem;
  font-weight: 760;
}
.workspace-sidebar-mobile-head .portal-sidebar-close {
  position: static !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.35rem;
  height: 2.35rem;
  border: 0;
  border-radius: .68rem;
  background: #eef3f8;
  color: #344054;
  font-size: 1.35rem;
  line-height: 1;
}

.workspace-primary-nav-action {
  min-height: 3.15rem !important;
  margin: 0 .12rem .9rem !important;
  padding: .72rem .82rem !important;
  border-radius: .72rem !important;
  box-shadow: 0 6px 16px rgba(20, 104, 194, .14);
  font-size: .9rem !important;
  font-weight: 740 !important;
}
.workspace-primary-nav-action .icon { width: 1.15rem !important; height: 1.15rem !important; }
.workspace-primary-nav-action .workspace-nav-arrow { width: .92rem !important; }

.workspace-sidebar-nav {
  display: grid !important;
  gap: .18rem !important;
}
.workspace-nav-label {
  margin: .65rem .6rem .28rem !important;
  color: #7a8698 !important;
  font-size: .64rem !important;
  font-weight: 800 !important;
  letter-spacing: .1em !important;
}
.workspace-nav-label-account {
  margin-top: .95rem !important;
  padding-top: .78rem;
  border-top: 1px solid #e4e9f0;
}
.workspace-sidebar-nav a {
  min-height: 2.85rem !important;
  gap: .72rem !important;
  padding: .64rem .72rem !important;
  border-radius: .66rem !important;
  color: #475467 !important;
  font-size: .84rem !important;
  font-weight: 650 !important;
}
.workspace-sidebar-nav a .icon {
  width: 1.08rem !important;
  height: 1.08rem !important;
  color: #738097 !important;
}
.workspace-sidebar-nav a:hover {
  background: #eef3f8 !important;
  color: #25364c !important;
}
.workspace-sidebar-nav a.active {
  background: #e8f2ff !important;
  color: #0759a9 !important;
  box-shadow: inset 3px 0 0 #1468c2 !important;
}
.workspace-sidebar-nav a.active .icon { color: #1468c2 !important; }

.workspace-sidebar-footer {
  margin-top: auto;
  gap: .12rem !important;
  padding: .68rem .12rem 0 !important;
  border-top: 1px solid #e4e9f0 !important;
}
.workspace-sidebar-footer a,
.workspace-sidebar-footer button {
  min-height: 2.7rem !important;
  gap: .68rem !important;
  padding: .58rem .68rem !important;
  border-radius: .62rem !important;
  color: #667085 !important;
  font-size: .8rem !important;
}
.workspace-sidebar-footer a:hover,
.workspace-sidebar-footer button:hover {
  background: #eef3f8 !important;
  color: #344054 !important;
}
.workspace-sidebar-footer button:hover { color: #b42318 !important; }

/* Unlocked cards read as one component, not two unrelated boxes. */
.provider-decision-card.is-unlocked {
  overflow: hidden;
  border: 1px solid #dce4ed !important;
  border-left: 4px solid #1468c2 !important;
  border-radius: .86rem !important;
  background: #fff;
  box-shadow: 0 6px 18px rgba(23, 43, 77, .055) !important;
}
.provider-decision-card.is-unlocked .provider-decision-main {
  background: #fff;
}
.provider-decision-card.is-unlocked .provider-decision-action {
  border-left-color: #dfe7f0 !important;
  background: linear-gradient(180deg, #f7fbff 0%, #f4f9ff 100%) !important;
}
.provider-decision-card.is-unlocked .provider-decision-facts > div {
  background: #f8fafc;
  border-color: #e1e7ef;
}
.provider-decision-card.is-unlocked .provider-decision-facts span,
.provider-action-kicker,
.provider-minimal-category {
  text-transform: uppercase;
  letter-spacing: .075em;
}
.provider-customer-name,
.provider-decision-facts strong,
.provider-detail-quick-copy strong {
  text-transform: none !important;
  letter-spacing: -.012em;
}
.provider-customer-name {
  color: #1d2939 !important;
  font-size: 1.04rem !important;
  font-weight: 760 !important;
}
.provider-customer-mobile { color: #667085 !important; font-size: .82rem !important; }
.provider-action-balance { color: #667085 !important; }

@media (min-width: 992px) {
  .content-wrapper { max-width: calc(100% - var(--portal-sidebar-width)) !important; }
  .workspace-brand { min-width: calc(var(--portal-sidebar-width) - 1rem) !important; }
}

/* Stable mobile drawer: the page never slides and bottom navigation disappears. */
@media (max-width: 991.98px) {
  .workspace-sidebar.portal-sidebar {
    inset: var(--portal-navbar-height) auto 0 0 !important;
    width: var(--provider-mobile-drawer-width) !important;
    min-width: 0 !important;
    max-width: calc(100vw - 3.25rem) !important;
    height: calc(100dvh - var(--portal-navbar-height)) !important;
    transform: translate3d(-100%, 0, 0) !important;
    overflow: hidden !important;
    background: #f8fafc !important;
    box-shadow: 16px 0 36px rgba(15, 23, 42, .2) !important;
    contain: layout paint;
    overscroll-behavior: contain;
  }
  body.portal-sidebar-open .workspace-sidebar.portal-sidebar {
    transform: translate3d(0, 0, 0) !important;
  }
  .workspace-sidebar-content {
    height: 100% !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }
  .portal-sidebar-overlay {
    inset: var(--portal-navbar-height) 0 0 0 !important;
    width: 100% !important;
    background: rgba(15, 23, 42, .42) !important;
  }
  body.portal-sidebar-open .workspace-mobile-nav.portal-mobile-nav {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(100%) !important;
  }
  .workspace-mobile-nav.portal-mobile-nav {
    transition: opacity .16s ease, visibility .16s ease, transform .16s ease;
  }
  .page-content,
  .content-wrapper,
  .workspace-topbar {
    max-width: 100vw;
  }
}

@media (max-width: 767.98px) {
  .provider-decision-card.is-unlocked .provider-decision-action {
    border-top: 1px solid #dfe7f0 !important;
    border-left: 0 !important;
  }
}

/* =====================================================================
   Findoly rich lead cards · compact, colourful and conversion focused
   ===================================================================== */
.provider-decision-card {
  min-height: 0 !important;
  grid-template-columns: minmax(0, 1fr) minmax(17rem, 19rem) !important;
  border-radius: 1rem !important;
  box-shadow: 0 5px 18px rgba(23, 43, 77, .065) !important;
}
.provider-decision-card::before { width: 5px !important; opacity: 1 !important; }
.provider-decision-card.is-marketplace.is-priority-high::before { background: #1468c2 !important; }
.provider-decision-card.is-marketplace.is-priority-normal::before { background: #e39a18 !important; }
.provider-decision-card.is-marketplace.is-priority-low::before { background: #159b78 !important; }
.provider-decision-card.is-marketplace.is-priority-normal::before { background: #8793a3 !important; }
.provider-decision-card.is-unlocked.is-success::before { background: #079455 !important; }
.provider-decision-card.is-unlocked.is-pending::before,
.provider-decision-card.is-unlocked.is-warning::before,
.provider-decision-card.is-overdue::before { background: #e19a18 !important; }
.provider-decision-card.is-unlocked.is-danger::before { background: #d04444 !important; }
.provider-decision-card.is-unlocked.is-neutral::before { background: #667085 !important; }

.provider-decision-main {
  padding: 1.15rem 1.2rem 1.15rem 1.35rem !important;
}
.provider-conversion-card-top { align-items: flex-start !important; }
.provider-conversion-title {
  margin: .65rem 0 .28rem !important;
  font-size: clamp(1.18rem, 1.45vw, 1.42rem) !important;
  line-height: 1.25 !important;
  text-transform: none !important;
}
.provider-conversion-summary {
  max-width: 62rem !important;
  min-height: 0 !important;
  margin: .08rem 0 .72rem !important;
  font-size: .86rem !important;
  line-height: 1.5 !important;
}
.provider-decision-location {
  width: fit-content;
  max-width: 100%;
  min-height: 2.35rem;
  padding: .48rem .65rem;
  border: 1px solid #e1e7ef;
  border-radius: .68rem;
  background: #f8fafc;
}

.provider-priority-badge {
  min-height: 2rem !important;
  padding: .38rem .72rem !important;
  border-width: 1px !important;
  font-size: .74rem !important;
  font-weight: 760 !important;
}
.provider-priority-badge.is-high {
  border-color: #b8d5f3 !important;
  background: #eaf4ff !important;
  color: #0c5aa6 !important;
}
.provider-priority-badge.is-medium {
  border-color: #f0d395 !important;
  background: #fff6df !important;
  color: #8a5700 !important;
}
.provider-priority-badge.is-low {
  border-color: #b5e2d2 !important;
  background: #eaf9f3 !important;
  color: #087552 !important;
}
.provider-priority-badge.is-not_assessed {
  border-color: #d7dde5 !important;
  background: #f5f7f9 !important;
  color: #5d6978 !important;
}

.provider-lead-insight-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .62rem;
  margin-top: .85rem;
}
.provider-lead-insight-grid.is-unlocked-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.provider-lead-insight {
  position: relative;
  display: grid;
  align-content: center;
  gap: .25rem;
  min-width: 0;
  min-height: 4.45rem;
  padding: .68rem .72rem;
  overflow: hidden;
  border: 1px solid #e0e7ef;
  border-radius: .75rem;
  background: #f8fafc;
}
.provider-lead-insight::after {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 2px;
  background: #cbd5e1;
}
.provider-lead-insight > span {
  display: flex;
  align-items: center;
  gap: .34rem;
  min-width: 0;
  color: #65758a;
  font-size: .62rem;
  font-weight: 820;
  letter-spacing: .065em;
  line-height: 1.2;
  text-transform: uppercase;
}
.provider-lead-insight > span .icon {
  flex: 0 0 auto;
  width: .82rem;
  height: .82rem;
}
.provider-lead-insight > strong {
  min-width: 0;
  color: #202b3a;
  font-size: .77rem;
  font-weight: 740;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.provider-lead-insight > strong b { font-size: .92rem; }
.provider-lead-insight.is-preferred {
  border-color: #d9d2f2;
  background: #f7f4ff;
}
.provider-lead-insight.is-preferred::after { background: #8466c9; }
.provider-lead-insight.is-preferred > span .icon { color: #7256b6; }
.provider-lead-insight.is-age,
.provider-lead-insight.is-unlocked-date {
  border-color: #d8e0ea;
  background: #f6f8fb;
}
.provider-lead-insight.is-age::after,
.provider-lead-insight.is-unlocked-date::after { background: #6d7b8d; }
.provider-lead-insight.is-interest {
  border-color: #c6e1f0;
  background: #eff8fc;
}
.provider-lead-insight.is-interest::after { background: #2388b8; }
.provider-lead-insight.is-interest > span .icon { color: #177aa8; }
.provider-lead-insight.is-open-result {
  border-color: #c9daf2;
  background: #f1f6fd;
}
.provider-lead-insight.is-open-result::after { background: #3c7dc1; }
.provider-lead-insight.is-customer {
  border-color: #c7d9f0;
  background: #f1f6fd;
}
.provider-lead-insight.is-customer::after { background: #1468c2; }
.provider-lead-insight.is-customer > span .icon { color: #1468c2; }
.provider-lead-insight.is-activity {
  border-color: #dcd4ef;
  background: #f8f5fc;
}
.provider-lead-insight.is-activity::after { background: #795bb0; }
.provider-lead-insight.is-activity > span .icon { color: #795bb0; }
.provider-lead-insight.is-confirmed,
.provider-lead-insight.is-success {
  border-color: #b9e4cf;
  background: #ecf9f3;
}
.provider-lead-insight.is-confirmed::after,
.provider-lead-insight.is-success::after { background: #079455; }
.provider-lead-insight.is-confirmed > span,
.provider-lead-insight.is-confirmed > strong,
.provider-lead-insight.is-success > span,
.provider-lead-insight.is-success > strong { color: #08734a; }
.provider-lead-insight.is-pending,
.provider-lead-insight.is-warning,
.provider-lead-insight.is-overdue {
  border-color: #efd39d;
  background: #fff7e7;
}
.provider-lead-insight.is-pending::after,
.provider-lead-insight.is-warning::after,
.provider-lead-insight.is-overdue::after { background: #e19a18; }
.provider-lead-insight.is-pending > span,
.provider-lead-insight.is-pending > strong,
.provider-lead-insight.is-warning > span,
.provider-lead-insight.is-warning > strong,
.provider-lead-insight.is-overdue > span,
.provider-lead-insight.is-overdue > strong { color: #8a5900; }
.provider-lead-insight.is-danger {
  border-color: #efc3c3;
  background: #fff1f1;
}
.provider-lead-insight.is-danger::after { background: #d04444; }
.provider-lead-insight.is-danger > span,
.provider-lead-insight.is-danger > strong { color: #a12d2d; }
.provider-lead-insight.is-neutral {
  border-color: #d8dee7;
  background: #f5f7f9;
}
.provider-lead-insight.is-neutral::after { background: #667085; }

.provider-decision-action {
  border-left-color: #dce5ef !important;
  background: linear-gradient(180deg, #f4f8ff 0%, #eef5fd 100%) !important;
}
.provider-decision-action.is-unlocked-action {
  background: linear-gradient(180deg, #f5fbf8 0%, #edf8f3 100%) !important;
}
.provider-decision-action.is-unlocked-action.is-pending,
.provider-decision-action.is-unlocked-action.is-warning {
  background: linear-gradient(180deg, #fffaf0 0%, #fff5df 100%) !important;
}
.provider-decision-action.is-unlocked-action.is-danger {
  background: linear-gradient(180deg, #fff7f7 0%, #fff0f0 100%) !important;
}
.provider-decision-action.is-unlocked-action.is-neutral {
  background: linear-gradient(180deg, #f8fafc 0%, #f2f5f8 100%) !important;
}
.provider-decision-action-inner {
  justify-content: flex-start !important;
  padding: 1.1rem !important;
}
.provider-action-kicker {
  width: fit-content;
  padding: .28rem .48rem;
  border-radius: 999px;
  background: rgba(20, 104, 194, .09);
  color: #0d5ba8;
}
.provider-decision-action.is-unlocked-action.is-success .provider-action-kicker {
  background: #dff5e9;
  color: #08734a;
}
.provider-decision-action.is-unlocked-action.is-pending .provider-action-kicker,
.provider-decision-action.is-unlocked-action.is-warning .provider-action-kicker {
  background: #ffedc8;
  color: #885600;
}
.provider-customer-name { font-size: 1.08rem !important; }
.provider-customer-mobile { font-size: .76rem !important; }

@media (max-width: 1399.98px) {
  .provider-lead-insight-grid.is-unlocked-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .provider-lead-insight-grid.is-marketplace-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1099.98px) {
  .provider-decision-card { grid-template-columns: minmax(0, 1fr) 16rem !important; }
  .provider-lead-insight-grid,
  .provider-lead-insight-grid.is-unlocked-grid,
  .provider-lead-insight-grid.is-marketplace-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
  .provider-decision-card { display: flex !important; }
  .provider-decision-main { padding: .95rem .9rem .9rem 1rem !important; }
  .provider-decision-action { border-top: 1px solid #dce5ef !important; border-left: 0 !important; }
  .provider-lead-insight { min-height: 4.15rem; padding: .62rem .65rem; }
}
@media (max-width: 389.98px) {
  .provider-lead-insight-grid,
  .provider-lead-insight-grid.is-unlocked-grid,
  .provider-lead-insight-grid.is-marketplace-grid { grid-template-columns: 1fr; }
}


/* =====================================================================
   Findoly provider lead layouts · neutral cards + reliable mobile drawer
   ===================================================================== */

/* Professional cards: no decorative edge strip or coloured top line. */
.provider-decision-card,
.provider-decision-card.is-unlocked {
  border: 1px solid #dfe5ec !important;
  border-left: 1px solid #dfe5ec !important;
  border-radius: .9rem !important;
  background: #ffffff !important;
  box-shadow: 0 4px 16px rgba(23, 43, 77, .055) !important;
}
.provider-decision-card::before,
.provider-decision-card::after,
.provider-decision-card.is-unlocked::before,
.provider-decision-card.is-unlocked::after {
  display: none !important;
  content: none !important;
}
.provider-decision-card:hover {
  transform: translateY(-1px) !important;
  border-color: #cbd6e2 !important;
  box-shadow: 0 9px 24px rgba(23, 43, 77, .085) !important;
}
.provider-decision-card.is-unlocked .provider-decision-main { background: #fff !important; }

/* Insight cells are neutral by default; colour is reserved for real status. */
.provider-lead-insight,
.provider-lead-insight.is-preferred,
.provider-lead-insight.is-age,
.provider-lead-insight.is-unlocked-date,
.provider-lead-insight.is-interest,
.provider-lead-insight.is-open-result,
.provider-lead-insight.is-customer,
.provider-lead-insight.is-activity,
.provider-lead-insight.is-neutral {
  border-color: #e2e7ed !important;
  background: #f8fafc !important;
  color: #344054 !important;
}
.provider-lead-insight::after { display: none !important; content: none !important; }
.provider-lead-insight > span,
.provider-lead-insight > strong { color: inherit; }
.provider-lead-insight > span .icon { color: #667085 !important; }
.provider-lead-insight.is-confirmed,
.provider-lead-insight.is-success {
  border-color: #cde8da !important;
  background: #f1faf5 !important;
  color: #08734a !important;
}
.provider-lead-insight.is-pending,
.provider-lead-insight.is-warning,
.provider-lead-insight.is-overdue {
  border-color: #ecd9b3 !important;
  background: #fffaf0 !important;
  color: #805400 !important;
}
.provider-lead-insight.is-danger {
  border-color: #ebcdcd !important;
  background: #fff7f7 !important;
  color: #a12d2d !important;
}

/* The action panel stays subtle and connected to the main card. */
.provider-decision-action,
.provider-decision-card.is-unlocked .provider-decision-action,
.provider-decision-action.is-unlocked-action,
.provider-decision-action.is-unlocked-action.is-neutral {
  border-left-color: #dfe5ec !important;
  background: #f7f9fc !important;
}
.provider-decision-action.is-unlocked-action.is-success { background: #f3faf6 !important; }
.provider-decision-action.is-unlocked-action.is-pending,
.provider-decision-action.is-unlocked-action.is-warning { background: #fffbf2 !important; }
.provider-decision-action.is-unlocked-action.is-danger { background: #fff8f8 !important; }

/* Results toolbar and view switch. */
.workspace-results-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: .7rem;
  flex-wrap: wrap;
}
.provider-view-switch {
  display: inline-flex;
  align-items: center;
  gap: .18rem;
  padding: .2rem;
  border: 1px solid #dfe5ec;
  border-radius: .68rem;
  background: #fff;
}
.provider-view-switch button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  min-height: 2.15rem;
  padding: .38rem .58rem;
  border: 0;
  border-radius: .5rem;
  background: transparent;
  color: #667085;
  font-size: .72rem;
  font-weight: 720;
  line-height: 1;
  cursor: pointer;
}
.provider-view-switch button:hover { background: #f2f5f8; color: #344054; }
.provider-view-switch button.active {
  background: #eaf3ff;
  color: #0b5fae;
  box-shadow: inset 0 0 0 1px #c9def4;
}
.provider-view-switch .icon { width: .92rem; height: .92rem; }

/* Row view: full-width decision rows. */
.workspace-lead-grid.provider-minimal-list.is-row-view {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: .85rem !important;
}
.workspace-lead-grid.is-row-view .provider-decision-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(17rem, 19rem) !important;
}

/* Grid view: denser two-column cards with the action area below. */
.workspace-lead-grid.provider-minimal-list.is-grid-view {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: .9rem !important;
}
.workspace-lead-grid.is-grid-view .provider-decision-card {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0;
  height: 100%;
}
.workspace-lead-grid.is-grid-view .provider-decision-main { flex: 1 1 auto; padding: 1rem !important; }
.workspace-lead-grid.is-grid-view .provider-decision-action {
  flex: 0 0 auto;
  border-top: 1px solid #dfe5ec !important;
  border-left: 0 !important;
}
.workspace-lead-grid.is-grid-view .provider-decision-action-inner { padding: .9rem 1rem 1rem !important; }
.workspace-lead-grid.is-grid-view .provider-lead-insight-grid,
.workspace-lead-grid.is-grid-view .provider-lead-insight-grid.is-marketplace-grid,
.workspace-lead-grid.is-grid-view .provider-lead-insight-grid.is-unlocked-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.workspace-lead-grid.is-grid-view .provider-conversion-title { font-size: 1.16rem !important; }
.workspace-lead-grid.is-grid-view .provider-conversion-summary {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

/* Mobile drawer links are never covered by the overlay. */
@media (max-width: 991.98px) {
  .workspace-sidebar.portal-sidebar {
    z-index: 3200 !important;
    isolation: isolate;
  }
  .portal-sidebar-overlay {
    z-index: 3100 !important;
    left: var(--provider-mobile-drawer-width) !important;
    width: auto !important;
  }
  body.portal-sidebar-open .workspace-sidebar.portal-sidebar,
  body.portal-sidebar-open .workspace-sidebar.portal-sidebar * {
    pointer-events: auto !important;
  }
  body.portal-sidebar-open .portal-sidebar-overlay {
    pointer-events: auto !important;
  }
}

@media (max-width: 1199.98px) {
  .workspace-lead-grid.provider-minimal-list.is-grid-view { grid-template-columns: 1fr !important; }
  .workspace-lead-grid.is-row-view .provider-decision-card { grid-template-columns: minmax(0, 1fr) 16rem !important; }
}

@media (max-width: 767.98px) {
  .workspace-results-bar { align-items: flex-start !important; }
  .workspace-results-actions { width: 100%; justify-content: space-between; }
  .provider-view-switch button span { display: none; }
  .provider-view-switch button { width: 2.2rem; padding-inline: .42rem; }
  .workspace-lead-grid.provider-minimal-list.is-grid-view,
  .workspace-lead-grid.provider-minimal-list.is-row-view { grid-template-columns: 1fr !important; }
  .workspace-lead-grid.is-row-view .provider-decision-card,
  .workspace-lead-grid.is-grid-view .provider-decision-card {
    display: flex !important;
    flex-direction: column !important;
  }
  .workspace-lead-grid.is-row-view .provider-decision-action,
  .workspace-lead-grid.is-grid-view .provider-decision-action {
    border-top: 1px solid #dfe5ec !important;
    border-left: 0 !important;
  }
}

/* =====================================================================
   Findoly logo-aligned mobile UI · navy, sky and restrained orange
   ===================================================================== */
:root,
html[data-portal-theme="professional-blue"] {
  --findoly-navy: #072f5f;
  --findoly-navy-hover: #05264d;
  --findoly-navy-soft: #edf4fb;
  --findoly-sky: #35b9ef;
  --findoly-sky-soft: #edf9fe;
  --findoly-orange: #fe6821;
  --findoly-orange-hover: #e95717;
  --findoly-orange-soft: #fff3ec;
  --workspace-primary: var(--findoly-navy);
  --workspace-primary-hover: var(--findoly-navy-hover);
  --workspace-primary-soft: var(--findoly-navy-soft);
  --portal-accent: var(--findoly-navy);
  --portal-accent-dark: var(--findoly-navy-hover);
  --portal-accent-rgb: 7, 47, 95;
  --portal-accent-soft: var(--findoly-navy-soft);
  --workspace-bg: #f5f8fc;
  --workspace-text: #15263b;
  --workspace-muted: #65758a;
  --workspace-subtle: #8794a6;
  --workspace-border: #dde5ee;
  --workspace-border-strong: #cbd7e4;
  --workspace-soft: #f7f9fc;
  --portal-page: #f5f8fc;
  --portal-text: #15263b;
  --portal-muted: #65758a;
  --portal-border: #dde5ee;
  --portal-border-soft: #e9eef4;
  --portal-card-shadow: 0 5px 18px rgba(7, 47, 95, .055);
  --portal-card-shadow-hover: 0 12px 28px rgba(7, 47, 95, .09);
}

body { background: #f5f8fc; }

/* Logo and top-bar controls share the same calm geometry. */
.workspace-topbar.portal-navbar {
  border-bottom-color: #e2e9f1;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 1px 0 rgba(7, 47, 95, .04);
}
.workspace-brand .portal-brand-logo {
  width: 7.35rem;
  max-height: 2.15rem;
}
.workspace-brand .portal-brand-product {
  border-left-color: #dce5ee;
  color: #5f6f82;
}
.workspace-marketplace-shortcut,
.workspace-icon-button,
.workspace-credit-chip,
.workspace-user-button {
  border-radius: .78rem;
}
.workspace-marketplace-shortcut:hover,
.workspace-icon-button:hover,
.workspace-credit-chip:hover {
  border-color: #b7c8da;
  color: var(--findoly-navy);
  background: #f8fbfe;
}
.workspace-credit-chip strong { color: var(--findoly-navy) !important; }
.workspace-user-button > span:first-child {
  background: var(--findoly-navy-soft) !important;
  color: var(--findoly-navy) !important;
}

.btn-primary,
.provider-action-primary,
.provider-unlock-cta {
  border-color: var(--findoly-navy) !important;
  background: var(--findoly-navy) !important;
  color: #fff !important;
  box-shadow: 0 5px 14px rgba(7, 47, 95, .14);
}
.btn-primary:hover,
.btn-primary:focus,
.provider-action-primary:hover,
.provider-action-primary:focus,
.provider-unlock-cta:hover,
.provider-unlock-cta:focus {
  border-color: var(--findoly-navy-hover) !important;
  background: var(--findoly-navy-hover) !important;
  color: #fff !important;
}
.form-control:focus,
.form-select:focus {
  border-color: var(--findoly-sky) !important;
  box-shadow: 0 0 0 .2rem rgba(53, 185, 239, .14) !important;
}

/* Sidebar: brand-led, light and professional. */
.workspace-sidebar.portal-sidebar {
  border-right-color: #e0e7ef !important;
  background: #fff !important;
}
.workspace-sidebar-mobile-head {
  min-height: 3.6rem;
  margin: -.1rem 0 .7rem;
  padding: .25rem .18rem .7rem .38rem;
  border-bottom-color: #e3eaf2;
}
.workspace-sidebar-drawer-brand {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  padding: .2rem;
  border-radius: .55rem;
}
.workspace-sidebar-drawer-brand img {
  display: block;
  width: 6.75rem;
  height: auto;
}
.workspace-sidebar-mobile-head .portal-sidebar-close {
  background: #f3f6f9;
  color: var(--findoly-navy);
}
.workspace-sidebar-mobile-head .portal-sidebar-close:hover {
  background: var(--findoly-orange-soft);
  color: var(--findoly-orange-hover);
}
.workspace-primary-nav-action {
  border: 1px solid var(--findoly-navy) !important;
  background: var(--findoly-navy) !important;
  box-shadow: 0 7px 18px rgba(7, 47, 95, .15) !important;
}
.workspace-primary-nav-action:hover { background: var(--findoly-navy-hover) !important; }
.workspace-primary-nav-action .workspace-nav-arrow { color: #ff9a69; }
.workspace-nav-label { color: #8090a2 !important; }
.workspace-sidebar-nav a.active {
  background: var(--findoly-navy-soft) !important;
  color: var(--findoly-navy) !important;
  box-shadow: none !important;
}
.workspace-sidebar-nav a.active .icon { color: var(--findoly-navy) !important; }
.workspace-sidebar-nav a:hover {
  background: #f3f7fb !important;
  color: var(--findoly-navy) !important;
}
.workspace-sidebar-footer a:hover { color: var(--findoly-navy) !important; }

/* Cards remain neutral; the logo colours are limited to useful emphasis. */
.portal-card,
.provider-decision-card,
.provider-decision-card.is-unlocked {
  border-color: #dce5ee !important;
  border-radius: .92rem !important;
  background: #fff !important;
  box-shadow: 0 5px 18px rgba(7, 47, 95, .055) !important;
}
.provider-decision-card:hover {
  border-color: #c6d4e1 !important;
  box-shadow: 0 10px 25px rgba(7, 47, 95, .085) !important;
}
.provider-minimal-category,
.workspace-eyebrow {
  color: var(--findoly-orange-hover) !important;
}
.provider-conversion-title,
.provider-conversion-title a,
.provider-customer-name {
  color: #14283f !important;
}
.provider-decision-location {
  border-color: #e1e8ef;
  background: #f8fafc;
}
.provider-decision-location .icon { color: var(--findoly-sky); }
.provider-priority-badge.is-high {
  border-color: #bdd3e7 !important;
  background: var(--findoly-navy-soft) !important;
  color: var(--findoly-navy) !important;
}
.provider-priority-badge.is-medium {
  border-color: #f2d1bd !important;
  background: var(--findoly-orange-soft) !important;
  color: #a64518 !important;
}
.provider-priority-badge.is-not_assessed,
.provider-priority-badge.is-low {
  border-color: #d9e1e9 !important;
  background: #f6f8fa !important;
  color: #5f6f82 !important;
}
.provider-lead-insight,
.provider-lead-insight.is-preferred,
.provider-lead-insight.is-age,
.provider-lead-insight.is-unlocked-date,
.provider-lead-insight.is-interest,
.provider-lead-insight.is-open-result,
.provider-lead-insight.is-customer,
.provider-lead-insight.is-activity,
.provider-lead-insight.is-neutral {
  border-color: #e1e8ef !important;
  background: #f8fafc !important;
}
.provider-lead-insight > span .icon { color: #718096 !important; }
.provider-decision-action,
.provider-decision-card.is-unlocked .provider-decision-action,
.provider-decision-action.is-unlocked-action,
.provider-decision-action.is-unlocked-action.is-neutral {
  border-color: #dfe7ef !important;
  background: #f7f9fc !important;
}
.provider-action-kicker {
  background: var(--findoly-orange-soft) !important;
  color: #a9471a !important;
}
.provider-action-outline {
  border-color: #c8d5e2 !important;
  background: #fff !important;
  color: var(--findoly-navy) !important;
}
.provider-action-outline:hover {
  border-color: #9eb5ca !important;
  background: var(--findoly-navy-soft) !important;
  color: var(--findoly-navy) !important;
}
.provider-action-whatsapp {
  border-color: #b9dac9 !important;
  background: #fff !important;
  color: #087a47 !important;
}

/* View selector uses the same navy focus and a restrained orange detail. */
.provider-view-switch { border-color: #d7e1eb; border-radius: .72rem; }
.provider-view-switch button.active {
  background: var(--findoly-navy-soft) !important;
  color: var(--findoly-navy) !important;
  box-shadow: inset 0 0 0 1px #c5d8e9 !important;
}
.provider-quick-filter-track button.active {
  border-color: #b9cde0 !important;
  background: var(--findoly-navy-soft) !important;
  color: var(--findoly-navy) !important;
}

/* Mobile shell: balanced logo, clear controls and reliable touch areas. */
@media (max-width: 991.98px) {
  :root { --portal-navbar-height: 4.25rem; }

  .workspace-topbar.portal-navbar {
    height: var(--portal-navbar-height);
    min-height: var(--portal-navbar-height);
  }
  .workspace-topbar-inner {
    display: grid;
    grid-template-columns: 2.6rem minmax(0, 1fr) auto;
    gap: .55rem;
    padding: 0 .75rem;
  }
  .portal-mobile-menu {
    width: 2.55rem !important;
    height: 2.55rem !important;
    border: 1px solid #d6e0ea !important;
    border-radius: .78rem !important;
    background: #fff !important;
    color: var(--findoly-navy) !important;
  }
  .portal-mobile-menu:hover,
  .portal-mobile-menu[aria-expanded="true"] {
    border-color: #f1c5ae !important;
    background: var(--findoly-orange-soft) !important;
    color: var(--findoly-orange-hover) !important;
  }
  .workspace-brand {
    min-width: 0 !important;
    justify-self: center;
    gap: 0;
  }
  .workspace-brand .portal-brand-logo {
    width: 6.8rem !important;
    max-height: 2.25rem;
  }
  .workspace-topbar-actions {
    justify-self: end;
    gap: .35rem;
  }
  .workspace-credit-chip {
    min-height: 2.45rem !important;
    padding: .42rem .58rem !important;
    border-color: #d8e2ec !important;
    border-radius: .76rem !important;
    background: #fff !important;
  }
  .workspace-credit-chip .icon { color: var(--findoly-orange-hover); }
  .workspace-credit-chip strong {
    max-width: 5.9rem;
    overflow: hidden;
    font-size: .72rem !important;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .workspace-sidebar.portal-sidebar {
    inset: var(--portal-navbar-height) auto 0 0 !important;
    background: #fff !important;
    box-shadow: 15px 0 35px rgba(7, 47, 95, .18) !important;
  }
  .portal-sidebar-overlay {
    inset: var(--portal-navbar-height) 0 0 var(--provider-mobile-drawer-width) !important;
    background: rgba(7, 32, 60, .38) !important;
    backdrop-filter: blur(1px);
  }
  .workspace-mobile-nav.portal-mobile-nav {
    min-height: 4.35rem;
    padding-bottom: max(.2rem, env(safe-area-inset-bottom));
    border-top-color: #dce5ee;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 -7px 22px rgba(7, 47, 95, .09);
  }
  .workspace-mobile-nav.portal-mobile-nav a {
    min-height: 4rem;
    color: #738196;
    font-size: .68rem;
    font-weight: 680;
  }
  .workspace-mobile-nav.portal-mobile-nav a .icon {
    width: 1.2rem;
    height: 1.2rem;
  }
  .workspace-mobile-nav.portal-mobile-nav a.active {
    color: var(--findoly-navy) !important;
  }
  .workspace-mobile-nav.portal-mobile-nav a.active::before {
    width: 1.5rem !important;
    height: .18rem !important;
    border-radius: 999px !important;
    background: var(--findoly-orange) !important;
  }
  .workspace-content.content {
    padding: 1rem .85rem calc(5.15rem + env(safe-area-inset-bottom));
  }

  .workspace-lead-command { gap: .75rem; }
  .workspace-lead-tabs.provider-lead-tabs { border-radius: .82rem; }
  .workspace-lead-tabs.provider-lead-tabs > a { min-height: 3rem; padding: .58rem .65rem; }
  .provider-quick-filter-track {
    scrollbar-width: none;
    padding-bottom: .08rem;
  }
  .provider-quick-filter-track::-webkit-scrollbar { display: none; }
  .provider-quick-filter-track button {
    min-height: 2.35rem;
    border-radius: 999px;
    white-space: nowrap;
  }
  .workspace-filter-card { border-radius: .9rem !important; }
  .provider-visible-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .62rem !important;
  }
  .provider-visible-filters label > span {
    font-size: .68rem;
    color: #69798b;
  }
  .provider-visible-filters .form-control,
  .provider-visible-filters .form-select {
    min-height: 2.55rem;
    font-size: .8rem;
  }
  .workspace-results-actions { align-items: center; }
  .provider-view-switch button {
    width: auto !important;
    min-width: 3.8rem;
    min-height: 2.2rem;
    padding: .4rem .58rem !important;
  }
  .provider-view-switch button span { display: inline !important; }

  .provider-decision-card,
  .provider-decision-card.is-unlocked {
    border-radius: .9rem !important;
  }
  .provider-decision-main {
    padding: .9rem !important;
  }
  .provider-conversion-card-top { gap: .55rem; }
  .provider-conversion-title {
    margin: .45rem 0 .22rem !important;
    font-size: 1.12rem !important;
    line-height: 1.3 !important;
  }
  .provider-conversion-summary {
    margin-bottom: .55rem !important;
    font-size: .8rem !important;
    line-height: 1.45 !important;
  }
  .provider-decision-location {
    min-height: 0;
    padding: .25rem 0;
    border: 0;
    background: transparent;
    font-size: .76rem;
  }
  .provider-lead-insight-grid,
  .provider-lead-insight-grid.is-unlocked-grid,
  .provider-lead-insight-grid.is-marketplace-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .5rem !important;
  }
  .provider-lead-insight {
    min-height: 3.75rem !important;
    padding: .55rem .58rem !important;
    border-radius: .68rem !important;
  }
  .provider-lead-insight > span { font-size: .59rem !important; }
  .provider-lead-insight > strong { font-size: .72rem !important; }
  .provider-decision-action-inner { padding: .85rem .9rem .95rem !important; }
  .provider-decision-contact-actions { gap: .5rem; }
  .provider-action-button { min-height: 2.85rem !important; border-radius: .72rem !important; }
  .provider-action-primary { min-height: 3.1rem !important; border-radius: .76rem !important; }
}

@media (max-width: 575.98px) {
  .workspace-brand .portal-brand-logo { width: 6.05rem !important; }
  .portal-profile-dropdown { display: none !important; }
  .workspace-credit-chip strong { max-width: 5rem; }
  .workspace-credit-chip .icon { display: none; }
  .provider-visible-filters { grid-template-columns: 1fr 1fr !important; }
}

@media (max-width: 379.98px) {
  .workspace-topbar-inner { grid-template-columns: 2.45rem minmax(0, 1fr) auto; padding-inline: .55rem; }
  .portal-mobile-menu { width: 2.4rem !important; height: 2.4rem !important; }
  .workspace-brand .portal-brand-logo { width: 5.55rem !important; }
  .workspace-credit-chip { padding-inline: .48rem !important; }
  .workspace-credit-chip strong { max-width: 4.25rem; font-size: .68rem !important; }
  .provider-visible-filters { grid-template-columns: 1fr !important; }
  .provider-view-switch button { min-width: 3.25rem; }
  .provider-lead-insight-grid,
  .provider-lead-insight-grid.is-unlocked-grid,
  .provider-lead-insight-grid.is-marketplace-grid { grid-template-columns: 1fr !important; }
}

/* 2026 marketplace refinement: compact filters and flatter lead information. */
.provider-visible-filters {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  align-items: end;
}
.provider-lead-insight-grid,
.provider-lead-insight-grid.is-marketplace-grid,
.provider-lead-insight-grid.is-unlocked-grid {
  gap: 0 !important;
  overflow: hidden;
  border-top: 1px solid #e5ebf1;
  border-bottom: 1px solid #e5ebf1;
  border-radius: 0;
}
.provider-lead-insight,
.provider-lead-insight.is-preferred,
.provider-lead-insight.is-age,
.provider-lead-insight.is-unlocked-date,
.provider-lead-insight.is-interest,
.provider-lead-insight.is-open-result,
.provider-lead-insight.is-customer,
.provider-lead-insight.is-activity,
.provider-lead-insight.is-neutral,
.provider-lead-insight.is-confirmed,
.provider-lead-insight.is-success,
.provider-lead-insight.is-pending,
.provider-lead-insight.is-warning,
.provider-lead-insight.is-overdue,
.provider-lead-insight.is-danger {
  min-height: 4rem !important;
  padding: .72rem .8rem !important;
  border: 0 !important;
  border-right: 1px solid #e5ebf1 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.provider-lead-insight:last-child { border-right: 0 !important; }
.provider-unlock-availability > strong {
  display: block;
  line-height: 1.25;
}
.provider-unlock-availability > small {
  display: block;
  margin-top: .22rem;
  color: #667085;
  font-size: .69rem;
  font-weight: 650;
}
.provider-decision-location {
  border: 0 !important;
  border-top: 1px solid #edf1f5 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: .58rem 0 !important;
}

@media (max-width: 1199.98px) {
  .provider-visible-filters { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 991.98px) {
  .provider-visible-filters { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .provider-lead-insight { border-bottom: 1px solid #e5ebf1 !important; }
}
@media (max-width: 575.98px) {
  .provider-visible-filters { grid-template-columns: 1fr 1fr !important; }
  .provider-lead-insight,
  .provider-lead-insight.is-preferred,
  .provider-lead-insight.is-age,
  .provider-lead-insight.is-unlocked-date,
  .provider-lead-insight.is-interest,
  .provider-lead-insight.is-open-result,
  .provider-lead-insight.is-customer,
  .provider-lead-insight.is-activity,
  .provider-lead-insight.is-neutral,
  .provider-lead-insight.is-confirmed,
  .provider-lead-insight.is-success,
  .provider-lead-insight.is-pending,
  .provider-lead-insight.is-warning,
  .provider-lead-insight.is-overdue,
  .provider-lead-insight.is-danger {
    min-height: 3.6rem !important;
    padding: .58rem .62rem !important;
  }
}

.provider-priority-badge.is-urgent { color:#9b1c1c; border-color:#fecaca; background:#fff1f2; }
.provider-priority-badge.is-high { color:#9a5b00; border-color:#fde68a; background:#fffbeb; }
.provider-priority-badge.is-normal { color:#145da0; border-color:#bfdbfe; background:#eff6ff; }
.provider-priority-badge.is-low { color:#52606d; border-color:#d8dee6; background:#f6f8fa; }
.provider-service-type-tags { display:flex; flex-wrap:wrap; gap:.35rem; margin:.45rem 0; }
.provider-service-type-tags span { display:inline-flex; align-items:center; min-height:1.55rem; padding:.2rem .5rem; border:1px solid var(--workspace-border,#dfe5ec); border-radius:999px; background:var(--workspace-soft,#f6f8fb); color:var(--workspace-text,#27313d); font-size:.69rem; font-weight:700; }
.provider-decision-card.is-marketplace.is-priority-urgent::before { background:#dc2626 !important; }
.provider-decision-card.is-marketplace.is-priority-high::before { background:#e39a18 !important; }
.provider-decision-card.is-marketplace.is-priority-normal::before { background:#1468c2 !important; }
.provider-decision-card.is-marketplace.is-priority-low::before { background:#8793a3 !important; }

/* Provider OTP, policy, support and payment-compliance surfaces */
.portal-login-body { overflow-x: hidden; overflow-y: auto; }
.portal-login-consent {
  margin: 1rem 0 0;
  color: var(--workspace-subtle, #667085);
  font-size: .72rem;
  line-height: 1.55;
  text-align: center;
}
.portal-login-consent a,
.portal-login-help a,
.portal-login-policy-links a,
.portal-footer a,
.portal-footer-policy-links a,
.provider-payment-policy-links a,
.provider-payment-support,
.portal-policy-links a,
.portal-legal-content a,
.portal-legal-page-footer a {
  color: var(--workspace-primary, #175cd3);
  text-decoration: none;
}
.portal-login-consent a:hover,
.portal-login-help a:hover,
.portal-login-policy-links a:hover,
.portal-footer a:hover,
.provider-payment-policy-links a:hover,
.provider-payment-support:hover,
.portal-policy-links a:hover,
.portal-legal-content a:hover,
.portal-legal-page-footer a:hover { text-decoration: underline; }
.portal-login-help a { justify-self: center; font-weight: 720; }
.portal-login-policy-links,
.portal-policy-links,
.portal-footer-policy-links,
.provider-payment-policy-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .45rem .8rem;
}
.portal-login-policy-links {
  justify-content: center;
  margin-top: 1rem;
  padding: 0 .5rem;
  font-size: .7rem;
}
.portal-login-policy-links a { color: #596779; }
.portal-footer { align-items: center; flex-wrap: wrap; }
.portal-footer-policy-links { justify-content: center; font-size: .74rem; }
.portal-footer > a { white-space: nowrap; }
.provider-payment-policy-card .card-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem 1.5rem;
}
.provider-payment-policy-card p { max-width: 56rem; line-height: 1.55; }
.provider-payment-policy-links { justify-content: flex-end; font-size: .76rem; }
.provider-payment-support { grid-column: 2; justify-self: end; font-size: .78rem; font-weight: 720; }

.portal-legal-body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  background: var(--workspace-bg, #f5f7fa);
  color: var(--workspace-text, #172033);
}
.portal-legal-header {
  position: sticky;
  top: 0;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 4.25rem;
  padding: .8rem clamp(1rem, 4vw, 3rem);
  border-bottom: 1px solid var(--workspace-border, #dfe5ec);
  background: rgba(255, 255, 255, .96);
  backdrop-filter: blur(10px);
}
.portal-legal-brand { display: inline-flex; align-items: center; gap: .75rem; color: inherit; text-decoration: none; }
.portal-legal-brand img { width: 8rem; height: auto; }
.portal-legal-brand span { padding-left: .7rem; border-left: 1px solid var(--workspace-border-strong, #c8d1dc); color: var(--workspace-subtle, #667085); font-size: .76rem; font-weight: 720; }
.portal-legal-shell { width: min(58rem, calc(100% - 2rem)); margin: 2rem auto; }
.portal-legal-card { border: 1px solid var(--workspace-border, #dfe5ec); border-radius: 1rem; box-shadow: var(--workspace-shadow, 0 8px 24px rgba(16, 35, 63, .06)); }
.portal-legal-card .card-body { padding: clamp(1.35rem, 4vw, 2.5rem); }
.portal-legal-kicker { display: block; margin-bottom: .45rem; color: var(--workspace-primary, #175cd3); font-size: .7rem; font-weight: 820; letter-spacing: .09em; text-transform: uppercase; }
.portal-legal-card h1 { margin: 0; font-size: clamp(1.65rem, 4vw, 2.25rem); letter-spacing: -.035em; }
.portal-legal-lead { max-width: 48rem; margin: .7rem 0 0; color: var(--workspace-muted, #475467); font-size: .98rem; line-height: 1.65; }
.portal-legal-effective { margin: .7rem 0 0; color: var(--workspace-subtle, #667085); font-size: .76rem; }
.portal-legal-callout {
  margin-top: 1.25rem;
  padding: 1rem 1.05rem;
  border: 1px solid #bfd3f2;
  border-left: .25rem solid var(--workspace-primary, #175cd3);
  border-radius: .75rem;
  background: #f4f8ff;
}
.portal-legal-callout strong { display: block; margin-bottom: .35rem; font-size: .84rem; }
.portal-legal-callout p { margin: 0; color: var(--workspace-muted, #475467); font-size: .86rem; line-height: 1.6; }
.portal-legal-callout.is-important { border-color: #b8cdf0; background: #f1f6ff; }
.portal-legal-toc {
  margin-top: 1.5rem;
  padding: 1.05rem 1.1rem;
  border: 1px solid var(--workspace-border, #dfe5ec);
  border-radius: .8rem;
  background: #f8fafc;
}
.portal-legal-toc > strong { display: block; margin-bottom: .65rem; font-size: .82rem; }
.portal-legal-toc ol {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .42rem 1.5rem;
  margin: 0;
  padding-left: 1.25rem;
}
.portal-legal-toc li { color: var(--workspace-subtle, #667085); font-size: .78rem; line-height: 1.45; }
.portal-legal-toc a { color: var(--workspace-primary, #175cd3); text-decoration: none; }
.portal-legal-toc a:hover { text-decoration: underline; }
.portal-legal-content { margin-top: 2rem; }
.portal-legal-content section { padding: 1.35rem 0; border-top: 1px solid var(--workspace-border, #dfe5ec); scroll-margin-top: 5.4rem; }
.portal-legal-content section:first-child { padding-top: 0; border-top: 0; }
.portal-legal-content h2 { margin: 0 0 .55rem; font-size: 1.02rem; letter-spacing: -.01em; }
.portal-legal-content p,
.portal-legal-content address,
.portal-legal-content li { color: var(--workspace-muted, #475467); font-size: .9rem; line-height: 1.72; }
.portal-legal-content p,
.portal-legal-content address { margin: 0 0 .72rem; }
.portal-legal-content ul,
.portal-legal-content ol { margin: .2rem 0 .8rem; padding-left: 1.35rem; }
.portal-legal-content li + li { margin-top: .35rem; }
.portal-legal-content p:last-child,
.portal-legal-content address:last-child { margin-bottom: 0; }
.portal-legal-content address { font-style: normal; }
.portal-legal-back-link { display: inline-flex; margin-top: .35rem; font-size: .72rem; font-weight: 700; }
.portal-legal-email { font-size: 1rem; font-weight: 760; }
.portal-legal-navigation {
  margin-top: 1rem;
  padding: 1rem 1.1rem;
  border: 1px solid var(--workspace-border, #dfe5ec);
  border-radius: .8rem;
  background: #fff;
}
.portal-legal-navigation > strong { display: block; margin-bottom: .55rem; font-size: .78rem; }
.portal-policy-links { font-size: .76rem; }
.portal-legal-page-footer {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .65rem 1rem;
  margin-top: auto;
  padding: 1.1rem clamp(1rem, 4vw, 3rem);
  border-top: 1px solid var(--workspace-border, #dfe5ec);
  color: var(--workspace-subtle, #667085);
  font-size: .76rem;
}

@media (max-width: 767.98px) {
  .provider-payment-policy-card .card-body { grid-template-columns: 1fr; }
  .provider-payment-policy-links { justify-content: flex-start; }
  .provider-payment-support { grid-column: auto; justify-self: start; }
  .portal-footer-policy-links { justify-content: flex-start; }
  .portal-legal-header { min-height: 3.9rem; }
  .portal-legal-brand img { width: 7rem; }
  .portal-legal-shell { width: min(100% - 1rem, 58rem); margin: .75rem auto 1.25rem; }
  .portal-legal-card { border-radius: .75rem; }
  .portal-legal-toc ol { grid-template-columns: 1fr; }
  .portal-legal-toc { padding: .9rem; }
  .portal-legal-content section { scroll-margin-top: 4.9rem; }
}

.portal-footer-summary { display: grid; gap: .18rem; }

/* Public provider joining request */
.portal-provider-join-cta { display: grid; gap: .6rem; margin-top: 1.25rem; padding-top: 1.15rem; border-top: 1px solid var(--workspace-border, #dbe3ee); text-align: center; }
.portal-provider-join-cta > span { color: #667085; font-size: .82rem; font-weight: 650; }
.portal-join-body { align-items: start; padding-block: clamp(1rem, 4vw, 2.5rem); }
.portal-join-shell { position: relative; z-index: 1; width: min(100% - 1.5rem, 62rem); }
.portal-join-card .card-body { padding: clamp(1.25rem, 3vw, 2rem); }
.portal-join-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: 1.5rem; }
.portal-join-eyebrow { display: block; margin-bottom: .35rem; color: var(--workspace-primary, #175cd3); font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.portal-join-login-link { flex: 0 0 auto; font-size: .82rem; font-weight: 750; }
.portal-join-form { display: grid; gap: 1.35rem; }
.portal-join-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.portal-join-field { display: grid; align-content: start; gap: .42rem; min-width: 0; color: #344054; font-size: .82rem; font-weight: 700; }
.portal-join-field > span:first-child b { color: #d92d20; }
.portal-join-field-full { width: 100%; }
.portal-join-inline-check { display: inline-flex; align-items: center; gap: .4rem; color: #667085; font-size: .76rem; font-weight: 600; }
.portal-join-section { display: grid; gap: 1rem; padding: 1rem; border: 1px solid var(--workspace-border, #dbe3ee); border-radius: .9rem; background: #f8fafc; }
.portal-join-section-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.portal-join-section-head > div { display: grid; gap: .2rem; }
.portal-join-section-head strong { color: #1d2939; }
.portal-join-section-head span { color: #667085; font-size: .78rem; }
.portal-join-map-state { flex: 0 0 auto; padding: .35rem .55rem; border-radius: 999px; background: #eef2f6; color: #667085 !important; font-size: .7rem !important; font-weight: 700; }
.portal-join-map-state.is-ready { background: #ecfdf3; color: #027a48 !important; }
.portal-join-location-grid { grid-template-columns: .7fr 1fr 1fr; }
.portal-join-consent { display: flex; align-items: flex-start; gap: .65rem; color: #475467; font-size: .8rem; line-height: 1.5; }
.portal-join-consent input { margin-top: .22rem; }
.portal-join-actions { display: flex; justify-content: flex-end; gap: .75rem; padding-top: .25rem; }
.portal-join-success { display: grid; justify-items: start; gap: .35rem; }
.portal-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; }
@media (max-width: 767.98px) {
  .portal-join-shell { width: min(100% - 1rem, 38rem); }
  .portal-join-heading, .portal-join-section-head { display: grid; }
  .portal-join-login-link { justify-self: start; }
  .portal-join-grid, .portal-join-location-grid { grid-template-columns: 1fr; }
  .portal-join-actions { display: grid; grid-template-columns: 1fr; }
  .portal-join-actions .btn { width: 100%; }
}

/* Lead marketplace mobile search and filter sheet */
.provider-mobile-filter-launcher,
.provider-mobile-filter-backdrop,
.provider-mobile-filter-search-control {
  display: none !important;
}

@media (max-width: 767.98px) {
  .provider-mobile-filter-launcher {
    display: flex !important;
    width: 100%;
    min-height: 42px;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin: 0;
    padding: 9px 12px;
  }

  .provider-mobile-filter-launcher > span:first-child {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-weight: 700;
  }

  .provider-mobile-filter-launcher .icon {
    width: 16px;
    height: 16px;
  }

  .workspace-filter-card .provider-filter-toolbar,
  .workspace-filter-card .provider-visible-filters {
    display: none !important;
  }

  .provider-mobile-filter-backdrop.is-open {
    position: fixed;
    inset: 0;
    z-index: 1070;
    display: block !important;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: rgba(15, 23, 42, 0.45);
  }

  .workspace-filter-card {
    display: none !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
  }

  .workspace-filter-card.is-mobile-open {
    display: block !important;
    min-height: 0;
    height: 0;
  }

  .workspace-filter-card .provider-advanced-panel {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1080;
    max-height: min(82vh, 720px);
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--portal-border, #dbe3ee);
    border-radius: 18px 18px 0 0;
    background: var(--portal-surface, #fff);
    box-shadow: 0 -18px 48px rgba(15, 23, 42, 0.2);
  }

  .workspace-filter-card .workspace-filter-heading {
    position: sticky;
    top: 0;
    z-index: 2;
    padding: 14px 16px 12px;
    background: var(--portal-surface, #fff);
    border-bottom: 1px solid var(--portal-border, #e2e8f0);
  }

  .workspace-filter-card .provider-advanced-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    max-height: calc(82vh - 132px);
    padding: 14px 16px;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .workspace-filter-card .workspace-filter-subgrid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .provider-mobile-filter-search-control {
    display: grid !important;
  }

  .workspace-filter-card .workspace-filter-actions {
    position: sticky;
    bottom: 0;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
    gap: 10px;
    padding: 12px 16px max(12px, env(safe-area-inset-bottom));
    border-top: 1px solid var(--portal-border, #e2e8f0);
    background: var(--portal-surface, #fff);
  }

  .workspace-filter-card .workspace-filter-actions .btn {
    width: 100%;
  }
}
