/* src/platform.css */
.platform-shell {
  min-height: 100vh;
  background: #f6f7f2;
  color: #18382e;
  display: flex;
  font-family:
    Inter,
    system-ui,
    sans-serif;
}
.platform-nav {
  width: 238px;
  flex-shrink: 0;
  background: #18382e;
  color: #fff;
  padding: 30px 20px;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.platform-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 24px;
}
.platform-brand img {
  width: 38px;
  height: 38px;
}
.platform-brand span {
  display: block;
  font-size: 11px;
  font-weight: 400;
  margin-top: 5px;
  color: #cbd9cf;
}
.platform-nav nav {
  display: grid;
  gap: 8px;
}
.platform-nav a {
  color: #fff;
  text-decoration: none;
  padding: 12px;
  border-radius: 8px;
}
.platform-nav a:has([aria-current=page]) {
  background: #b9ef7e;
  color: #18382e;
  font-weight: 700;
}
.platform-nav p {
  font-size: 12px;
  line-height: 1.6;
  color: #cbd9cf;
  margin-top: auto;
}
.platform-body {
  flex: 1;
  min-width: 0;
}
.platform-main {
  padding: 40px;
  max-width: 1450px;
  margin: auto;
}
.platform-main header {
  margin-bottom: 30px;
}
.platform-main h1 {
  font-size: 34px;
  letter-spacing: -1px;
  margin: 10px 0;
}
.platform-main small {
  font-size: 12px;
}
.platform-main p {
  line-height: 1.6;
  color: #506259;
}
.platform-card {
  padding: 26px;
  background: white;
  border: 1px solid #dce4da;
  border-radius: 16px;
  margin: 20px 0;
}
.platform-card h2 {
  font-size: 20px;
  margin-top: 0;
}
.platform-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.platform-metrics article {
  border: 1px solid #dce4da;
  padding: 24px;
  border-radius: 14px;
  background: white;
}
.platform-metrics span {
  font-size: 13px;
  color: #506259;
  display: block;
}
.platform-metrics strong {
  display: block;
  font-size: 30px;
  margin-top: 14px;
  font-variant-numeric: tabular-nums;
}
.platform-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.platform-shell label {
  font-size: 13px;
  font-weight: 600;
  display: block;
  margin: 12px 0;
}
.platform-shell input:not([type=checkbox]),
.platform-shell select,
.platform-shell textarea {
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: 12px;
  border: 1px solid #aebfb3;
  border-radius: 8px;
  font: inherit;
  background: #fff;
  color: #18382e;
  margin-top: 7px;
  min-height: 44px;
}
.platform-shell button {
  min-height: 42px;
  padding: 9px 15px;
  border: 1px solid #aebfb3;
  border-radius: 8px;
  background: white;
  color: #18382e;
  cursor: pointer;
  font-weight: 600;
  margin: 4px 4px 4px 0;
}
.platform-shell button:disabled {
  opacity: .5;
  cursor: not-allowed;
}
.platform-shell .platform-primary {
  background: #b9ef7e;
  border-color: #b9ef7e;
}
.platform-modules {
  border: 0;
  padding: 10px 0;
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
}
.platform-modules label {
  display: flex;
  gap: 8px;
  align-items: center;
}
.platform-modules input {
  width: 18px;
  height: 18px;
  accent-color: #18382e;
}
.platform-tabs {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.platform-tabs a {
  padding: 10px;
  color: #18382e;
  text-decoration: none;
  border-bottom: 2px solid transparent;
}
.platform-tabs a:has([aria-current=page]) {
  border-color: #18382e;
  font-weight: 700;
}
.platform-table {
  overflow: auto;
}
.platform-table table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  font-size: 13px;
}
.platform-table th {
  color: #506259;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .04em;
  white-space: nowrap;
}
.platform-table td,
.platform-table th {
  padding: 16px 12px;
  border-bottom: 1px solid #edf0ea;
  vertical-align: top;
}
.platform-table small {
  display: block;
  margin-top: 6px;
  color: #506259;
}
.platform-main a {
  color: #275b40;
}
.platform-table pre {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  max-width: 400px;
}
.platform-error {
  padding: 16px;
  background: #fff0eb;
  color: #902e20;
  border: 1px solid #ebc3b9;
  border-radius: 8px;
}
.platform-note {
  font-size: 13px;
}
.platform-shell :focus-visible {
  outline: 3px solid #3e805d;
  outline-offset: 3px;
}
@media (max-width: 1000px) {
  .platform-nav {
    width: 190px;
  }
  .platform-main {
    padding: 24px;
  }
  .platform-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 650px) {
  .platform-shell {
    display: block;
  }
  .platform-nav {
    width: auto;
    padding: 20px;
  }
  .platform-nav nav {
    display: flex;
    flex-wrap: wrap;
  }
  .platform-nav p,
  .platform-nav > button {
    display: none;
  }
  .platform-main {
    padding: 20px 14px;
  }
  .platform-main h1 {
    font-size: 28px;
  }
  .platform-grid {
    grid-template-columns: 1fr;
  }
  .platform-metrics {
    gap: 10px;
  }
  .platform-metrics article {
    padding: 16px;
  }
  .platform-metrics strong {
    font-size: 24px;
  }
  .platform-card {
    padding: 18px;
  }
  .platform-body > div:first-child {
    flex-wrap: wrap;
  }
}

/* src/tenant-administration.css */
.opebix-administration {
  line-height: 1.5;
}
.opebix-administration h1 {
  font-size: 28px;
  letter-spacing: -.6px;
  margin: 0 0 12px;
}
.opebix-administration h2 {
  font-size: 18px;
  margin: 0 0 16px;
}
.opebix-administration form {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 16px;
}
.opebix-administration form h2 {
  flex-basis: 100%;
}
.opebix-administration label {
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  flex: 1;
  min-width: 180px;
}
.opebix-administration input,
.opebix-administration select {
  font: inherit;
  border: 1px solid #c5d2cd;
  border-radius: 7px;
  padding: 10px 12px;
  min-height: 42px;
  background: white;
  color: #18382e;
  box-sizing: border-box;
}
.opebix-administration button {
  font: 600 13px system-ui;
  background: #18382e;
  color: white;
  border: 0;
  border-radius: 7px;
  padding: 11px 16px;
  cursor: pointer;
}
.opebix-administration button:disabled {
  opacity: .5;
  cursor: default;
}
.opebix-administration section > form {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #e4eae7;
}
.opebix-administration [role=alert] {
  color: #a12626;
  background: #fff1ef;
  border-radius: 8px;
  padding: 12px;
}
.opebix-administration input:focus-visible,
.opebix-administration button:focus-visible {
  outline: 3px solid #7dc2a6;
  outline-offset: 2px;
}
@media (max-width: 600px) {
  .opebix-administration {
    margin: 12px auto !important;
    padding: 16px !important;
  }
  .opebix-administration form {
    display: grid;
  }
  .opebix-administration h1 {
    font-size: 23px;
  }
}

/* src/styles/Sidebar.module.css */
.Sidebar_sidebar {
  color: var(--opebix-sidebar-text);
  background: var(--opebix-sidebar-bg);
  border: 0;
  border-right: 1px solid var(--opebix-sidebar-border);
  font-size: 13px;
  flex-direction: column;
  flex-shrink: 0;
  min-height: 0;
}
.Sidebar_desktop {
  display: flex;
  width: 252px;
  height: 100dvh;
  transition: width 200ms ease;
  overflow: hidden;
}
.Sidebar_desktop[data-collapsed=true] {
  width: 68px;
}
.Sidebar_brand {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 76px;
  padding: 16px;
  flex-shrink: 0;
  border-bottom: 1px solid var(--opebix-sidebar-border);
}
.Sidebar_logo {
  width: 36px;
  height: 36px;
  object-fit: contain;
  background: var(--opebix-surface);
  padding: 4px;
  border-radius: 6px;
  flex-shrink: 0;
}
.Sidebar_brand strong {
  display: block;
  font-size: 14px;
  font-weight: 600;
}
.Sidebar_brand small {
  display: block;
  margin-top: 3px;
  font-size: 11px;
  color: var(--opebix-sidebar-muted);
  overflow: hidden;
  text-overflow: ellipsis;
}
.Sidebar_description {
  display: block;
  font-size: 11px;
  color: var(--opebix-sidebar-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: 2px;
}
.Sidebar_label {
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.Sidebar_navigation {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding: 8px;
  scrollbar-width: thin;
  scrollbar-color: var(--opebix-sidebar-hover) transparent;
}
.Sidebar_group + .Sidebar_group {
  margin-top: 8px;
}
.Sidebar_heading {
  padding: 10px 10px 5px;
  color: var(--opebix-sidebar-muted);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.Sidebar_item,
.Sidebar_collapse,
.Sidebar_close,
.Sidebar_trigger {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 38px;
  border: 0;
  border-radius: 6px;
  padding: 8px 10px;
  background: transparent;
  color: var(--opebix-sidebar-muted);
  font: inherit;
  font-size: 13px;
  text-align: left;
  cursor: pointer;
}
.Sidebar_item {
  width: 100%;
  margin: 2px 0;
}
.Sidebar_item > svg {
  flex: 0 0 18px;
}
.Sidebar_item:hover,
.Sidebar_collapse:hover,
.Sidebar_close:hover {
  color: var(--opebix-sidebar-text);
  background: var(--opebix-sidebar-hover);
}
.Sidebar_item[aria-current=page] {
  background: var(--opebix-sidebar-selected);
  color: var(--opebix-sidebar-text);
  font-weight: 600;
  box-shadow: inset 2px 0 var(--opebix-sidebar-muted);
}
.Sidebar_sidebar button:focus-visible,
.Sidebar_trigger:focus-visible {
  outline: 2px solid var(--opebix-focus);
  outline-offset: -2px;
}
.Sidebar_footer {
  padding: 8px;
  border-top: 1px solid var(--opebix-sidebar-border);
  flex-shrink: 0;
}
.Sidebar_avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--opebix-sidebar-selected);
  color: var(--opebix-sidebar-text);
  font-size: 12px;
}
.Sidebar_collapse {
  margin: 0 8px 10px;
  flex-shrink: 0;
}
.Sidebar_collapse svg {
  flex-shrink: 0;
}
.Sidebar_desktop[data-collapsed=true] .Sidebar_label,
.Sidebar_desktop[data-collapsed=true] .Sidebar_heading {
  display: none;
}
.Sidebar_desktop[data-collapsed=true] .Sidebar_item,
.Sidebar_desktop[data-collapsed=true] .Sidebar_collapse {
  justify-content: center;
  padding-left: 0;
  padding-right: 0;
}
.Sidebar_desktop[data-collapsed=true] .Sidebar_group + .Sidebar_group {
  margin-top: 4px;
}
.Sidebar_drawer {
  position: fixed;
  inset: 0 auto 0 0;
  margin: 0;
  padding: 0;
  width: min(320px, 88vw);
  max-width: none;
  height: 100dvh;
  max-height: none;
  overflow: hidden;
}
.Sidebar_drawer:not([open]) {
  display: none;
}
.Sidebar_drawer[open] {
  display: flex;
  animation: Sidebar_slideIn 200ms ease;
}
.Sidebar_drawer::backdrop {
  background: color-mix(in srgb, var(--opebix-sidebar-bg) 60%, transparent);
}
.Sidebar_close {
  position: absolute;
  right: 8px;
  top: 4px;
  min-height: 30px;
  padding: 5px;
}
.Sidebar_drawer .Sidebar_brand {
  padding-right: 40px;
}
.Sidebar_trigger {
  display: none;
}
@keyframes Sidebar_slideIn {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
@media (max-width: 767px) {
  .Sidebar_desktop {
    display: none;
  }
  .Sidebar_trigger {
    display: flex;
    position: fixed;
    left: 14px;
    bottom: max(14px, env(safe-area-inset-bottom));
    z-index: 1299;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    color: var(--opebix-sidebar-text);
    background: var(--opebix-sidebar-bg);
    border: 1px solid var(--opebix-sidebar-border);
  }
  .Sidebar_drawer .Sidebar_item {
    min-height: 44px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .Sidebar_desktop {
    transition: none;
  }
  .Sidebar_drawer[open] {
    animation: none;
  }
}

/* src/styles/DocumentRegister.module.css */
.DocumentRegister_root {
  grid-column: 1 / -1;
}
.DocumentRegister_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
}
.DocumentRegister_sectionLabel {
  display: block;
  font-size: 12px;
  font-weight: 900;
  color: #a8b2c4;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.DocumentRegister_addToggle {
  padding: 7px 12px;
  border: 1px solid #99f6e4;
  border-radius: 8px;
  background: #ecfdf5;
  color: #0f766e;
  cursor: pointer;
  font-size: 13px;
  font-weight: 800;
}
.DocumentRegister_list {
  display: grid;
  gap: 8px;
}
.DocumentRegister_addPanel {
  padding: 14px;
  border: 1px solid #dbe3ef;
  border-radius: 12px;
  background: #f8fafc;
  display: grid;
  gap: 12px;
}
.DocumentRegister_dropZone {
  border: 1px dashed #cbd5e1;
  border-radius: 10px;
  padding: 14px;
  font-size: 12px;
  color: #64748b;
  background: #fff;
  text-align: center;
}
.DocumentRegister_fileInput {
  font-size: 12px;
}
.DocumentRegister_addGrid,
.DocumentRegister_editGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.DocumentRegister_notesInput {
  font-size: 12px;
}
.DocumentRegister_addButton {
  width: 100%;
  padding: 11px 14px;
  border: none;
  border-radius: 10px;
  background: #111827;
  color: #fff;
  font-weight: 800;
  cursor: pointer;
}
.DocumentRegister_addButton:disabled {
  background: #cbd5e1;
  cursor: not-allowed;
}
.DocumentRegister_row {
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
}
.DocumentRegister_rowExpanded {
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.05);
}
.DocumentRegister_rowButton {
  width: 100%;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 12px 16px;
  border: none;
  background: transparent;
  cursor: pointer;
  text-align: left;
}
.DocumentRegister_fileIcon {
  width: 40px;
  height: 42px;
  border-radius: 8px;
  display: grid;
  place-items: center;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.1;
}
.DocumentRegister_fileIconPdf {
  background: #fee2e2;
  color: #ef4444;
}
.DocumentRegister_fileIconImage {
  background: #eff6ff;
  color: #2563eb;
}
.DocumentRegister_fileIconDefault {
  background: #f1f5f9;
  color: #64748b;
}
.DocumentRegister_rowText {
  min-width: 0;
}
.DocumentRegister_title {
  font-size: 14px;
  font-weight: 900;
  color: #1f2937;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.DocumentRegister_competencyTitle {
  font-size: 16px;
}
.DocumentRegister_meta {
  display: flex;
  align-items: center;
  gap: 7px;
  flex-wrap: wrap;
  margin-top: 5px;
  font-size: 12px;
  color: #94a3b8;
  font-weight: 700;
}
.DocumentRegister_typeChip {
  padding: 2px 7px;
  border-radius: 5px;
  background: #f1f5f9;
  color: #64748b;
  font-size: 11px;
}
.DocumentRegister_expiryExpired {
  color: #dc2626;
}
.DocumentRegister_expiryWarning {
  color: #f59e0b;
}
.DocumentRegister_expiryNormal {
  color: #94a3b8;
}
.DocumentRegister_rowActions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.DocumentRegister_actionPill {
  padding: 6px 10px;
  border-radius: 7px;
  background: #f8fafc;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}
.DocumentRegister_removePill {
  background: #fef2f2;
  color: #ef4444;
}
.DocumentRegister_chevron {
  color: #cbd5e1;
  font-size: 20px;
  line-height: 1;
  transition: transform 0.15s ease;
}
.DocumentRegister_chevronExpanded {
  transform: rotate(180deg);
}
.DocumentRegister_editPanel {
  border-top: 1px solid #e5e7eb;
  padding: 14px 18px 16px;
  background: #f8fafc;
  display: grid;
  gap: 10px;
}
.DocumentRegister_empty {
  font-size: 12px;
  color: #94a3b8;
  padding: 8px 2px;
}

/* src/styles/EmployeeForm.module.css */
.EmployeeForm_sectionBreak {
  grid-column: 1 / -1;
  padding-top: 4px;
}
.EmployeeForm_sectionTitle {
  font-size: 12px;
  font-weight: 800;
  color: #334155;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 4px;
}
.EmployeeForm_sectionHint {
  font-size: 12px;
  color: #64748b;
}

/* src/styles/Auth.module.css */
.Auth_shell {
  --auth-green:#18382e;
  --auth-lime:#b9ef7e;
  min-height: 100vh;
  min-height: 100dvh;
  display: grid;
  grid-template-columns: 1fr 1fr;
  background: #fafbf7;
  color: var(--auth-green);
  padding: 16px;
  box-sizing: border-box;
  gap: 16px;
}
.Auth_formSide {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 48px 36px;
  min-width: 0;
}
.Auth_stack {
  width: 100%;
  max-width: 400px;
  animation: Auth_authEnter .55s ease both;
}
.Auth_brand {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 64px;
  font-size: 32px;
  letter-spacing: -1.6px;
  font-weight: 750;
  line-height: 1;
}
.Auth_brandLogo {
  width: 42px;
  height: 42px;
  display: block;
}
.Auth_brandDot {
  color: #619443;
}
.Auth_card {
  width: 100%;
  box-sizing: border-box;
}
.Auth_title {
  margin: 0 0 12px;
  color: var(--auth-green);
  font-size: clamp(32px, 3vw, 42px);
  font-weight: 650;
  letter-spacing: -1.5px;
  line-height: 1.15;
}
.Auth_subtitle {
  margin: 0 0 32px;
  color: #65736a;
  font-size: 15px;
  line-height: 1.6;
  font-weight: 400;
}
.Auth_portalToggle {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px;
  padding: 5px;
  margin-bottom: 28px;
  border: 1px solid #dfe5da;
  border-radius: 13px;
  background: #eef1e9;
}
.Auth_portalButton {
  min-height: 44px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: #5c6c60;
  font-size: 13px;
  font-weight: 650;
  cursor: pointer;
  transition: background .18s, color .18s;
}
.Auth_portalButtonActive {
  background: var(--auth-green);
  color: #f6fbea;
  box-shadow: 0 2px 5px #18382e12;
}
.Auth_form {
  display: grid;
  gap: 19px;
}
.Auth_field {
  display: grid;
  gap: 9px;
}
.Auth_label {
  color: #344d3e;
  font-size: 13px;
  font-weight: 600;
}
.Auth_input {
  width: 100%;
  min-height: 54px;
  box-sizing: border-box;
  border: 1px solid #d7dfd2;
  border-radius: 12px;
  background: #fff;
  color: var(--auth-green);
  font-size: 16px;
  font-weight: 400;
  padding: 14px 16px;
  outline: none;
  transition: border-color .18s, box-shadow .18s;
}
.Auth_input::placeholder {
  color: #65736a;
  font-weight: 400;
}
.Auth_input:focus {
  border-color: #466c45;
  box-shadow: 0 0 0 3px #466c4520;
}
.Auth_passwordWrap {
  position: relative;
}
.Auth_passwordWrap .Auth_input {
  padding-right: 54px;
}
.Auth_visibilityButton {
  position: absolute;
  right: 5px;
  top: 5px;
  min-width: 44px;
  min-height: 44px;
  display: grid;
  place-items: center;
  background: transparent;
  color: #65736a;
  border: 0;
  border-radius: 8px;
  cursor: pointer;
}
.Auth_visibilityButton:hover {
  color: var(--auth-green);
  background: #f0f4eb;
}
.Auth_forgotWrap {
  display: flex;
  justify-content: flex-end;
  margin: -3px 0 4px;
}
.Auth_linkButton,
.Auth_backButton {
  border: 0;
  background: transparent;
  color: #3a623f;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  padding: 6px 0;
  min-height: 32px;
  text-align: left;
}
.Auth_linkButton:hover,
.Auth_backButton:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
  color: var(--auth-green);
}
.Auth_backButton {
  margin: 0 0 22px;
}
.Auth_primaryButton {
  width: 100%;
  min-height: 54px;
  padding: 14px 18px;
  border: 1px solid transparent;
  border-radius: 12px;
  background: var(--auth-lime);
  color: var(--auth-green);
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: background .18s, box-shadow .18s;
}
.Auth_primaryButton:hover:not(:disabled) {
  background: #ace56d;
  box-shadow: 0 4px 14px #18382e12;
}
.Auth_card > .Auth_primaryButton {
  margin: 12px 0;
}
.Auth_shell button:focus-visible {
  outline: 2px solid #466c45;
  outline-offset: 4px;
}
.Auth_shell button:disabled,
.Auth_input:disabled {
  opacity: .6;
  cursor: not-allowed;
}
.Auth_message,
.Auth_error {
  border-radius: 10px;
  padding: 12px 14px;
  font-size: 13px;
  line-height: 1.5;
  font-weight: 500;
}
.Auth_error {
  background: #fff0ee;
  border: 1px solid #edc7c1;
  color: #9c3125;
}
.Auth_success {
  background: #eef7e5;
  border: 1px solid #c9dfb7;
  color: #34562c;
}
.Auth_footer {
  margin: 46px 0 0;
  color: #65736a;
  font-size: 12px;
}
.Auth_brandPanel {
  position: relative;
  isolation: isolate;
  min-width: 0;
  overflow: hidden;
  border-radius: 24px;
  background: var(--auth-green);
  color: #f2f7eb;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 680px;
  padding: 38px 44px;
  box-sizing: border-box;
  animation: Auth_authEnter .7s ease both;
}
.Auth_panelTop {
  width: fit-content;
  background: var(--auth-green);
  border-radius: 20px;
  padding: 8px 12px;
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 10px;
  letter-spacing: 2px;
  font-weight: 600;
  color: #d0dece;
  z-index: 1;
}
.Auth_panelMark {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--auth-lime);
}
.Auth_rings {
  position: absolute;
  top: -230px;
  right: -160px;
  width: 620px;
  height: 620px;
  z-index: -1;
}
.Auth_rings span {
  position: absolute;
  border: 72px solid var(--auth-lime);
  border-radius: 50%;
  inset: 0;
  opacity: .9;
}
.Auth_rings span:nth-child(2) {
  inset: 104px;
  border-width: 1px;
  opacity: .35;
}
.Auth_rings span:nth-child(3) {
  inset: -64px;
  border-width: 1px;
  opacity: .18;
}
.Auth_panelCopy {
  position: relative;
  margin-top: 330px;
  padding-top: 24px;
  max-width: 480px;
}
.Auth_eyebrow {
  font-size: 10px !important;
  letter-spacing: 2px;
  font-weight: 600;
  color: #c4d5bb !important;
  margin: 0 0 20px !important;
}
.Auth_panelCopy h2 {
  font-size: clamp(36px, 4.1vw, 62px);
  line-height: 1.08;
  font-weight: 500;
  letter-spacing: -2px;
  margin: 0 0 24px;
  color: #f2f7eb;
}
.Auth_panelCopy h2 span {
  color: var(--auth-lime);
}
.Auth_panelCopy > p:last-child {
  font-size: 15px;
  line-height: 1.75;
  color: #c4d5c5;
  max-width: 330px;
  margin: 0;
}
.Auth_panelFooter {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid #ffffff24;
  padding-top: 22px;
  margin-top: 48px;
  font-size: 11px;
  color: #bbccbb;
}
.Auth_panelFooter > span:last-child {
  font-size: 23px;
  color: var(--auth-lime);
}
@keyframes Auth_authEnter {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (min-width: 1500px) {
  .Auth_brandPanel {
    padding: 48px 64px;
  }
  .Auth_rings {
    right: -100px;
    top: -190px;
  }
  .Auth_panelCopy {
    margin-top: 350px;
  }
}
@media (max-width: 1050px) {
  .Auth_formSide {
    padding: 40px 24px;
  }
  .Auth_brandPanel {
    padding: 32px;
    min-height: 640px;
  }
  .Auth_rings {
    width: 500px;
    height: 500px;
    right: -160px;
    top: -100px;
  }
  .Auth_rings span {
    border-width: 58px;
  }
  .Auth_panelCopy {
    margin-top: 260px;
  }
  .Auth_panelCopy h2 {
    font-size: 40px;
  }
}
@media (max-width: 767px) {
  .Auth_shell {
    display: block;
    padding: 0;
  }
  .Auth_formSide {
    min-height: 100dvh;
    box-sizing: border-box;
    padding: 40px 24px;
  }
  .Auth_brandPanel {
    display: none;
  }
  .Auth_stack {
    max-width: 420px;
  }
  .Auth_brand {
    margin-bottom: 48px;
  }
  .Auth_title {
    font-size: 34px;
  }
  .Auth_footer {
    margin-top: 36px;
  }
}
@media (max-width: 767px) and (max-height: 740px) {
  .Auth_formSide {
    align-items: flex-start;
    padding-top: 28px;
    padding-bottom: 28px;
  }
  .Auth_brand {
    margin-bottom: 32px;
  }
  .Auth_subtitle {
    margin-bottom: 24px;
  }
  .Auth_footer {
    margin-top: 28px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .Auth_stack,
  .Auth_brandPanel {
    animation: none;
  }
  .Auth_shell * {
    transition: none;
  }
}

/* src/styles/Costing.module.css */
.Costing_root {
  display: grid;
  gap: 14px;
}
.Costing_toolbar {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.Costing_segmented {
  display: inline-flex;
  gap: 4px;
  padding: 4px;
  border: 1px solid #e1e7ef;
  border-radius: 12px;
  background: #fff;
  flex-shrink: 0;
}
.Costing_segmentedBtn {
  border: none;
  border-radius: 9px;
  padding: 8px 14px;
  background: transparent;
  color: #334155;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
  transition: background 0.12s, color 0.12s;
}
.Costing_segmentedBtn:hover {
  background: #f1f5f9;
}
.Costing_segmentedBtnActive,
.Costing_segmentedBtnActive:hover {
  background: #111827;
  color: #fff;
}
.Costing_searchBox {
  flex: 1 1 200px;
  min-width: 160px;
  max-width: 340px;
  position: relative;
}
.Costing_searchInput {
  width: 100%;
  padding: 9px 12px;
  border: 1px solid #e1e7ef;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 600;
  color: #111827;
  background: #fff;
  font-family: inherit;
}
.Costing_searchInput:focus {
  outline: none;
  border-color: #94a3b8;
}
.Costing_toolbarActions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-left: auto;
}
.Costing_rangePicker {
  position: relative;
  width: min(360px, calc(100vw - 44px));
  max-width: 100%;
}
.Costing_rangeButton {
  width: 100%;
  min-height: 38px;
  border: 1px solid #e1e7ef;
  border-radius: 10px;
  padding: 8px 12px;
  background: #fff;
  color: #111827;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  cursor: pointer;
  font-family: inherit;
}
.Costing_rangeButton:hover {
  background: #f8fafc;
}
.Costing_rangeButtonTitle {
  font-size: 13px;
  font-weight: 800;
  color: #0f172a;
  white-space: nowrap;
}
.Costing_rangeButtonDates {
  font-size: 12px;
  font-weight: 700;
  color: #64748b;
  text-align: right;
  white-space: nowrap;
}
.Costing_rangeMenu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 45;
  width: min(420px, calc(100vw - 40px));
  border: 1px solid #cbd5e1;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(15, 23, 42, 0.18);
  overflow: hidden;
}
.Costing_rangeSection {
  padding: 6px 0;
}
.Costing_rangeOption {
  width: 100%;
  border: none;
  border-left: 3px solid transparent;
  background: #fff;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 18px;
  align-items: center;
  padding: 12px 18px;
  cursor: pointer;
  text-align: left;
  font-family: inherit;
}
.Costing_rangeOption:hover {
  background: #f8fafc;
}
.Costing_rangeOption span:first-child {
  font-size: 14px;
  font-weight: 700;
  color: #0f172a;
}
.Costing_rangeOption span:last-child {
  font-size: 13px;
  font-weight: 600;
  color: #64748b;
  text-align: right;
}
.Costing_rangeOptionActive {
  border-left-color: #0875d1;
  background: #f8fafc;
}
.Costing_rangeOptionActive span:first-child {
  color: #0875d1;
  font-weight: 900;
}
.Costing_rangeCustomGrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 4px 18px 12px;
}
.Costing_presetBtn {
  border: 1px solid #e1e7ef;
  border-radius: 10px;
  padding: 8px 13px;
  background: #fff;
  color: #334155;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
  transition: background 0.12s;
}
.Costing_presetBtn:hover {
  background: #f8fafc;
}
.Costing_presetBtnActive,
.Costing_presetBtnActive:hover {
  background: #111827;
  border-color: #111827;
  color: #fff;
}
.Costing_filterBadge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  margin-left: 6px;
  border-radius: 999px;
  background: #16c7b7;
  color: #06312d;
  font-size: 11px;
  font-weight: 800;
}
.Costing_popoverAnchor {
  position: relative;
}
.Costing_filterPopover {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 40;
  width: min(560px, calc(100vw - 40px));
  padding: 16px;
  border: 1px solid #e1e7ef;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.14);
  display: grid;
  gap: 12px;
}
.Costing_filterPopoverGrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  align-items: end;
}
.Costing_filterChips {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.Costing_hint {
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
}
.Costing_kpiStrip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 0;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
  overflow: hidden;
}
.Costing_kpi {
  padding: 14px 16px;
  border-left: 1px solid #eef2f7;
  min-width: 0;
}
.Costing_kpi:first-child {
  border-left: none;
}
.Costing_kpiLabel {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b;
}
.Costing_kpiValue {
  margin-top: 5px;
  font-size: 17px;
  font-weight: 800;
  color: #111827;
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}
.Costing_kpiPos {
  color: #16a34a;
}
.Costing_kpiNeg {
  color: #b91c1c;
}
.Costing_alertBanner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  padding: 12px 16px;
  border: 1px solid #fde68a;
  border-radius: 12px;
  background: #fffbeb;
  font-size: 13px;
  font-weight: 700;
  color: #b45309;
}
.Costing_registerCard {
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
  overflow: hidden;
}
.Costing_registerScroll {
  overflow-x: auto;
}
.Costing_registerTable {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
  min-width: 860px;
}
.Costing_registerTable th {
  padding: 10px 14px;
  text-align: left;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b;
  background: #f8fafc;
  border-bottom: 1px solid #e5e7eb;
  white-space: nowrap;
}
.Costing_registerTable th.Costing_num,
.Costing_registerTable td.Costing_num {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.Costing_registerTable td {
  padding: 11px 14px;
  border-top: 1px solid #eef2f7;
  vertical-align: middle;
}
.Costing_groupHeader td {
  padding: 10px 14px;
  background: #f1f5f9;
  border-top: 1px solid #e2e8f0;
  cursor: pointer;
  user-select: none;
}
.Costing_groupHeader:hover td {
  background: #e9eff5;
}
.Costing_groupTitle {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 800;
  color: #111827;
}
.Costing_groupCaret {
  display: inline-block;
  transition: transform 0.12s;
  font-size: 11px;
  color: #64748b;
}
.Costing_groupCaretCollapsed {
  transform: rotate(-90deg);
}
.Costing_groupCount {
  font-size: 12px;
  font-weight: 700;
  color: #64748b;
}
.Costing_groupRollup {
  font-size: 12px;
  font-weight: 700;
  color: #334155;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.Costing_projectHeader td {
  padding: 7px 14px 7px 30px;
  background: #f8fafc;
  font-size: 12px;
  font-weight: 700;
  color: #475569;
  border-top: 1px solid #eef2f7;
}
.Costing_row {
  cursor: pointer;
  transition: background 0.1s;
}
.Costing_row:hover td {
  background: #f8fafc;
}
.Costing_allocCell {
  min-width: 0;
}
.Costing_allocTitle {
  display: block;
  font-size: 13px;
  font-weight: 700;
  color: #111827;
  overflow-wrap: anywhere;
}
.Costing_allocSub {
  display: block;
  margin-top: 2px;
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
}
.Costing_pos {
  color: #16a34a;
  font-weight: 800;
}
.Costing_neg {
  color: #b91c1c;
  font-weight: 800;
}
.Costing_money {
  font-weight: 700;
  color: #111827;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.Costing_claimCell {
  min-width: 130px;
}
.Costing_claimBar {
  margin-top: 5px;
  height: 4px;
  border-radius: 999px;
  background: #e2e8f0;
  overflow: hidden;
}
.Costing_claimBarFill {
  height: 100%;
  border-radius: 999px;
  background: #16c7b7;
}
.Costing_claimBarOver {
  background: #f59e0b;
}
.Costing_chipRow {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
}
.Costing_emptyState {
  padding: 40px 24px;
  text-align: center;
  display: grid;
  gap: 8px;
  justify-items: center;
}
.Costing_emptyTitle {
  font-size: 14px;
  font-weight: 700;
  color: #334155;
}
.Costing_emptyBody {
  font-size: 13px;
  font-weight: 600;
  color: #64748b;
  max-width: 420px;
}
.Costing_detailHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}
.Costing_detailHeadLeft {
  display: grid;
  gap: 4px;
  min-width: 0;
}
.Costing_backBtn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: none;
  background: transparent;
  padding: 0;
  font-size: 13px;
  font-weight: 700;
  color: #2563eb;
  cursor: pointer;
  font-family: inherit;
  justify-self: start;
}
.Costing_backBtn:hover {
  text-decoration: underline;
}
.Costing_detailTitle {
  font-size: 19px;
  font-weight: 800;
  color: #111827;
  margin: 0;
  overflow-wrap: anywhere;
}
.Costing_detailSub {
  font-size: 13px;
  font-weight: 600;
  color: #64748b;
  margin: 0;
}
.Costing_detailHeadRight {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.Costing_navBtnGroup {
  display: inline-flex;
  border: 1px solid #e1e7ef;
  border-radius: 10px;
  overflow: hidden;
}
.Costing_navBtn {
  border: none;
  background: #fff;
  padding: 8px 12px;
  font-size: 13px;
  font-weight: 700;
  color: #334155;
  cursor: pointer;
  font-family: inherit;
}
.Costing_navBtn + .Costing_navBtn {
  border-left: 1px solid #e1e7ef;
}
.Costing_navBtn:hover:not(:disabled) {
  background: #f8fafc;
}
.Costing_navBtn:disabled {
  color: #cbd5e1;
  cursor: default;
}
.Costing_detailTabs {
  display: flex;
  border-bottom: 1px solid #e5e7eb;
  gap: 0;
  overflow-x: auto;
}
.Costing_detailTab {
  padding: 11px 16px;
  border: none;
  border-bottom: 2px solid transparent;
  background: transparent;
  font-size: 13px;
  font-weight: 600;
  color: #6b7280;
  cursor: pointer;
  margin-bottom: -1px;
  white-space: nowrap;
  font-family: inherit;
  transition: color 0.12s, border-color 0.12s;
}
.Costing_detailTabActive {
  color: #111827;
  border-bottom-color: #16c7b7;
  font-weight: 700;
}
.Costing_detailTab:hover:not(.Costing_detailTabActive) {
  color: #374151;
}
.Costing_tabBadge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 17px;
  height: 17px;
  padding: 0 5px;
  margin-left: 6px;
  border-radius: 999px;
  background: #fef3c7;
  color: #92400e;
  font-size: 11px;
  font-weight: 800;
}
@media (max-width: 900px) {
  .Costing_registerTable {
    min-width: 640px;
  }
  .Costing_kpiStrip {
    grid-template-columns: repeat(3, 1fr);
  }
  .Costing_kpi {
    border-top: 1px solid #eef2f7;
  }
  .Costing_kpi:nth-child(-n+3) {
    border-top: none;
  }
  .Costing_kpi:nth-child(3n+1) {
    border-left: none;
  }
  .Costing_toolbarActions {
    margin-left: 0;
  }
}
.Costing_moneyStrip {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: 0;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #fff;
  overflow: hidden;
}
.Costing_moneyZone {
  padding: 16px 18px;
  border-left: 1px solid #eef2f7;
  min-width: 0;
  display: grid;
  gap: 10px;
  align-content: start;
}
.Costing_moneyZone:first-child {
  border-left: none;
}
.Costing_moneyZoneTitle {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b;
}
.Costing_buildUp {
  display: flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
}
.Costing_buildUpItem {
  display: grid;
  gap: 2px;
}
.Costing_buildUpLabel {
  font-size: 11px;
  font-weight: 600;
  color: #94a3b8;
}
.Costing_buildUpValue {
  font-size: 15px;
  font-weight: 700;
  color: #334155;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.Costing_buildUpTotal {
  font-size: 18px;
  font-weight: 800;
  color: #111827;
}
.Costing_buildUpOp {
  font-size: 15px;
  font-weight: 700;
  color: #cbd5e1;
  align-self: center;
}
.Costing_overrideBadge {
  display: inline-flex;
  align-items: center;
  border: none;
  border-radius: 999px;
  padding: 3px 9px;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
}
.Costing_overrideBadge:hover {
  background: #dbeafe;
}
.Costing_claimFigures {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}
.Costing_claimPct {
  font-size: 18px;
  font-weight: 800;
  color: #111827;
  font-variant-numeric: tabular-nums;
}
.Costing_claimAmounts {
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
  font-variant-numeric: tabular-nums;
}
.Costing_claimProgressBar {
  height: 8px;
  border-radius: 999px;
  background: #e2e8f0;
  overflow: hidden;
}
.Costing_claimProgressFill {
  height: 100%;
  border-radius: 999px;
  background: #16c7b7;
}
.Costing_claimProgressOver {
  background: #f59e0b;
}
.Costing_marginRow {
  display: flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
}
.Costing_marginBig {
  font-size: 20px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.Costing_marginPct {
  font-size: 14px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.Costing_marginSecondary {
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
  font-variant-numeric: tabular-nums;
}
.Costing_compCard {
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #fff;
  padding: 14px 18px;
  display: grid;
  gap: 10px;
}
.Costing_compBar {
  display: flex;
  height: 14px;
  border-radius: 999px;
  overflow: hidden;
  background: #f1f5f9;
}
.Costing_compSegment {
  height: 100%;
  min-width: 3px;
  border: none;
  padding: 0;
  cursor: pointer;
}
.Costing_compLegend {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}
.Costing_legendItem {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: none;
  background: transparent;
  padding: 0;
  font-size: 12px;
  font-weight: 600;
  color: #475569;
  cursor: pointer;
  font-family: inherit;
  font-variant-numeric: tabular-nums;
}
.Costing_legendItem:hover {
  color: #111827;
}
.Costing_legendSwatch {
  width: 10px;
  height: 10px;
  border-radius: 3px;
  flex-shrink: 0;
}
.Costing_sectionCard {
  border: 1px solid #e1e7ef;
  border-radius: 12px;
  background: #f8fafc;
  padding: 14px;
  display: grid;
  gap: 12px;
}
.Costing_sectionHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}
.Costing_sectionTitle {
  font-size: 14px;
  font-weight: 800;
  color: #111827;
  margin: 0;
}
.Costing_sectionSub {
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
  margin: 2px 0 0;
}
.Costing_dataTableWrap {
  overflow-x: auto;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  background: #fff;
}
.Costing_dataTable {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
.Costing_dataTable th {
  padding: 9px 12px;
  text-align: left;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #64748b;
  background: #f8fafc;
  white-space: nowrap;
}
.Costing_dataTable td {
  padding: 9px 12px;
  border-top: 1px solid #eef2f7;
  vertical-align: middle;
}
.Costing_dataTable th.Costing_num,
.Costing_dataTable td.Costing_num {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.Costing_catHeader td {
  padding: 8px 12px;
  background: #f1f5f9;
  font-size: 12px;
  font-weight: 700;
  color: #334155;
  border-top: 1px solid #e2e8f0;
}
.Costing_tabEmpty {
  padding: 26px 18px;
  text-align: center;
  display: grid;
  gap: 6px;
  justify-items: center;
}
.Costing_modalOverlay {
  position: fixed;
  inset: 0;
  z-index: 80;
  background: rgba(15, 23, 42, 0.45);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
}
.Costing_modalCard {
  width: min(980px, 100%);
  max-height: 88vh;
  overflow: hidden;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 24px 64px rgba(15, 23, 42, 0.24);
}
.Costing_modalHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px;
  border-bottom: 1px solid #e5e7eb;
}
.Costing_modalTitle {
  font-size: 16px;
  font-weight: 800;
  color: #111827;
  margin: 0;
}
.Costing_modalFilters {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 10px;
  padding: 12px 18px;
  border-bottom: 1px solid #e5e7eb;
  align-items: end;
}
.Costing_modalBody {
  overflow: auto;
}
.Costing_modalFooter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
  padding: 12px 18px;
  border-top: 1px solid #e5e7eb;
  background: #f8fafc;
}
@media (max-width: 900px) {
  .Costing_moneyStrip {
    grid-template-columns: 1fr;
  }
  .Costing_moneyZone {
    border-left: none;
    border-top: 1px solid #eef2f7;
  }
  .Costing_moneyZone:first-child {
    border-top: none;
  }
}
.Costing_stepper {
  display: inline-flex;
  border: 1px solid #e1e7ef;
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
}
.Costing_step {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: none;
  background: #fff;
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 700;
  color: #64748b;
  cursor: pointer;
  font-family: inherit;
  white-space: nowrap;
}
.Costing_step + .Costing_step {
  border-left: 1px solid #e1e7ef;
}
.Costing_step:hover:not(:disabled) {
  background: #f8fafc;
}
.Costing_step:disabled {
  cursor: default;
}
.Costing_stepActive,
.Costing_stepActive:hover:not(:disabled) {
  background: #111827;
  color: #fff;
}
.Costing_stepDone {
  color: #16a34a;
}
.Costing_stepDot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: #eef2f7;
  font-size: 10px;
  font-weight: 800;
  color: #64748b;
  flex-shrink: 0;
}
.Costing_stepActive .Costing_stepDot {
  background: rgba(255, 255, 255, 0.22);
  color: #fff;
}
.Costing_stepDone .Costing_stepDot {
  background: #dcfce7;
  color: #16a34a;
}
.Costing_notesActions {
  display: flex;
  gap: 8px;
  align-items: center;
}
.Costing_dirtyDot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #f59e0b;
  flex-shrink: 0;
}
.Costing_segmented,
.Costing_kpiStrip,
.Costing_registerShell,
.Costing_detailCard,
.Costing_moneyStrip,
.Costing_compositionCard {
  border-color: var(--opebix-border);
  border-radius: var(--opebix-radius-panel);
  box-shadow: var(--opebix-shadow-xs);
}
.Costing_segmentedBtn {
  color: var(--opebix-text-soft);
}
.Costing_segmentedBtnActive,
.Costing_segmentedBtnActive:hover {
  background: var(--opebix-navy);
  color: #fff;
}
.Costing_searchInput,
.Costing_rangeButton {
  min-height: 40px;
  border-color: var(--opebix-border-strong);
  border-radius: var(--opebix-radius-control);
  color: var(--opebix-text);
}
.Costing_searchInput:focus {
  border-color: var(--opebix-focus);
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .12);
}
.Costing_kpi {
  border-color: var(--opebix-border);
}
.Costing_kpiLabel {
  color: var(--opebix-text-muted);
  font-size: 10px;
  letter-spacing: .075em;
}
.Costing_kpiValue {
  color: var(--opebix-text);
}
.Costing_modalCard {
  border: 1px solid var(--opebix-border);
  border-radius: var(--opebix-radius-panel);
  box-shadow: 0 28px 80px rgba(15, 23, 42, .26);
}

/* src/styles/Accounting.module.css */
.Accounting_root {
  display: grid;
  gap: 16px;
}
.Accounting_page {
  display: grid;
  gap: 16px;
  min-width: 0;
}
.Accounting_tabs {
  display: flex;
  gap: 26px;
  min-height: 48px;
  padding: 0 24px;
  overflow-x: auto;
  scrollbar-width: thin;
  border: 1px solid var(--opebix-border);
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
}
.Accounting_tab {
  position: relative;
  flex: 0 0 auto;
  min-height: 48px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #475569;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
  cursor: pointer;
}
.Accounting_tab:hover {
  background: transparent;
  color: #111827;
}
.Accounting_tabActive,
.Accounting_tabActive:hover {
  background: transparent;
  color: #111827;
}
.Accounting_tabActive::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  background: #0f172a;
  content: "";
}
.Accounting_registerSurface {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--opebix-border);
  border-radius: 14px;
  background: #fff;
  box-shadow: var(--opebix-shadow-xs);
}
.Accounting_registerHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 96px;
  padding: 18px 24px;
  border-bottom: 1px solid var(--opebix-border);
}
.Accounting_eyebrow {
  margin-bottom: 5px;
  color: #0f8f8a;
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.Accounting_registerHeader h1 {
  margin: 0;
  color: var(--opebix-text);
  font-size: 24px;
  font-weight: 850;
  letter-spacing: -.035em;
}
.Accounting_actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}
.Accounting_actions button svg {
  width: 15px;
  height: 15px;
}
.Accounting_registerFilters {
  display: grid;
  grid-template-columns: minmax(260px, 1.8fr) minmax(210px, .85fr) minmax(160px, .7fr) minmax(150px, .65fr) minmax(150px, .65fr);
  gap: 12px;
  align-items: end;
  padding: 14px 24px;
  border-bottom: 1px solid var(--opebix-border);
  background: #fff;
}
.Accounting_registerField {
  display: grid;
  gap: 5px;
  min-width: 0;
}
.Accounting_registerField > span,
.Accounting_registerMetric > span {
  color: var(--opebix-text-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .075em;
  text-transform: uppercase;
}
.Accounting_registerField input,
.Accounting_registerField select,
.Accounting_periodTrigger {
  width: 100%;
  min-width: 0;
  height: 36px;
  min-height: 36px;
  box-sizing: border-box;
  border: 1px solid var(--opebix-border-strong);
  border-radius: 8px;
  background: #fff;
  color: var(--opebix-text-soft);
  font: inherit;
  font-size: 12px;
}
.Accounting_registerField select {
  appearance: none;
  -webkit-appearance: none;
  padding: 0 32px 0 10px;
  background-image:
    linear-gradient(
      45deg,
      transparent 50%,
      #475569 50%),
    linear-gradient(
      135deg,
      #475569 50%,
      transparent 50%);
  background-position: calc(100% - 15px) 15px, calc(100% - 10px) 15px;
  background-repeat: no-repeat;
  background-size: 5px 5px, 5px 5px;
}
.Accounting_searchField > div {
  position: relative;
}
.Accounting_searchField svg {
  position: absolute;
  top: 50%;
  left: 11px;
  width: 15px;
  height: 15px;
  color: #94a3b8;
  transform: translateY(-50%);
  pointer-events: none;
}
.Accounting_searchField input {
  padding: 0 11px 0 34px;
}
.Accounting_periodPicker {
  position: relative;
  min-width: 0;
}
.Accounting_periodTrigger {
  display: grid;
  grid-template-columns: 16px minmax(0, 1fr) auto;
  gap: 7px;
  align-items: center;
  padding: 0 10px;
  text-align: left;
  cursor: pointer;
}
.Accounting_periodTrigger svg {
  width: 15px;
  height: 15px;
  color: #94a3b8;
}
.Accounting_periodTrigger span:nth-child(2) {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.Accounting_periodPopover {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  z-index: 40;
  width: min(360px, calc(100vw - 48px));
  padding: 10px;
  border: 1px solid var(--opebix-border);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .18);
}
.Accounting_periodPresets {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 5px;
}
.Accounting_periodPresets button {
  padding: 8px 9px;
  border: 0;
  border-radius: 7px;
  background: var(--opebix-surface-soft);
  color: var(--opebix-text-soft);
  font: inherit;
  font-size: 11px;
  font-weight: 750;
  text-align: left;
  cursor: pointer;
}
.Accounting_periodCustom {
  display: grid;
  gap: 8px;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid var(--opebix-border);
}
.Accounting_periodCustom > span {
  color: var(--opebix-text-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .075em;
  text-transform: uppercase;
}
.Accounting_periodCustom > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}
.Accounting_registerMetric {
  min-width: 0;
  min-height: 47px;
  padding-left: 10px;
  border-left: 1px solid var(--opebix-border);
}
.Accounting_registerMetric strong,
.Accounting_registerMetric small {
  display: block;
  font-variant-numeric: tabular-nums;
}
.Accounting_registerMetric strong {
  margin-top: 2px;
  color: var(--opebix-text);
  font-size: 20px;
  font-weight: 875;
  letter-spacing: -.025em;
  white-space: nowrap;
}
.Accounting_registerMetric small {
  margin-top: 1px;
  overflow: hidden;
  color: #98a2b3;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.Accounting_registerMetricDanger > span,
.Accounting_registerMetricDanger strong {
  color: #c92a20;
}
.Accounting_registerStatusBar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 48px;
  padding: 8px 24px;
  border-bottom: 1px solid var(--opebix-border);
}
.Accounting_statusTabs {
  display: flex;
  gap: 7px;
  overflow-x: auto;
}
.Accounting_statusTabs button {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 6px;
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid var(--opebix-border);
  border-radius: 999px;
  background: #fff;
  color: var(--opebix-text-soft);
  font: inherit;
  font-size: 11px;
  font-weight: 750;
  cursor: pointer;
}
.Accounting_statusTabs button span {
  color: #98a2b3;
  font-size: 10px;
}
.Accounting_statusTabs .Accounting_statusTabActive {
  border-color: var(--opebix-navy);
  background: var(--opebix-navy);
  color: #fff;
}
.Accounting_statusTabs .Accounting_statusTabActive span {
  color: #cbd5e1;
}
.Accounting_sortSummary {
  flex: 0 0 auto;
  color: #98a2b3;
  font-size: 11px;
  white-space: nowrap;
}
.Accounting_sortSummary strong {
  color: var(--opebix-text-soft);
}
.Accounting_registerTable {
  min-width: 980px;
}
.Accounting_registerTable th,
.Accounting_registerTable td {
  height: 40px;
  box-sizing: border-box;
}
.Accounting_registerTable th {
  padding: 0;
}
.Accounting_sortButton {
  display: inline-flex;
  width: 100%;
  height: 100%;
  align-items: center;
  gap: 5px;
  padding: 0 12px;
  border: 0;
  background: transparent;
  color: var(--opebix-text-muted);
  font: inherit;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .075em;
  text-align: left;
  text-transform: uppercase;
  cursor: pointer;
}
th.Accounting_numeric .Accounting_sortButton {
  justify-content: flex-end;
}
.Accounting_sortButtonActive {
  color: #0f8f8a;
}
.Accounting_referenceCell {
  color: #0f8f8a !important;
  font-weight: 800;
}
.Accounting_paymentMethodList {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 4px 10px;
  align-items: center;
}
.Accounting_paymentMethodItem {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}
.Accounting_reimbursementDot {
  width: 7px;
  height: 7px;
  flex: 0 0 auto;
  border: 1px solid rgb(15 23 42 / 8%);
  border-radius: 50%;
  box-shadow: 0 0 0 2px #fff;
}
.Accounting_reimbursementDotSuccess {
  background: #16a36a;
}
.Accounting_reimbursementDotWarning {
  background: #f3b61f;
}
.Accounting_bulkSelectCell {
  width: 42px;
  min-width: 42px;
  padding: 0 10px !important;
  text-align: center;
}
.Accounting_bulkSelectCell input {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: #0f8f8a;
  cursor: pointer;
}
.Accounting_bulkSelectCell input:disabled {
  cursor: not-allowed;
}
.Accounting_bulkSelectedRow {
  background: #f0fdfa;
}
.Accounting_bulkActionBar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 10px 14px;
  border-top: 1px solid #b9e7e4;
  border-bottom: 1px solid #b9e7e4;
  background: #f0fdfa;
}
.Accounting_bulkActionBar > div:first-child {
  display: grid;
  gap: 2px;
}
.Accounting_bulkActionBar > div:first-child strong {
  color: var(--opebix-text);
  font-size: 13px;
}
.Accounting_bulkActionBar > div:first-child span {
  color: var(--opebix-text-muted);
  font-size: 11px;
}
.Accounting_bulkActionBar > div:last-child {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}
.Accounting_bulkActionBar button {
  min-height: 36px;
}
.Accounting_bulkReviewSurface {
  display: grid;
  gap: 0;
  overflow: hidden;
  border: 1px solid var(--opebix-border);
  border-radius: 12px;
  background: #fff;
}
.Accounting_bulkReviewSurface > .Accounting_sectionHead {
  padding: 18px 20px;
  border-bottom: 1px solid var(--opebix-border);
}
.Accounting_bulkSharedFields {
  display: grid;
  grid-template-columns: minmax(220px, 320px) minmax(280px, 1fr);
  gap: 14px;
  padding: 16px 20px;
  border-bottom: 1px solid var(--opebix-border);
  background: #f8fafc;
}
.Accounting_bulkReviewTable {
  min-width: 1120px;
}
.Accounting_bulkEligibilityNotice {
  padding: 9px 12px;
  border: 1px solid #fed7aa;
  border-radius: 8px;
  background: #fff7ed;
  color: #9a4b08;
  font-size: 12px;
  font-weight: 700;
}
.Accounting_bulkReviewSurface > .Accounting_bulkEligibilityNotice {
  margin: 14px 20px 0;
}
.Accounting_bulkReviewTable th {
  white-space: nowrap;
}
.Accounting_bulkReviewTable input,
.Accounting_bulkReviewTable select {
  width: 100%;
  min-width: 120px;
  height: 38px;
  box-sizing: border-box;
  border: 1px solid #cfd8e5;
  border-radius: 7px;
  background: #fff;
  padding: 0 9px;
  color: var(--opebix-text);
  font: inherit;
  font-size: 12px;
}
.Accounting_bulkReviewTable select {
  min-width: 145px;
}
.Accounting_bulkReviewTable .Accounting_invalidInput {
  border-color: #dc2f24;
  background: #fff7f7;
}
.Accounting_bulkReviewFooter {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 24px;
  padding: 14px 20px;
  border-top: 1px solid var(--opebix-border);
  background: #f8fafc;
}
.Accounting_bulkReviewFooter > div {
  display: grid;
  gap: 2px;
  text-align: right;
}
.Accounting_bulkReviewFooter span {
  color: var(--opebix-text-muted);
  font-size: 11px;
  font-weight: 750;
  text-transform: uppercase;
}
.Accounting_bulkReviewFooter strong {
  color: var(--opebix-text);
  font-size: 20px;
}
.Accounting_bulkDialogBackdrop {
  position: fixed;
  z-index: 1200;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgb(15 23 42 / 48%);
}
.Accounting_bulkDialog {
  display: grid;
  gap: 16px;
  width: min(620px, 100%);
  max-height: min(760px, calc(100vh - 40px));
  overflow: auto;
  padding: 20px;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 24px 64px rgb(15 23 42 / 24%);
}
.Accounting_bulkDialog .Accounting_sectionHead {
  padding: 0;
}
.Accounting_bulkSettlementList {
  display: grid;
  overflow: auto;
  border: 1px solid var(--opebix-border);
  border-radius: 9px;
}
.Accounting_bulkSettlementList > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 11px 12px;
  border-bottom: 1px solid var(--opebix-border);
}
.Accounting_bulkSettlementList > div:last-child {
  border-bottom: 0;
}
.Accounting_bulkSettlementList span {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.Accounting_bulkSettlementList small {
  overflow-wrap: anywhere;
  color: var(--opebix-text-muted);
  font-size: 11px;
}
.Accounting_bulkSettlementList > div > strong {
  white-space: nowrap;
}
.Accounting_bulkDialogActions {
  display: flex;
  justify-content: flex-end;
}
.Accounting_statusDot {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--opebix-text-soft);
  font-size: 11px;
  font-weight: 750;
  white-space: nowrap;
}
.Accounting_statusDot > span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #64748b;
}
.Accounting_statusDotSuccess > span {
  background: #16875b;
}
.Accounting_statusDotDanger {
  color: #c92a20;
}
.Accounting_statusDotDanger > span {
  background: #dc2f24;
}
.Accounting_statusDotInfo {
  color: #1d5fd1;
}
.Accounting_statusDotInfo > span {
  background: #2f6fe4;
}
.Accounting_statusDotWarning > span {
  background: #77839a;
}
.Accounting_overdueRow {
  box-shadow: inset 3px 0 0 #ef4e42;
}
.Accounting_overdueValue {
  color: #c92a20 !important;
  font-weight: 825 !important;
}
.Accounting_registerPager {
  display: grid;
  grid-template-columns: auto auto 1fr;
  gap: 14px;
  align-items: center;
  min-height: 56px;
  padding: 8px 24px;
  border-top: 1px solid var(--opebix-border);
  color: var(--opebix-text-muted);
  font-size: 11px;
}
.Accounting_registerPager label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.Accounting_registerPager select,
.Accounting_registerPager button {
  min-height: 30px;
  border: 1px solid var(--opebix-border-strong);
  border-radius: 7px;
  background: #fff;
  color: var(--opebix-text-soft);
  font: inherit;
  font-size: 11px;
}
.Accounting_registerPager select {
  min-width: 50px;
  padding: 0 7px;
}
.Accounting_registerPager nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
}
.Accounting_registerPager button {
  min-width: 30px;
  padding: 0 8px;
  cursor: pointer;
}
.Accounting_registerPager button[aria-current=page] {
  border-color: var(--opebix-navy);
  background: var(--opebix-navy);
  color: #fff;
}
.Accounting_registerPager button:disabled {
  color: #c2c9d3;
  cursor: not-allowed;
}
.Accounting_detailSurface {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--opebix-border);
  border-radius: 14px;
  background: #fff;
  box-shadow: var(--opebix-shadow-xs);
}
.Accounting_detailHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 20px 24px;
  border-bottom: 1px solid var(--opebix-border);
}
.Accounting_detailHeader h1 {
  margin: 0;
  color: var(--opebix-text);
  font-size: 24px;
  font-weight: 850;
  letter-spacing: -.03em;
}
.Accounting_detailHeader p {
  margin: 5px 0 0;
  color: var(--opebix-text-muted);
  font-size: 12px;
}
.Accounting_detailBody {
  display: grid;
  gap: 18px;
  padding: 18px 24px 24px;
}
.Accounting_detailSummary {
  display: grid;
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  overflow: hidden;
  border: 1px solid var(--opebix-border);
  border-radius: 10px;
  background: #fff;
}
.Accounting_detailSummary > div {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 11px 13px;
  border-right: 1px solid var(--opebix-border);
  border-bottom: 1px solid var(--opebix-border);
}
.Accounting_detailSummary > div:nth-child(5n) {
  border-right: 0;
}
.Accounting_detailSummary > div:nth-last-child(-n+5) {
  border-bottom: 0;
}
.Accounting_detailSummary span,
.Accounting_detailSectionTitle span {
  color: var(--opebix-text-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .075em;
  text-transform: uppercase;
}
.Accounting_detailSummary strong {
  overflow: hidden;
  color: var(--opebix-text-soft);
  font-size: 12px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.Accounting_detailMeta {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 12px;
}
.Accounting_detailMeta > div {
  padding: 11px 13px;
  border: 1px solid var(--opebix-border);
  border-radius: 9px;
  background: var(--opebix-surface-soft);
}
.Accounting_detailSectionTitle {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  padding-top: 2px;
}
.Accounting_detailSectionTitle > div {
  display: grid;
  gap: 3px;
}
.Accounting_detailSectionTitle small {
  color: #98a2b3;
  font-size: 10px;
}
.Accounting_detailSectionTitle > strong {
  color: var(--opebix-text-muted);
  font-size: 11px;
}
.Accounting_detailPayments {
  display: grid;
  gap: 10px;
  padding-top: 4px;
  border-top: 1px solid var(--opebix-border);
}
.Accounting_kpiStrip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 0;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
  overflow: hidden;
}
.Accounting_kpi {
  padding: 15px 12px;
  border-left: 1px solid #eef2f7;
  min-width: 0;
  display: grid;
  gap: 5px;
  align-content: start;
  text-align: left;
  background: #fff;
  font-family: inherit;
}
.Accounting_kpi:first-child {
  border-left: none;
}
button.Accounting_kpi {
  cursor: pointer;
  border-top: none;
  border-right: none;
  border-bottom: none;
}
button.Accounting_kpi:hover {
  background: #f8fafc;
}
.Accounting_kpiLabel {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b;
}
.Accounting_kpiValue {
  font-size: 17px;
  font-weight: 800;
  color: #111827;
  font-variant-numeric: tabular-nums;
  line-height: 1.1;
  overflow-wrap: anywhere;
}
.Accounting_kpiSub {
  font-size: 12px;
  font-weight: 700;
  color: #64748b;
  font-variant-numeric: tabular-nums;
}
.Accounting_kpiPos {
  color: #16a34a;
}
.Accounting_kpiNeg {
  color: #b91c1c;
}
.Accounting_kpiAmber {
  color: #b45309;
}
.Accounting_card {
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
  padding: 18px;
  display: grid;
  gap: 14px;
}
.Accounting_flushCard {
  padding: 0;
  overflow: hidden;
}
.Accounting_cardHead {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.Accounting_cardTitle {
  font-size: 15px;
  font-weight: 800;
  color: #111827;
  margin: 0;
}
.Accounting_cardSub {
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
  margin: 3px 0 0;
}
.Accounting_cardControls {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.Accounting_sectionHead {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding: 17px 18px;
  border-bottom: 1px solid #e9edf3;
  flex-wrap: wrap;
}
.Accounting_sectionTitle {
  margin: 0;
  color: #111827;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.25;
}
.Accounting_sectionSub {
  margin: 4px 0 0;
  color: #64748b;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.45;
}
.Accounting_actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}
.Accounting_actionMenuWrap {
  position: relative;
}
.Accounting_actionMenuTrigger {
  display: inline-grid;
  width: 36px;
  min-height: 34px;
  place-items: center;
  padding: 0;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  color: #334155;
  font: inherit;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 1px;
  cursor: pointer;
}
.Accounting_actionMenuTrigger:hover,
.Accounting_actionMenuTrigger[aria-expanded=true] {
  border-color: #cbd5e1;
  background: #f8fafc;
}
.Accounting_actionMenuTrigger:focus-visible,
.Accounting_actionMenu button:focus-visible {
  outline: 3px solid rgba(37, 99, 235, 0.22);
  outline-offset: 2px;
}
.Accounting_actionMenu {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  z-index: 30;
  display: grid;
  width: max-content;
  min-width: 170px;
  gap: 2px;
  padding: 6px;
  border: 1px solid #dbe3ef;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 14px 32px rgba(15, 23, 42, 0.16);
}
.Accounting_actionMenu button {
  width: 100%;
  padding: 9px 10px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #334155;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  text-align: left;
  cursor: pointer;
}
.Accounting_actionMenu button:hover {
  background: #f1f5f9;
}
.Accounting_actionMenu .Accounting_actionMenuDanger {
  color: #b42318;
}
.Accounting_actionMenu .Accounting_actionMenuDanger:hover {
  background: #fff1f0;
}
.Accounting_primaryBtn,
.Accounting_secondaryBtn,
.Accounting_dangerBtn {
  min-height: 34px;
  padding: 7px 12px;
  border-radius: 8px;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}
.Accounting_primaryBtn {
  border: 1px solid #111827;
  background: #111827;
  color: #fff;
}
.Accounting_primaryBtn:hover {
  background: #263244;
  border-color: #263244;
}
.Accounting_secondaryBtn {
  border: 1px solid #dbe3ef;
  background: #fff;
  color: #334155;
}
.Accounting_secondaryBtn:hover {
  background: #f8fafc;
  border-color: #cbd5e1;
}
.Accounting_dangerBtn {
  border: 1px solid #fecaca;
  background: #fff7f7;
  color: #991b1b;
}
.Accounting_dangerBtn:hover {
  background: #fee2e2;
}
.Accounting_primaryBtn:disabled,
.Accounting_secondaryBtn:disabled,
.Accounting_dangerBtn:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}
.Accounting_primaryBtn:focus-visible,
.Accounting_secondaryBtn:focus-visible,
.Accounting_dangerBtn:focus-visible,
.Accounting_tab:focus-visible,
.Accounting_segmentedBtn:focus-visible {
  outline: 3px solid rgba(37, 99, 235, 0.22);
  outline-offset: 2px;
}
.Accounting_toolbar {
  display: grid;
  gap: 12px;
  padding: 14px 18px;
  border-bottom: 1px solid #e9edf3;
  background: #fbfcfe;
}
.Accounting_filterRow {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.Accounting_filterGrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  align-items: end;
}
.Accounting_summaryTile {
  min-height: 58px;
  padding: 9px 11px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
}
.Accounting_summaryTileAlert {
  border-color: #fecaca;
  background: #fff7f7;
}
.Accounting_summaryLabel {
  color: #64748b;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.Accounting_summaryTileAlert .Accounting_summaryLabel {
  color: #991b1b;
}
.Accounting_summaryValue {
  margin-top: 4px;
  color: #111827;
  font-size: 14px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}
.Accounting_summaryTileAlert .Accounting_summaryValue {
  color: #991b1b;
}
.Accounting_filterNotice {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.Accounting_filterBadge {
  padding: 7px 10px;
  border: 1px solid #fecaca;
  border-radius: 999px;
  background: #fff7f7;
  color: #991b1b;
  font-size: 12px;
  font-weight: 800;
}
.Accounting_segmented {
  display: inline-flex;
  gap: 3px;
  padding: 3px;
  border: 1px solid #e1e7ef;
  border-radius: 10px;
  background: #fff;
}
.Accounting_segmentedBtn {
  border: none;
  border-radius: 8px;
  padding: 6px 12px;
  background: transparent;
  color: #334155;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
}
.Accounting_segmentedBtn:hover {
  background: #f1f5f9;
}
.Accounting_segmentedBtnActive,
.Accounting_segmentedBtnActive:hover {
  background: #111827;
  color: #fff;
}
.Accounting_tableScroll {
  width: 100%;
  overflow-x: auto;
}
.Accounting_table {
  width: 100%;
  border-collapse: collapse;
  color: #334155;
  font-size: 13px;
  font-variant-numeric: tabular-nums;
}
.Accounting_table thead {
  border-top: 1px solid #e9edf3;
  border-bottom: 1px solid #e1e7ef;
  background: #f8fafc;
}
.Accounting_table th {
  padding: 9px 12px;
  color: #64748b;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-align: left;
  text-transform: uppercase;
  white-space: nowrap;
}
.Accounting_table td {
  padding: 10px 12px;
  border-bottom: 1px solid #eef2f7;
  vertical-align: middle;
}
.Accounting_table tbody tr:last-child td {
  border-bottom: 0;
}
.Accounting_clickableRow {
  cursor: pointer;
}
.Accounting_clickableRow:hover {
  background: #f8fafc;
}
.Accounting_numeric {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.Accounting_strong {
  color: #111827;
  font-weight: 800;
}
.Accounting_linkValue {
  color: #0369a1;
  font-weight: 800;
}
.Accounting_muted {
  color: #64748b;
}
.Accounting_emptyState {
  padding: 26px 18px;
  color: #64748b;
  font-size: 13px;
  font-weight: 650;
  text-align: center;
}
.Accounting_formBody {
  display: grid;
  gap: 16px;
  padding: 16px 18px 20px;
}
.Accounting_formGrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 12px;
  align-items: end;
}
.Accounting_settlementToggle {
  min-width: 0;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 10px;
  border: 1px solid var(--opebix-border-strong);
  border-radius: 8px;
  background: var(--opebix-surface-soft);
  color: var(--opebix-text);
  box-sizing: border-box;
  position: relative;
  cursor: pointer;
  transition:
    border-color 150ms ease,
    background 150ms ease,
    box-shadow 150ms ease;
}
.Accounting_settlementToggle:hover {
  border-color: #94a3b8;
}
.Accounting_settlementToggleOutstanding {
  border-color: #f6c978;
  background: #fffaf0;
}
.Accounting_settlementToggleSettled {
  border-color: #86d5a2;
  background: #f2fbf5;
}
.Accounting_settlementStatus {
  min-width: 0;
  color: #9a5b0b;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.25;
}
.Accounting_settlementToggleSettled .Accounting_settlementStatus {
  color: #167344;
}
.Accounting_settlementInput {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  opacity: 0;
  pointer-events: none;
}
.Accounting_settlementSwitch {
  width: 42px;
  height: 24px;
  display: block;
  padding: 2px;
  border: 1px solid #a8b3c2;
  border-radius: 999px;
  background: #cbd5e1;
  box-sizing: border-box;
  transition: background 150ms ease, border-color 150ms ease;
}
.Accounting_settlementSwitch span {
  width: 18px;
  height: 18px;
  display: block;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.24);
  transition: transform 150ms ease;
}
.Accounting_settlementInput:checked + .Accounting_settlementSwitch {
  border-color: #16834d;
  background: #1f9d5a;
}
.Accounting_settlementInput:checked + .Accounting_settlementSwitch span {
  transform: translateX(18px);
}
.Accounting_settlementInput:focus-visible + .Accounting_settlementSwitch {
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.22);
}
.Accounting_documentGrid {
  display: grid;
  grid-template-columns: minmax(170px, 1.3fr) 125px 125px 145px 120px minmax(120px, 1fr);
  gap: 12px;
  align-items: end;
}
.Accounting_formSection {
  display: grid;
  gap: 12px;
  padding-top: 14px;
  border-top: 1px solid #e9edf3;
}
.Accounting_formSectionTitle {
  margin: 0;
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.Accounting_formFooter {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding: 13px 18px;
  border-top: 1px solid #e9edf3;
  background: #f8fafc;
  flex-wrap: wrap;
}
.Accounting_documentEditor {
  --editor-navy: #131c2e;
  --editor-teal: #0f9f9a;
  min-height: calc(100vh - 132px);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  overflow: hidden;
  border: 1px solid #dce4ee;
  border-radius: 18px;
  background: #fff;
}
.Accounting_editorHeader {
  min-height: 86px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 28px;
  border-bottom: 1px solid #e5eaf1;
  background: #fff;
  color: #172033;
}
.Accounting_editorHeading,
.Accounting_editorHeaderActions,
.Accounting_editorTitleRow,
.Accounting_autosaveState,
.Accounting_editorFooter > div,
.Accounting_lineEditorActions > div {
  display: flex;
  align-items: center;
}
.Accounting_editorHeading {
  align-items: flex-start;
  flex-direction: column;
  gap: 5px;
}
.Accounting_editorEyebrow {
  color: var(--editor-teal);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.Accounting_editorTitleRow {
  gap: 18px;
}
.Accounting_editorTitleRow h1 {
  margin: 0;
  font-size: 23px;
  line-height: 1.15;
  letter-spacing: -.03em;
}
.Accounting_editorHeaderActions {
  gap: 10px;
}
.Accounting_autosaveState {
  min-height: 34px;
  gap: 7px;
  padding: 0 12px;
  border: 1px solid #dce4ee;
  border-radius: 8px;
  background: #f8fafc;
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
}
.Accounting_autosaveState i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--editor-teal);
}
.Accounting_autosaveFailed i {
  background: #fb7185;
}
.Accounting_editorCancel {
  min-height: 34px;
  padding: 0 14px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #334155;
  font-weight: 800;
  cursor: pointer;
}
.Accounting_editorCancel:hover {
  background: #f8fafc;
}
.Accounting_editorWorkspace {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 324px;
}
.Accounting_editorMain {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 20px;
  padding: 26px 28px 30px;
}
.Accounting_editorSidebar {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 16px;
  padding: 26px 24px;
  border-left: 1px solid #e5eaf1;
  background: #fbfcfe;
}
.Accounting_editorCard,
.Accounting_editorSideCard {
  border: 1px solid #dce4ee;
  border-radius: 14px;
  background: #fff;
}
.Accounting_editorCard {
  overflow: hidden;
}
.Accounting_editorCardHead {
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 18px;
  border-bottom: 1px solid #e5eaf1;
  background: #f8fafc;
}
.Accounting_editorCardHead h2,
.Accounting_editorSideCard h2 {
  margin: 0;
  color: #435168;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.Accounting_editorCardHead > button {
  border: 0;
  background: transparent;
  color: var(--editor-teal);
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}
.Accounting_editorDetailsGrid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 15px 18px;
  padding: 17px 18px 19px;
}
.Accounting_editorPartyField,
.Accounting_editorContactField {
  grid-column: span 6;
}
.Accounting_editorReferenceField,
.Accounting_editorDateField,
.Accounting_editorTermsField,
.Accounting_editorDueField {
  grid-column: span 3;
}
.Accounting_editorBillingField {
  grid-column: 1 / -1;
}
.Accounting_editorDetailsGrid label,
.Accounting_editorNotes label {
  color: #637089;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.Accounting_editorDetailsGrid input,
.Accounting_editorDetailsGrid select,
.Accounting_editorDetailsGrid textarea,
.Accounting_editorNotes textarea,
.Accounting_amountMode select {
  width: 100%;
  min-height: 42px;
  box-sizing: border-box;
  border: 1px solid #d5deea;
  border-radius: 9px;
  background: #fff;
  padding: 8px 13px;
  color: #172033;
  font: inherit;
  font-size: 13px;
  outline: none;
}
.Accounting_editorDetailsGrid input:focus,
.Accounting_editorDetailsGrid select:focus,
.Accounting_editorNotes textarea:focus,
.Accounting_editorLineTable input:focus,
.Accounting_editorLineTable select:focus,
.Accounting_amountMode select:focus {
  border-color: var(--editor-teal);
  box-shadow: 0 0 0 3px rgba(15, 159, 154, .12);
}
.Accounting_termInput {
  position: relative;
}
.Accounting_termInput input {
  padding-right: 76px;
}
.Accounting_termInput span {
  position: absolute;
  right: 38px;
  top: 50%;
  z-index: 1;
  transform: translateY(-50%);
  color: #7b879b;
  font-size: 12px;
  pointer-events: none;
}
.Accounting_partyCombobox {
  position: relative;
}
.Accounting_partyOptions {
  width: 100%;
  max-height: 220px;
  position: absolute;
  top: calc(100% + 5px);
  left: 0;
  z-index: 12;
  overflow-y: auto;
  padding: 5px;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 14px 32px rgba(15, 23, 42, .16);
}
.Accounting_partyOptions button {
  width: 100%;
  min-height: 38px;
  display: grid;
  gap: 2px;
  padding: 7px 10px;
  border: 0;
  border-radius: 7px;
  background: #fff;
  color: #172033;
  text-align: left;
  cursor: pointer;
}
.Accounting_partyOptions button:hover,
.Accounting_partyOptions .Accounting_partyOptionActive {
  background: #eef8f7;
  color: #0f5f5b;
}
.Accounting_partyOptions strong {
  color: inherit;
  font-size: 13px;
  font-weight: 800;
}
.Accounting_partyOptions small {
  overflow: hidden;
  color: #64748b;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.Accounting_amountMode {
  display: flex;
  align-items: center;
  gap: 9px;
  color: #637089;
  font-size: 12px;
}
.Accounting_amountMode select {
  width: auto;
  min-height: 32px;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 800;
}
.Accounting_editorLineTable {
  width: 100%;
  min-width: 1100px;
  border-collapse: collapse;
  font-size: 12px;
}
.Accounting_editorLineTable th {
  height: 31px;
  padding: 0 10px;
  background: #fbfcfe;
  color: #8793a8;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .07em;
  text-align: left;
  text-transform: uppercase;
}
.Accounting_editorLineTable th:nth-child(2),
.Accounting_editorLineTable th:nth-child(3),
.Accounting_editorLineTable th:nth-child(4),
.Accounting_editorLineTable th:nth-child(8) {
  text-align: right;
}
.Accounting_editorLineTable td {
  height: 51px;
  padding: 0 9px;
  border-top: 1px solid #e9edf3;
  color: #202a3c;
}
.Accounting_editorLineTable td:nth-child(1) {
  min-width: 235px;
}
.Accounting_editorLineTable td:nth-child(2) {
  width: 68px;
}
.Accounting_editorLineTable td:nth-child(3) {
  width: 96px;
}
.Accounting_editorLineTable td:nth-child(4) {
  width: 74px;
}
.Accounting_editorLineTable td:nth-child(5) {
  width: 190px;
}
.Accounting_editorLineTable td:nth-child(6) {
  width: 220px;
}
.Accounting_editorLineTable td:nth-child(7) {
  width: 150px;
}
.Accounting_editorLineTable td:nth-child(8) {
  width: 105px;
  text-align: right;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
}
.Accounting_editorLineTable td:last-child {
  width: 28px;
}
.Accounting_editorLineTable input,
.Accounting_editorLineTable select {
  width: 100%;
  height: 35px;
  box-sizing: border-box;
  border: 1px solid transparent;
  border-radius: 7px;
  background: transparent;
  padding: 5px 8px;
  color: inherit;
  font: inherit;
  outline: none;
}
.Accounting_editorLineTable td:nth-child(2) input,
.Accounting_editorLineTable td:nth-child(3) input,
.Accounting_editorLineTable td:nth-child(4) input {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.Accounting_editorLineTable td:last-child button {
  border: 0;
  background: transparent;
  color: #9aa6b9;
  font-size: 20px;
  cursor: pointer;
}
.Accounting_lineEditorActions {
  min-height: 57px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 18px;
  border-top: 1px solid #e5eaf1;
}
.Accounting_lineEditorActions > div {
  gap: 8px;
}
.Accounting_lineEditorActions > span {
  color: #95a1b5;
  font-size: 11px;
}
.Accounting_editorNotes {
  display: grid;
  gap: 15px;
}
.Accounting_editorNotes textarea {
  min-height: 78px;
  resize: vertical;
}
.Accounting_editorSideCard {
  min-width: 0;
  padding: 17px 18px;
}
.Accounting_editorTotalRows {
  display: grid;
  gap: 14px;
  padding-bottom: 16px;
  border-bottom: 1px solid #e5eaf1;
}
.Accounting_editorTotalRows > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: #69768e;
  font-size: 13px;
}
.Accounting_editorTotalRows strong {
  min-width: 0;
  color: #172033;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
  text-align: right;
}
.Accounting_editorGrandTotal {
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: baseline;
  gap: 6px 12px;
  padding-top: 14px;
}
.Accounting_editorGrandTotal span {
  color: #435168;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.Accounting_editorGrandTotal strong {
  min-width: 0;
  max-width: 100%;
  justify-self: stretch;
  color: #101827;
  font-size: clamp(22px, 1.85vw, 28px);
  line-height: 1.05;
  letter-spacing: -.04em;
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
  text-align: right;
}
.Accounting_editorGrandTotal small {
  grid-column: 1 / -1;
  color: #9aa6b9;
  font-size: 11px;
}
.Accounting_attachmentDropzone {
  width: 100%;
  min-height: 100px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 5px;
  margin-top: 12px;
  border: 1px dashed #ccd7e6;
  border-radius: 11px;
  background: #fbfcfe;
  color: #435168;
  cursor: pointer;
}
.Accounting_attachmentDropzone > span {
  color: #94a3b8;
  font-size: 22px;
}
.Accounting_attachmentDropzone strong {
  font-size: 12px;
}
.Accounting_attachmentDropzone small {
  color: #9aa6b9;
  font-size: 10px;
}
.Accounting_attachmentItem {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  margin-top: 9px;
  padding-top: 9px;
  border-top: 1px solid #edf1f5;
}
.Accounting_attachmentItem a {
  min-width: 0;
  display: grid;
  color: #314158;
  text-decoration: none;
}
.Accounting_attachmentItem strong {
  overflow: hidden;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.Accounting_attachmentItem small {
  color: #96a1b3;
  font-size: 10px;
}
.Accounting_attachmentItem button {
  border: 0;
  background: transparent;
  color: #a0aabc;
  font-size: 18px;
  cursor: pointer;
}
.Accounting_validationList {
  display: grid;
  gap: 10px;
  margin-top: 13px;
  font-size: 11px;
  line-height: 1.35;
}
.Accounting_validationOk {
  color: #18856f;
}
.Accounting_validationWarning {
  color: #a66a00;
}
.Accounting_editorError {
  padding: 10px 12px;
  border: 1px solid #fecaca;
  border-radius: 9px;
  background: #fff7f7;
  color: #9f1239;
  font-size: 12px;
  font-weight: 700;
}
.Accounting_editorFooter {
  min-height: 68px;
  position: sticky;
  bottom: 0;
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 10px 28px;
  border-top: 1px solid #dfe6ef;
  background: #f8fafc;
}
.Accounting_editorFooter > span {
  color: #94a3b8;
  font-size: 11px;
}
.Accounting_editorFooter > div {
  gap: 9px;
}
.Accounting_editorFooter button {
  min-height: 38px;
}
.Accounting_detailAttachments > div:last-child {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  padding-top: 11px;
}
.Accounting_detailAttachments a {
  min-width: 190px;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 10px 12px;
  border: 1px solid #dce4ee;
  border-radius: 9px;
  color: #334155;
  text-decoration: none;
}
.Accounting_detailAttachments a > span:last-child {
  min-width: 0;
  display: grid;
}
.Accounting_detailAttachments a strong {
  overflow: hidden;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.Accounting_detailAttachments a small {
  color: #94a3b8;
  font-size: 10px;
}
@media (max-width: 1100px) {
  .Accounting_editorWorkspace {
    grid-template-columns: 1fr;
  }
  .Accounting_editorSidebar {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-top: 1px solid #e5eaf1;
    border-left: 0;
  }
  .Accounting_editorDetailsGrid {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
}
.Accounting_readout {
  min-height: 30px;
  display: flex;
  align-items: center;
  padding: 5px 8px;
  border: 1px solid #dbe3ef;
  border-radius: 7px;
  background: #f8fafc;
  color: #334155;
  font-size: 13px;
}
.Accounting_readoutNumeric {
  justify-content: flex-end;
  color: #111827;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}
.Accounting_notice {
  padding: 10px 12px;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #f8fafc;
  color: #475569;
  font-size: 12px;
  font-weight: 700;
}
.Accounting_noticeSuccess {
  border-color: #bbf7d0;
  background: #f0fdf4;
  color: #166534;
}
.Accounting_noticeDanger {
  border-color: #fecaca;
  background: #fff7f7;
  color: #991b1b;
}
.Accounting_drawerBackdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, 0.22);
  pointer-events: auto;
}
.Accounting_drawer {
  position: absolute;
  top: 0;
  right: 0;
  width: min(760px, 100vw);
  height: 100%;
  display: grid;
  grid-template-rows: auto 1fr auto;
  background: #fff;
  box-shadow: -24px 0 60px rgba(15, 23, 42, 0.24);
  pointer-events: auto;
}
.Accounting_drawerHead {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding: 17px 18px;
  border-bottom: 1px solid #e9edf3;
}
.Accounting_chartFrame {
  position: relative;
  width: 100%;
}
.Accounting_legend {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}
.Accounting_legendItem {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  color: #475569;
}
.Accounting_legendSwatch {
  width: 11px;
  height: 11px;
  border-radius: 3px;
  flex-shrink: 0;
}
.Accounting_legendLine {
  width: 14px;
  height: 3px;
  border-radius: 2px;
  flex-shrink: 0;
}
.Accounting_legendNote {
  font-size: 12px;
  font-weight: 600;
  color: #94a3b8;
}
.Accounting_listGrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 14px;
}
.Accounting_listCard {
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  background: #fff;
  padding: 14px;
  display: grid;
  gap: 10px;
  align-content: start;
}
.Accounting_listRow {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  align-items: baseline;
}
.Accounting_listName {
  font-size: 13px;
  font-weight: 700;
  color: #111827;
  overflow-wrap: anywhere;
}
.Accounting_listSub {
  font-size: 12px;
  font-weight: 600;
  color: #64748b;
}
.Accounting_listAmount {
  font-size: 13px;
  font-weight: 800;
  color: #111827;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.Accounting_emptyNote {
  font-size: 13px;
  font-weight: 600;
  color: #94a3b8;
  padding: 8px 0;
}
@media (max-width: 900px) {
  .Accounting_registerFilters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .Accounting_searchField {
    grid-column: 1 / -1;
  }
  .Accounting_registerMetric {
    border-left: 0;
    border-top: 1px solid var(--opebix-border);
    padding: 10px 0 0;
  }
  .Accounting_registerPager {
    grid-template-columns: 1fr auto;
  }
  .Accounting_registerPager nav {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }
  .Accounting_detailSummary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .Accounting_detailSummary > div,
  .Accounting_detailSummary > div:nth-child(5n),
  .Accounting_detailSummary > div:nth-last-child(-n+5) {
    border-right: 1px solid var(--opebix-border);
    border-bottom: 1px solid var(--opebix-border);
  }
  .Accounting_detailSummary > div:nth-child(2n) {
    border-right: 0;
  }
  .Accounting_detailSummary > div:nth-last-child(-n+2) {
    border-bottom: 0;
  }
  .Accounting_kpiStrip {
    grid-template-columns: repeat(2, 1fr);
  }
  .Accounting_kpi {
    border-top: 1px solid #eef2f7;
  }
  .Accounting_kpi:nth-child(-n+2) {
    border-top: none;
  }
  .Accounting_kpi:nth-child(2n+1) {
    border-left: none;
  }
  .Accounting_documentGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 600px) {
  .Accounting_documentEditor {
    min-height: calc(100vh - 88px);
    border-right: 0;
    border-left: 0;
    border-radius: 0;
  }
  .Accounting_editorHeader {
    min-height: auto;
    align-items: flex-start;
    padding: 16px 14px;
  }
  .Accounting_editorTitleRow {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }
  .Accounting_editorTitleRow h1 {
    font-size: 20px;
  }
  .Accounting_editorHeaderActions {
    align-items: flex-end;
    flex-direction: column-reverse;
  }
  .Accounting_autosaveState {
    min-height: 28px;
    padding: 0 8px;
    font-size: 10px;
  }
  .Accounting_editorMain,
  .Accounting_editorSidebar {
    padding: 14px;
  }
  .Accounting_editorMain {
    gap: 14px;
  }
  .Accounting_editorSidebar {
    grid-template-columns: 1fr;
  }
  .Accounting_editorDetailsGrid {
    grid-template-columns: 1fr;
    padding: 14px;
  }
  .Accounting_editorPartyField,
  .Accounting_editorContactField,
  .Accounting_editorReferenceField,
  .Accounting_editorDateField,
  .Accounting_editorTermsField,
  .Accounting_editorDueField,
  .Accounting_editorBillingField {
    grid-column: 1 / -1;
  }
  .Accounting_editorCardHead {
    align-items: flex-start;
    padding: 10px 14px;
  }
  .Accounting_amountMode {
    align-items: flex-end;
    flex-direction: column;
  }
  .Accounting_lineEditorActions {
    align-items: flex-start;
    flex-direction: column;
  }
  .Accounting_lineEditorActions > div {
    width: 100%;
    flex-wrap: wrap;
  }
  .Accounting_editorFooter {
    align-items: stretch;
    flex-direction: column;
    padding: 10px 14px;
  }
  .Accounting_editorFooter > div {
    width: 100%;
  }
  .Accounting_editorFooter > div button {
    flex: 1;
    padding-right: 8px;
    padding-left: 8px;
  }
  .Accounting_page {
    gap: 12px;
  }
  .Accounting_tabs {
    gap: 20px;
    padding: 0 14px;
    border-radius: 0;
  }
  .Accounting_registerHeader {
    align-items: flex-start;
    padding: 16px 14px;
    flex-direction: column;
  }
  .Accounting_registerHeader .Accounting_actions {
    width: 100%;
  }
  .Accounting_registerHeader .Accounting_actions button {
    flex: 1;
  }
  .Accounting_registerFilters {
    grid-template-columns: 1fr;
    padding: 12px 14px;
  }
  .Accounting_searchField {
    grid-column: auto;
  }
  .Accounting_registerStatusBar {
    align-items: flex-start;
    padding: 8px 14px;
    flex-direction: column;
  }
  .Accounting_statusTabs {
    width: 100%;
  }
  .Accounting_registerPager {
    grid-template-columns: 1fr;
    padding: 10px 14px;
  }
  .Accounting_registerPager nav {
    grid-column: auto;
    justify-content: flex-start;
    overflow-x: auto;
  }
  .Accounting_detailHeader {
    padding: 16px 14px;
    flex-direction: column;
  }
  .Accounting_detailHeader .Accounting_actions {
    width: 100%;
    justify-content: flex-start;
  }
  .Accounting_detailBody {
    padding: 14px;
  }
  .Accounting_detailSummary {
    grid-template-columns: 1fr;
  }
  .Accounting_detailSummary > div,
  .Accounting_detailSummary > div:nth-child(2n),
  .Accounting_detailSummary > div:nth-last-child(-n+2) {
    border-right: 0;
    border-bottom: 1px solid var(--opebix-border);
  }
  .Accounting_detailSummary > div:last-child {
    border-bottom: 0;
  }
  .Accounting_kpiStrip {
    grid-template-columns: 1fr;
  }
  .Accounting_kpi,
  .Accounting_kpi:nth-child(-n+2) {
    border-top: 1px solid #eef2f7;
    border-left: none;
  }
  .Accounting_kpi:first-child {
    border-top: 0;
  }
  .Accounting_card {
    padding: 14px;
  }
  .Accounting_flushCard {
    padding: 0;
  }
  .Accounting_sectionHead,
  .Accounting_toolbar,
  .Accounting_formBody,
  .Accounting_formFooter {
    padding-left: 14px;
    padding-right: 14px;
  }
  .Accounting_sectionHead {
    align-items: stretch;
  }
  .Accounting_sectionHead .Accounting_actions {
    justify-content: flex-start;
  }
  .Accounting_documentGrid {
    grid-template-columns: 1fr;
  }
  .Accounting_filterGrid,
  .Accounting_formGrid {
    grid-template-columns: 1fr;
  }
  .Accounting_settlementToggle {
    width: 100%;
  }
  .Accounting_bulkActionBar,
  .Accounting_bulkReviewFooter {
    align-items: stretch;
    flex-direction: column;
  }
  .Accounting_bulkActionBar > div:last-child,
  .Accounting_bulkDialogActions {
    justify-content: stretch;
  }
  .Accounting_bulkActionBar button,
  .Accounting_bulkDialogActions button {
    flex: 1 1 100%;
  }
  .Accounting_bulkSharedFields {
    grid-template-columns: 1fr;
    padding: 14px;
  }
  .Accounting_bulkReviewFooter > div {
    text-align: left;
  }
  .Accounting_bulkDialogBackdrop {
    align-items: end;
    padding: 0;
  }
  .Accounting_bulkDialog {
    width: 100%;
    max-height: calc(100vh - 24px);
    border-radius: 14px 14px 0 0;
  }
  .Accounting_drawer {
    width: 100vw;
  }
}
.Accounting_kpiStrip,
.Accounting_rangePanel,
.Accounting_card,
.Accounting_statementCard {
  border-color: var(--opebix-border);
  border-radius: var(--opebix-radius-panel);
  box-shadow: var(--opebix-shadow-xs);
}
.Accounting_tab {
  color: var(--opebix-text-soft);
}
.Accounting_tab:hover {
  background: transparent;
  color: var(--opebix-text);
}
.Accounting_tabActive,
.Accounting_tabActive:hover {
  background: transparent;
  color: var(--opebix-text);
}
.Accounting_kpi {
  border-color: var(--opebix-border);
}
.Accounting_kpiLabel {
  color: var(--opebix-text-muted);
  font-size: 10px;
  letter-spacing: .075em;
}
.Accounting_kpiValue {
  color: var(--opebix-text);
}
.Accounting_primaryBtn {
  border-color: var(--opebix-navy);
  background: var(--opebix-navy);
}
.Accounting_primaryBtn:hover {
  background: var(--opebix-navy-soft);
}
.Accounting_secondaryBtn {
  border-color: var(--opebix-border-strong);
  color: var(--opebix-text-soft);
}
.Accounting_dangerBtn {
  border-color: var(--opebix-danger-border);
  background: var(--opebix-danger-bg);
  color: var(--opebix-danger);
}
.Accounting_segmented {
  border-color: var(--opebix-border);
  background: var(--opebix-surface-soft);
}
.Accounting_segmentedBtn {
  color: var(--opebix-text-soft);
}
.Accounting_segmentedBtnActive,
.Accounting_segmentedBtnActive:hover {
  background: var(--opebix-navy);
  color: #fff;
}
.Accounting_table th {
  color: var(--opebix-text-muted);
  font-size: 10px;
  letter-spacing: .075em;
}
.Accounting_table td {
  border-color: var(--opebix-divider);
  color: var(--opebix-text-soft);
}
.Accounting_drawer {
  border-color: var(--opebix-border);
  border-radius: var(--opebix-radius-panel);
  box-shadow: 0 28px 80px rgba(15, 23, 42, .24);
}
.Accounting_inlineError {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid #fecaca;
  border-radius: 9px;
  background: #fef2f2;
  color: #991b1b;
  font-size: 12px;
  line-height: 1.45;
}
.Accounting_inlineError strong {
  flex: 0 0 auto;
}

/* src/styles/Sales.module.css */
.Sales_workspace {
  display: grid;
  gap: 18px;
}
.Sales_toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.Sales_tabs {
  display: flex;
  gap: 6px;
  overflow: auto;
  padding: 4px;
  background: #eef2f7;
  border-radius: 12px;
}
.Sales_tab {
  border: 0;
  background: transparent;
  color: #526176;
  padding: 9px 12px;
  border-radius: 9px;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
  cursor: pointer;
}
.Sales_tabActive {
  background: #fff;
  color: #0f172a;
  box-shadow: 0 1px 3px rgba(15, 23, 42, .12);
}
.Sales_primary,
.Sales_secondary,
.Sales_danger {
  border: 0;
  border-radius: 10px;
  padding: 10px 14px;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}
.Sales_primary {
  background: #0f766e;
  color: white;
}
.Sales_secondary {
  background: white;
  color: #334155;
  border: 1px solid #dbe3ef;
}
.Sales_danger {
  background: #fff1f2;
  color: #be123c;
  border: 1px solid #fecdd3;
}
.Sales_grid4 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.Sales_metric {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 17px;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}
.Sales_metricLabel {
  font-size: 11px;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: #64748b;
  font-weight: 800;
}
.Sales_metricValue {
  font-size: 25px;
  color: #0f172a;
  font-weight: 900;
  margin-top: 9px;
}
.Sales_metricNote {
  font-size: 12px;
  color: #64748b;
  margin-top: 5px;
}
.Sales_panel {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 18px;
}
.Sales_panelTitle {
  font-size: 16px;
  font-weight: 900;
  color: #0f172a;
}
.Sales_panelSub {
  font-size: 12px;
  color: #64748b;
  margin-top: 4px;
}
.Sales_split {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
  gap: 14px;
}
.Sales_pipeline {
  display: flex;
  gap: 12px;
  overflow: auto;
  padding-bottom: 10px;
  align-items: flex-start;
}
.Sales_column {
  min-width: 260px;
  width: 260px;
  background: #f1f5f9;
  border-radius: 14px;
  padding: 10px;
}
.Sales_columnHead {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
  padding: 4px 4px 10px;
  font-size: 12px;
  font-weight: 900;
  color: #334155;
}
.Sales_dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  display: inline-block;
  margin-right: 7px;
}
.Sales_dealCard {
  display: grid;
  gap: 8px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 11px;
  padding: 12px;
  margin-bottom: 9px;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}
.Sales_dealTitle {
  font-size: 13px;
  font-weight: 900;
  color: #0f172a;
}
.Sales_muted {
  font-size: 11px;
  color: #64748b;
}
.Sales_dealValue {
  font-size: 14px;
  font-weight: 900;
  color: #0f766e;
}
.Sales_stageSelect {
  width: 100%;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  padding: 7px;
  background: #fff;
  color: #334155;
  font-size: 11px;
}
.Sales_tableWrap {
  overflow: auto;
}
.Sales_table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
}
.Sales_table th {
  text-align: left;
  color: #64748b;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 10px;
  border-bottom: 1px solid #e2e8f0;
}
.Sales_table td {
  padding: 11px 10px;
  border-bottom: 1px solid #edf2f7;
  color: #334155;
}
.Sales_table tr:last-child td {
  border-bottom: 0;
}
.Sales_linkButton {
  border: 0;
  background: transparent;
  padding: 0;
  color: #0f766e;
  font-weight: 800;
  cursor: pointer;
  text-align: left;
}
.Sales_chip {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 5px 8px;
  background: #f1f5f9;
  color: #475569;
  font-size: 10px;
  font-weight: 900;
  text-transform: capitalize;
}
.Sales_success {
  background: #dcfce7;
  color: #166534;
}
.Sales_warning {
  background: #fef3c7;
  color: #92400e;
}
.Sales_form {
  display: grid;
  gap: 13px;
}
.Sales_formGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.Sales_field {
  display: grid;
  gap: 5px;
}
.Sales_field label {
  font-size: 11px;
  font-weight: 800;
  color: #475569;
}
.Sales_field input,
.Sales_field select,
.Sales_field textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #dbe3ef;
  border-radius: 9px;
  padding: 9px 10px;
  font: inherit;
  font-size: 12px;
  color: #0f172a;
  background: #fff;
}
.Sales_field textarea {
  min-height: 78px;
  resize: vertical;
}
.Sales_full {
  grid-column: 1/-1;
}
.Sales_actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  flex-wrap: wrap;
}
.Sales_overlay {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, .48);
  z-index: 1000;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 5vh 16px;
  overflow: auto;
}
.Sales_modal {
  width: min(760px, 100%);
  background: #fff;
  border-radius: 16px;
  padding: 20px;
  box-shadow: 0 24px 80px rgba(15, 23, 42, .25);
}
.Sales_modalHead {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}
.Sales_close {
  border: 0;
  background: #f1f5f9;
  border-radius: 9px;
  width: 34px;
  height: 34px;
  cursor: pointer;
  font-size: 20px;
}
.Sales_lineGrid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 76px 86px 100px 34px;
  gap: 7px;
  align-items: center;
}
.Sales_quoteTotal {
  display: grid;
  justify-content: end;
  grid-template-columns: 120px 120px;
  gap: 6px;
  font-size: 12px;
}
.Sales_quoteTotal strong {
  text-align: right;
}
.Sales_kpiTable input {
  width: 100px;
  border: 1px solid #dbe3ef;
  border-radius: 7px;
  padding: 6px;
  text-align: right;
}
.Sales_progress {
  height: 7px;
  border-radius: 999px;
  background: #e2e8f0;
  overflow: hidden;
}
.Sales_progress > span {
  display: block;
  height: 100%;
  background: #0f766e;
}
.Sales_empty {
  text-align: center;
  color: #64748b;
  font-size: 12px;
  padding: 28px;
}
.Sales_notice {
  padding: 10px 12px;
  border-radius: 10px;
  background: #ecfeff;
  color: #155e75;
  font-size: 12px;
}
.Sales_error {
  background: #fff1f2;
  color: #be123c;
}
.Sales_chart {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  height: 180px;
  padding-top: 20px;
}
.Sales_barGroup {
  display: flex;
  align-items: flex-end;
  gap: 3px;
  flex: 1;
  height: 100%;
  position: relative;
}
.Sales_barTarget,
.Sales_barActual {
  flex: 1;
  min-width: 5px;
  border-radius: 4px 4px 0 0;
}
.Sales_barTarget {
  background: #cbd5e1;
}
.Sales_barActual {
  background: #0f766e;
}
.Sales_barLabel {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  text-align: center;
  font-size: 9px;
  color: #64748b;
}
.Sales_check {
  width: 18px;
  height: 18px;
  cursor: pointer;
}
.Sales_settingsRow {
  display: grid;
  grid-template-columns: 1fr 90px 90px 70px 70px;
  gap: 8px;
  align-items: center;
  padding: 9px 0;
  border-bottom: 1px solid #edf2f7;
}
.Sales_settingsRow input {
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  padding: 8px;
  min-width: 0;
}
.Sales_twoCol {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.Sales_board {
  display: grid;
  gap: 16px;
}
.Sales_boardGroup {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  overflow: hidden;
}
.Sales_boardGroupHead {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  padding: 12px 14px;
  border-left: 6px solid #22c55e;
  background: #f8fafc;
}
.Sales_boardGroupHead div {
  display: flex;
  align-items: baseline;
  gap: 8px;
}
.Sales_boardGroupHead span {
  font-size: 11px;
  color: #64748b;
}
.Sales_boardScroll {
  overflow: auto;
}
.Sales_boardTable {
  min-width: 1680px;
}
.Sales_boardTable th {
  white-space: nowrap;
}
.Sales_boardTable td {
  vertical-align: top;
  max-width: 260px;
}
.Sales_dealName {
  min-width: 260px;
}
.Sales_dealName small {
  display: block;
  color: #64748b;
  font-size: 10px;
  margin-top: 3px;
}
.Sales_inlineInput,
.Sales_inlineDate,
.Sales_inlineSelect {
  width: 100%;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  padding: 7px 8px;
  font-size: 12px;
}
.Sales_inlineInput {
  max-width: 110px;
}
.Sales_inlineDate {
  min-width: 132px;
}
.Sales_notesCell {
  font-size: 11px;
  color: #475569;
  line-height: 1.35;
  min-width: 260px;
  white-space: normal;
}
.Sales_drawer {
  margin-left: auto;
  width: min(760px, 96vw);
  height: 100vh;
  background: #fff;
  box-shadow: -24px 0 50px rgba(15, 23, 42, .22);
  padding: 22px;
  overflow: auto;
}
.Sales_detailGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.Sales_detailGrid > div {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 12px;
  display: grid;
  gap: 5px;
}
.Sales_detailGrid label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: #64748b;
  font-weight: 800;
}
.Sales_notesBlock {
  white-space: pre-wrap;
  font-size: 12px;
  color: #334155;
  line-height: 1.45;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 12px;
}
.Sales_miniRow {
  display: grid;
  gap: 3px;
  border-bottom: 1px solid #edf2f7;
  padding: 9px 0;
  font-size: 12px;
}
.Sales_miniRow span {
  color: #64748b;
}
.Sales_importSummary {
  white-space: pre-wrap;
  background: #0f172a;
  color: #d1fae5;
  border-radius: 12px;
  padding: 14px;
  font-size: 11px;
  max-height: 360px;
  overflow: auto;
}
.Sales_formGrid select[multiple] {
  min-height: 92px;
}
@media (max-width: 1000px) {
  .Sales_grid4 {
    grid-template-columns: repeat(2, 1fr);
  }
  .Sales_split,
  .Sales_twoCol {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 900px) {
  .Sales_detailGrid {
    grid-template-columns: 1fr;
  }
  .Sales_drawer {
    width: 100vw;
  }
}
@media (max-width: 640px) {
  .Sales_grid4,
  .Sales_formGrid {
    grid-template-columns: 1fr;
  }
  .Sales_lineGrid {
    grid-template-columns: 1fr 60px 80px;
  }
  .Sales_lineGrid > *:nth-child(4) {
    display: none;
  }
  .Sales_modal {
    padding: 15px;
  }
  .Sales_settingsRow {
    grid-template-columns: 1fr 70px 55px;
  }
  .Sales_settingsRow > *:nth-child(4),
  .Sales_settingsRow > *:nth-child(5) {
    display: none;
  }
}

/* src/styles/SalesEnhancements.module.css */
.SalesEnhancements_search {
  width: min(420px, 100%);
  box-sizing: border-box;
  border: 1px solid #dbe3ef;
  border-radius: 10px;
  padding: 10px 12px;
  background: #fff;
  color: #111827;
}
.SalesEnhancements_dashboardHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.SalesEnhancements_eyebrow {
  font-size: 11px;
  letter-spacing: .08em;
  font-weight: 800;
  color: #475569;
}
.SalesEnhancements_fySelect {
  border: 1px solid #dbe3ef;
  border-radius: 9px;
  background: #fff;
  padding: 8px 10px;
  color: #334155;
  font-weight: 700;
}
.SalesEnhancements_segmented {
  display: flex;
  padding: 3px;
  background: #eef2f7;
  border-radius: 10px;
}
.SalesEnhancements_segmented button {
  border: 0;
  background: transparent;
  padding: 7px 11px;
  border-radius: 8px;
  color: #526176;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}
.SalesEnhancements_segmented .SalesEnhancements_segmentActive {
  background: #fff;
  color: #111827;
  box-shadow: 0 1px 3px rgba(15, 23, 42, .12);
}
.SalesEnhancements_menuWrap {
  position: relative;
}
.SalesEnhancements_menu {
  position: absolute;
  right: 0;
  top: calc(100% + 6px);
  min-width: 210px;
  padding: 6px;
  background: #fff;
  border: 1px solid #dbe3ef;
  border-radius: 10px;
  box-shadow: 0 14px 32px rgba(15, 23, 42, .14);
  z-index: 20;
}
.SalesEnhancements_menu button {
  display: block;
  width: 100%;
  text-align: left;
  border: 0;
  background: transparent;
  border-radius: 7px;
  padding: 9px 10px;
  color: #334155;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}
.SalesEnhancements_menu button:hover {
  background: #f1f5f9;
}
.SalesEnhancements_filters {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 14px;
  padding: 10px;
  border: 1px solid #e5e7eb;
  border-radius: 11px;
  background: #f8fafc;
}
.SalesEnhancements_filters select,
.SalesEnhancements_filters input {
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  padding: 8px 9px;
  color: #334155;
  font-size: 12px;
}
.SalesEnhancements_filterClear {
  border: 0;
  background: transparent;
  color: #2563eb;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}
@media (max-width: 700px) {
  .SalesEnhancements_filters > * {
    flex: 1 1 150px;
  }
}
.SalesEnhancements_fileGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 12px;
}
.SalesEnhancements_fileCard {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #f8fafc;
  color: #334155;
  text-decoration: none;
}
.SalesEnhancements_fileCard:hover {
  border-color: #93c5fd;
  background: #eff6ff;
}
.SalesEnhancements_fileCard span:last-child {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.SalesEnhancements_fileCard b {
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesEnhancements_fileCard small {
  font-size: 10px;
  color: #64748b;
}
.SalesEnhancements_fileIcon {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: #dbeafe;
  color: #2563eb;
  font-size: 17px;
}
@media (max-width: 640px) {
  .SalesEnhancements_fileGrid {
    grid-template-columns: 1fr;
  }
}
.SalesEnhancements_pipeline {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(230px, 100%), 1fr));
  gap: 12px;
  align-items: start;
  width: 100%;
  min-width: 0;
}
.SalesEnhancements_column {
  min-width: 0;
  width: auto;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 10px;
  overflow: hidden;
}
.SalesEnhancements_column select {
  max-width: 100%;
}
@media (min-width: 1500px) {
  .SalesEnhancements_pipeline {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .SalesEnhancements_pipeline {
    grid-template-columns: 1fr;
  }
}
.SalesEnhancements_compactTable {
  table-layout: fixed;
  min-width: 1460px;
  font-size: 12px;
}
.SalesEnhancements_compactTable th {
  height: 34px;
  padding: 6px 8px;
  white-space: nowrap;
}
.SalesEnhancements_compactTable td {
  height: 44px;
  max-height: 44px;
  padding: 6px 8px;
  vertical-align: middle;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  box-sizing: border-box;
}
.SalesEnhancements_compactTable td:first-child {
  width: 230px;
}
.SalesEnhancements_compactTable th:nth-child(3),
.SalesEnhancements_compactTable td:nth-child(3) {
  width: 150px;
}
.SalesEnhancements_compactTable th:nth-child(5),
.SalesEnhancements_compactTable td:nth-child(5) {
  width: 120px;
}
.SalesEnhancements_compactTable th:nth-child(7),
.SalesEnhancements_compactTable td:nth-child(7) {
  width: 145px;
}
.SalesEnhancements_compactTable input,
.SalesEnhancements_compactTable select {
  height: 30px;
  min-height: 30px;
  padding: 4px 7px;
  font-size: 12px;
  box-sizing: border-box;
}
.SalesEnhancements_compactTable button {
  display: block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesEnhancements_nextActionCell {
  max-width: 220px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesEnhancements_pipelineCard {
  padding: 10px;
  margin-bottom: 8px;
  gap: 6px;
}
.SalesEnhancements_pipelineCard select,
.SalesEnhancements_pipelineCard button {
  min-height: 30px;
}
.SalesEnhancements_pipelineAction {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  line-height: 1.35;
}
.SalesEnhancements_kpiError {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid #fca5a5;
  border-radius: 10px;
  background: #fef2f2;
  color: #991b1b;
  font-size: 12px;
  font-weight: 700;
}
.SalesEnhancements_kpiError button {
  flex: none;
}
@media (max-width: 700px) {
  .SalesEnhancements_kpiError {
    align-items: flex-start;
  }
}
.SalesEnhancements_dealsWorkspace {
  display: grid;
  gap: 12px;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.SalesEnhancements_dealsToolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex-wrap: wrap;
}
.SalesEnhancements_dealsToolbar > select,
.SalesEnhancements_dealsSearch {
  height: 32px;
  box-sizing: border-box;
  border: 1px solid #d6dce5;
  border-radius: 6px;
  background: #fff;
  color: #334155;
  padding: 0 9px;
  font-size: 12px;
}
.SalesEnhancements_dealsSearch {
  width: min(300px, 100%);
}
.SalesEnhancements_dealsToolbar .SalesEnhancements_primary,
.SalesEnhancements_dealsToolbar .SalesEnhancements_secondary {
  height: 32px;
  padding: 0 10px;
  border-radius: 6px;
  font-weight: 700;
}
.SalesEnhancements_toolbarSpacer {
  flex: 1 1 12px;
}
.SalesEnhancements_summaryStrip {
  display: flex;
  align-items: stretch;
  min-width: 0;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #fff;
  overflow: auto;
}
.SalesEnhancements_summaryStrip > span {
  display: flex;
  align-items: baseline;
  gap: 8px;
  padding: 8px 14px;
  border-right: 1px solid #e8edf3;
  white-space: nowrap;
}
.SalesEnhancements_summaryStrip > span:last-child {
  border-right: 0;
}
.SalesEnhancements_summaryStrip small {
  font-size: 10px;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: .045em;
  font-weight: 700;
}
.SalesEnhancements_summaryStrip b {
  font-size: 13px;
  color: #172033;
  font-variant-numeric: tabular-nums;
}
.SalesEnhancements_summaryWarning b {
  color: #b42318;
}
.SalesEnhancements_dealsContent {
  min-width: 0;
  max-width: 100%;
}
.SalesEnhancements_board {
  display: grid;
  gap: 8px;
  min-width: 0;
}
.SalesEnhancements_boardGroup {
  min-width: 0;
  background: #fff;
  border: 0;
  border-radius: 0;
  overflow: visible;
}
.SalesEnhancements_boardGroupHead {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  min-height: 36px;
  padding: 6px 10px 6px 7px;
  border: 0;
  border-left: 4px solid var(--group-color);
  border-bottom: 1px solid #e2e8f0;
  background: #f8fafc;
  color: #334155;
  text-align: left;
  cursor: pointer;
}
.SalesEnhancements_boardGroupHead:hover {
  background: #f3f6fa;
}
.SalesEnhancements_boardGroupHead:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 1px;
}
.SalesEnhancements_groupIdentity {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
}
.SalesEnhancements_groupIdentity strong {
  font-size: 13px;
  color: var(--group-color);
}
.SalesEnhancements_groupIdentity > span:last-child {
  font-size: 11px;
  color: #64748b;
}
.SalesEnhancements_groupChevron {
  width: 16px;
  font-size: 18px;
  line-height: 1;
  color: #64748b;
}
.SalesEnhancements_boardGroupHead > b {
  font-size: 12px;
  font-variant-numeric: tabular-nums;
}
.SalesEnhancements_boardGroupHead > b small {
  font-size: 9px;
  color: #64748b;
  font-weight: 600;
}
.SalesEnhancements_boardScroll {
  max-width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  border-bottom: 1px solid #e2e8f0;
}
.SalesEnhancements_compactTable {
  width: 100%;
  min-width: 1180px;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 12px;
}
.SalesEnhancements_compactTable th {
  height: 30px;
  padding: 5px 8px;
  background: #f8fafc;
  border-right: 1px solid #e8edf3;
  border-bottom: 1px solid #dce3ec;
  color: #667085;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  text-transform: none;
  letter-spacing: .01em;
  white-space: nowrap;
}
.SalesEnhancements_compactTable td {
  height: 40px;
  max-height: 40px;
  padding: 4px 7px;
  border-right: 1px solid #edf1f5;
  border-bottom: 1px solid #edf1f5;
  background: #fff;
  color: #344054;
  vertical-align: middle;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  box-sizing: border-box;
}
.SalesEnhancements_compactTable tbody tr:last-child td {
  border-bottom: 0;
}
.SalesEnhancements_compactTable tbody tr:hover td {
  background: #f8fbff;
}
.SalesEnhancements_compactTable th[data-column=deal],
.SalesEnhancements_compactTable td[data-column=deal] {
  width: 230px;
}
.SalesEnhancements_compactTable th[data-column=quote],
.SalesEnhancements_compactTable td[data-column=quote] {
  width: 118px;
}
.SalesEnhancements_compactTable th[data-column=stage],
.SalesEnhancements_compactTable td[data-column=stage] {
  width: 142px;
}
.SalesEnhancements_compactTable th[data-column=owner],
.SalesEnhancements_compactTable td[data-column=owner] {
  width: 120px;
}
.SalesEnhancements_compactTable th[data-column=value],
.SalesEnhancements_compactTable td[data-column=value] {
  width: 112px;
}
.SalesEnhancements_compactTable th[data-column=nextAction],
.SalesEnhancements_compactTable td[data-column=nextAction] {
  width: 220px;
}
.SalesEnhancements_compactTable th[data-column=nextActionDate],
.SalesEnhancements_compactTable td[data-column=nextActionDate] {
  width: 132px;
}
.SalesEnhancements_compactTable th[data-column=contacts],
.SalesEnhancements_compactTable td[data-column=contacts] {
  width: 150px;
}
.SalesEnhancements_compactTable th[data-column=account],
.SalesEnhancements_compactTable td[data-column=account] {
  width: 150px;
}
.SalesEnhancements_compactTable td[data-column=contacts] {
  overflow: visible;
}
.SalesEnhancements_stickyDeal,
.SalesEnhancements_compactTable th[data-column=deal] {
  position: sticky;
  left: 0;
  z-index: 3;
}
.SalesEnhancements_stickyQuote,
.SalesEnhancements_compactTable th[data-column=quote] {
  position: sticky;
  left: 230px;
  z-index: 2;
  box-shadow: 1px 0 0 #dce3ec;
}
.SalesEnhancements_compactTable th[data-column=deal],
.SalesEnhancements_compactTable th[data-column=quote] {
  z-index: 5;
}
.SalesEnhancements_selectedRow td,
.SalesEnhancements_compactTable tbody .SalesEnhancements_selectedRow:hover td {
  background: #eff6ff;
}
.SalesEnhancements_moneyCell {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.SalesEnhancements_moneyCell .SalesEnhancements_inlineCellButton {
  text-align: right;
}
.SalesEnhancements_dealCell {
  display: flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
}
.SalesEnhancements_dealCell > .SalesEnhancements_inlineCellButton {
  font-size: 13px;
  font-weight: 600;
  color: #172033;
}
.SalesEnhancements_openDeal {
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: #667085;
  cursor: pointer;
}
.SalesEnhancements_openDeal:hover {
  background: #e8eef7;
  color: #2563eb;
}
.SalesEnhancements_inlineCellButton {
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 28px;
  margin: 0;
  padding: 5px 6px;
  border: 1px solid transparent;
  border-radius: 5px;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: text;
}
.SalesEnhancements_inlineCellButton:hover {
  border-color: #d7deea;
  background: #fff;
}
.SalesEnhancements_inlineCellButton:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: -1px;
}
.SalesEnhancements_inlineCellButton small {
  display: block;
  color: #b42318;
  font-size: 9px;
}
.SalesEnhancements_inlineCellEditor {
  display: block;
  position: relative;
  min-width: 0;
}
.SalesEnhancements_inlineCellEditor input,
.SalesEnhancements_inlineCellEditor select {
  display: block;
  width: 100%;
  height: 30px;
  min-height: 30px;
  box-sizing: border-box;
  border: 1px solid #2563eb;
  border-radius: 5px;
  background: #fff;
  padding: 4px 6px;
  color: #172033;
  font-size: 12px;
  outline: 0;
}
.SalesEnhancements_inlineCellEditor small {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 8;
  padding: 3px 5px;
  border-radius: 4px;
  background: #fff1f2;
  color: #b42318;
  font-size: 9px;
  box-shadow: 0 2px 8px rgba(15, 23, 42, .12);
}
.SalesEnhancements_stageCell.SalesEnhancements_inlineCellButton {
  color: #fff;
  text-align: center;
  font-weight: 700;
  text-shadow: 0 1px 1px rgba(0, 0, 0, .18);
  cursor: pointer;
}
.SalesEnhancements_stageCell.SalesEnhancements_inlineCellButton:hover {
  filter: brightness(.97);
  border-color: rgba(0, 0, 0, .12);
}
.SalesEnhancements_stageCell.SalesEnhancements_inlineCellEditor select {
  font-weight: 700;
}
.SalesEnhancements_overdueCell .SalesEnhancements_inlineCellButton {
  color: #b42318;
  font-weight: 700;
}
.SalesEnhancements_contactCell {
  position: relative;
  display: block;
  min-width: 0;
}
.SalesEnhancements_contactPopover {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  z-index: 30;
  width: 250px;
  max-height: 310px;
  padding: 10px;
  border: 1px solid #d7deea;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .18);
  white-space: normal;
}
.SalesEnhancements_contactPopover > strong {
  display: block;
  margin-bottom: 8px;
  font-size: 12px;
}
.SalesEnhancements_contactOptions {
  display: grid;
  gap: 2px;
  max-height: 220px;
  overflow: auto;
}
.SalesEnhancements_contactOptions label {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 5px;
  border-radius: 5px;
  font-size: 11px;
}
.SalesEnhancements_contactOptions label:hover {
  background: #f3f6fa;
}
.SalesEnhancements_contactOptions input {
  width: 14px;
  height: 14px;
}
.SalesEnhancements_contactActions {
  display: flex;
  justify-content: flex-end;
  gap: 6px;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid #edf1f5;
}
.SalesEnhancements_contactActions button {
  height: 28px;
  padding: 0 9px;
  border: 1px solid #d7deea;
  border-radius: 5px;
  background: #fff;
  color: #344054;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}
.SalesEnhancements_contactActions button:last-child {
  border-color: #2563eb;
  background: #2563eb;
  color: #fff;
}
.SalesEnhancements_columnMenu {
  padding: 8px;
}
.SalesEnhancements_columnMenu label {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px;
  border-radius: 5px;
  color: #344054;
  font-size: 11px;
}
.SalesEnhancements_columnMenu label:hover {
  background: #f3f6fa;
}
.SalesEnhancements_columnMenu input {
  width: 14px;
  height: 14px;
}
.SalesEnhancements_pipeline {
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
  gap: 10px;
  max-width: 100%;
  overflow: visible;
}
.SalesEnhancements_column {
  padding: 8px;
  border-radius: 8px;
  background: #f3f5f8;
}
.SalesEnhancements_pipelineCard {
  gap: 5px;
  padding: 9px;
  margin-bottom: 7px;
  border-radius: 7px;
  box-shadow: none;
}
.SalesEnhancements_pipelineTitle {
  border: 0;
  background: transparent;
  padding: 0;
  color: #172033;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.3;
  text-align: left;
  cursor: pointer;
}
.SalesEnhancements_pipelineEmpty {
  padding: 14px 5px;
  color: #98a2b3;
  font-size: 11px;
  text-align: center;
}
.SalesEnhancements_mobileDeals {
  display: none;
}
@media (max-width: 1100px) {
  .SalesEnhancements_dealsSearch {
    width: 220px;
  }
  .SalesEnhancements_compactTable {
    min-width: 760px;
  }
  .SalesEnhancements_toolbarSpacer {
    display: none;
  }
}
@media (max-width: 700px) {
  .SalesEnhancements_dealsToolbar {
    align-items: stretch;
  }
  .SalesEnhancements_dealsToolbar > * {
    flex: 1 1 135px;
  }
  .SalesEnhancements_dealsToolbar .SalesEnhancements_dealsSearch {
    width: 100%;
    flex-basis: 100%;
  }
  .SalesEnhancements_dealsToolbar .SalesEnhancements_menuWrap {
    position: relative;
  }
  .SalesEnhancements_summaryStrip > span {
    padding: 7px 10px;
  }
  .SalesEnhancements_boardScroll {
    display: none;
  }
  .SalesEnhancements_mobileDeals {
    display: grid;
  }
  .SalesEnhancements_mobileDeal {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 5px 10px;
    width: 100%;
    padding: 10px;
    border: 0;
    border-bottom: 1px solid #edf1f5;
    background: #fff;
    color: #344054;
    text-align: left;
  }
  .SalesEnhancements_mobileDeal:hover {
    background: #f8fbff;
  }
  .SalesEnhancements_mobileDeal > span {
    display: grid;
    gap: 3px;
    min-width: 0;
  }
  .SalesEnhancements_mobileDeal > span:nth-child(2) {
    justify-items: end;
  }
  .SalesEnhancements_mobileDeal strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 12px;
  }
  .SalesEnhancements_mobileDeal small {
    font-size: 10px;
    color: #667085;
  }
  .SalesEnhancements_mobileDeal i {
    padding: 3px 6px;
    border-radius: 4px;
    color: #fff;
    font-size: 9px;
    font-style: normal;
    font-weight: 700;
  }
  .SalesEnhancements_mobileDeal > small {
    grid-column: 1/-1;
  }
  .SalesEnhancements_pipeline {
    grid-template-columns: 1fr;
  }
  .SalesEnhancements_kpiError {
    align-items: flex-start;
  }
}
.SalesEnhancements_contactError {
  display: block;
  margin-top: 6px;
  color: #b42318;
  font-size: 10px;
}
.SalesEnhancements_missingReason {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 0 7px;
  border: 1px solid #fedf89;
  border-radius: 999px;
  background: #fffaeb;
  color: #b54708;
  font-size: 9px;
  font-weight: 750;
}
.SalesEnhancements_mobileOverdue {
  color: #b42318 !important;
  font-weight: 700;
}
.SalesEnhancements_boardLoadMore {
  display: flex;
  justify-content: center;
  padding: 9px;
  border-bottom: 1px solid #e2e8f0;
  background: #f8fafc;
}
.SalesEnhancements_boardLoadMore button {
  min-height: 30px;
  height: 30px;
  font-size: 11px;
}
.SalesEnhancements_controlIcon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
}
.SalesEnhancements_controlIcon svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.SalesEnhancements_primary,
.SalesEnhancements_secondary,
.SalesEnhancements_tertiary,
.SalesEnhancements_danger {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 36px;
  padding: 0 13px;
  border-radius: 8px;
  border: 1px solid transparent;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  line-height: 1;
  cursor: pointer;
  transition:
    background .15s ease,
    border-color .15s ease,
    color .15s ease,
    box-shadow .15s ease,
    transform .15s ease;
}
.SalesEnhancements_primary {
  background: #2563eb;
  color: #fff;
  border-color: #2563eb;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .08);
}
.SalesEnhancements_primary:hover:not(:disabled) {
  background: #1d4ed8;
  border-color: #1d4ed8;
  box-shadow: 0 3px 8px rgba(37, 99, 235, .18);
}
.SalesEnhancements_secondary {
  background: #fff;
  color: #344054;
  border-color: #d0d5dd;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}
.SalesEnhancements_secondary:hover:not(:disabled) {
  background: #f8fafc;
  border-color: #98a2b3;
  color: #172033;
}
.SalesEnhancements_tertiary {
  min-height: 32px;
  padding: 0 8px;
  background: transparent;
  color: #2563eb;
}
.SalesEnhancements_tertiary:hover:not(:disabled) {
  background: #eff6ff;
}
.SalesEnhancements_danger {
  background: #fff;
  color: #b42318;
  border-color: #fda29b;
}
.SalesEnhancements_primary:active:not(:disabled),
.SalesEnhancements_secondary:active:not(:disabled),
.SalesEnhancements_tertiary:active:not(:disabled) {
  transform: translateY(1px);
}
.SalesEnhancements_primary:focus-visible,
.SalesEnhancements_secondary:focus-visible,
.SalesEnhancements_tertiary:focus-visible,
.SalesEnhancements_danger:focus-visible,
.SalesEnhancements_sortHeader:focus-visible,
.SalesEnhancements_columnMoveButtons button:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
}
.SalesEnhancements_primary:disabled,
.SalesEnhancements_secondary:disabled,
.SalesEnhancements_tertiary:disabled,
.SalesEnhancements_danger:disabled {
  cursor: not-allowed;
  opacity: .52;
  box-shadow: none;
}
.SalesEnhancements_dealsToolbar .SalesEnhancements_primary,
.SalesEnhancements_dealsToolbar .SalesEnhancements_secondary {
  display: inline-flex;
  height: 32px;
  min-height: 32px;
  padding: 0 10px;
  border-radius: 7px;
}
.SalesEnhancements_dealsToolbar > select,
.SalesEnhancements_dealsSearch,
.SalesEnhancements_search,
.SalesEnhancements_fySelect,
.SalesEnhancements_field input,
.SalesEnhancements_field select,
.SalesEnhancements_field textarea,
.SalesEnhancements_kpiTable input {
  appearance: none;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  color: #172033;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .03);
  transition: border-color .15s ease, box-shadow .15s ease;
}
.SalesEnhancements_dealsToolbar > select {
  padding-right: 28px;
  background-image:
    linear-gradient(
      45deg,
      transparent 50%,
      #667085 50%),
    linear-gradient(
      135deg,
      #667085 50%,
      transparent 50%);
  background-position: calc(100% - 13px) 13px, calc(100% - 9px) 13px;
  background-size: 4px 4px, 4px 4px;
  background-repeat: no-repeat;
}
.SalesEnhancements_dealsToolbar > select:focus,
.SalesEnhancements_dealsSearch:focus,
.SalesEnhancements_search:focus,
.SalesEnhancements_fySelect:focus,
.SalesEnhancements_field input:focus,
.SalesEnhancements_field select:focus,
.SalesEnhancements_field textarea:focus,
.SalesEnhancements_kpiTable input:focus {
  outline: 0;
  border-color: #528bff;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .12);
}
.SalesEnhancements_segmented {
  gap: 2px;
  padding: 3px;
  border: 1px solid #e4e7ec;
  border-radius: 9px;
  background: #f2f4f7;
}
.SalesEnhancements_segmented button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 26px;
  padding: 0 9px;
  border-radius: 6px;
  font-size: 11px;
}
.SalesEnhancements_segmented .SalesEnhancements_segmentActive {
  background: #fff;
  color: #175cd3;
  box-shadow: 0 1px 3px rgba(15, 23, 42, .1);
}
.SalesEnhancements_menu {
  min-width: 230px;
  padding: 7px;
  border-color: #e4e7ec;
  border-radius: 10px;
  box-shadow: 0 14px 35px rgba(15, 23, 42, .16);
}
.SalesEnhancements_menu button {
  display: flex;
  align-items: center;
  gap: 8px;
  border-radius: 7px;
  font-weight: 650;
}
.SalesEnhancements_sortHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}
.SalesEnhancements_sortHeader .SalesEnhancements_controlIcon {
  width: 13px;
  height: 13px;
  color: #98a2b3;
}
.SalesEnhancements_sortHeader:hover {
  color: #175cd3;
}
.SalesEnhancements_sortHeaderActive {
  color: #175cd3;
}
.SalesEnhancements_sortHeaderActive .SalesEnhancements_controlIcon {
  color: #2563eb;
}
.SalesEnhancements_compactTable th:has(.SalesEnhancements_sortHeader),
.SalesEnhancements_modernTable th:has(.SalesEnhancements_sortHeader) {
  padding: 0 8px;
}
.SalesEnhancements_modernTable th {
  height: 36px;
  background: #f8fafc;
  color: #667085;
  font-size: 11px;
  text-transform: none;
  letter-spacing: 0;
}
.SalesEnhancements_modernTable td {
  height: 44px;
  padding: 8px 10px;
}
.SalesEnhancements_salesTablePanel {
  padding: 0;
  overflow: hidden;
}
.SalesEnhancements_columnMenu {
  width: 320px;
  max-height: min(560px, 70vh);
  overflow: auto;
  padding: 9px;
}
.SalesEnhancements_columnMenuTitle {
  padding: 4px 6px 8px;
  color: #667085;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.SalesEnhancements_columnOption {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  align-items: center;
  gap: 5px;
  min-height: 34px;
  padding: 3px 5px;
  border: 1px solid transparent;
  border-radius: 7px;
  background: #fff;
}
.SalesEnhancements_columnOption[draggable=true] {
  cursor: grab;
}
.SalesEnhancements_columnOption[draggable=true]:active {
  cursor: grabbing;
}
.SalesEnhancements_columnOption:hover {
  background: #f8fafc;
}
.SalesEnhancements_columnDragging {
  border-color: #84adff;
  background: #eff6ff;
  opacity: .7;
}
.SalesEnhancements_dragHandle {
  display: grid;
  place-items: center;
  color: #98a2b3;
}
.SalesEnhancements_dragHandle .SalesEnhancements_controlIcon {
  width: 16px;
  height: 16px;
}
.SalesEnhancements_columnOption label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  font-size: 12px;
  color: #344054;
}
.SalesEnhancements_columnOption label input {
  width: 15px;
  height: 15px;
  accent-color: #2563eb;
}
.SalesEnhancements_columnOption label small {
  margin-left: auto;
  color: #98a2b3;
  font-size: 9px;
  text-transform: uppercase;
}
.SalesEnhancements_columnMoveButtons {
  display: flex;
  gap: 2px;
}
.SalesEnhancements_columnMoveButtons button {
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 6px;
  background: transparent;
  color: #667085;
  cursor: pointer;
}
.SalesEnhancements_columnMoveButtons button:hover:not(:disabled) {
  border-color: #d0d5dd;
  background: #fff;
  color: #175cd3;
}
.SalesEnhancements_columnMoveButtons button:disabled {
  opacity: .25;
  cursor: not-allowed;
}
.SalesEnhancements_columnMoveButtons .SalesEnhancements_controlIcon {
  width: 13px;
  height: 13px;
}
.SalesEnhancements_menuReset {
  justify-content: center !important;
  margin-top: 7px;
  padding-top: 9px !important;
  border-top: 1px solid #eaecf0 !important;
  border-radius: 0 !important;
  color: #175cd3 !important;
}
.SalesEnhancements_groupChevron {
  display: grid;
  place-items: center;
  width: 18px;
}
.SalesEnhancements_groupChevron .SalesEnhancements_controlIcon {
  width: 15px;
  height: 15px;
}
.SalesEnhancements_openDeal {
  display: grid !important;
  place-items: center;
}
.SalesEnhancements_openDeal .SalesEnhancements_controlIcon {
  width: 13px;
  height: 13px;
}
.SalesEnhancements_salesSettings {
  display: grid;
  gap: 18px;
}
.SalesEnhancements_settingsCard {
  overflow: hidden;
  border: 1px solid #e4e7ec;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .03);
}
.SalesEnhancements_settingsCardHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px;
  border-bottom: 1px solid #eaecf0;
}
.SalesEnhancements_settingsCardHeader h2 {
  margin: 0;
  color: #172033;
  font-size: 17px;
  font-weight: 800;
}
.SalesEnhancements_settingsCardHeader p {
  margin: 5px 0 0;
  color: #667085;
  font-size: 12px;
  line-height: 1.5;
}
.SalesEnhancements_stageSettingsList {
  display: grid;
}
.SalesEnhancements_stageSettingsRow {
  display: grid;
  grid-template-columns: 12px minmax(180px, 1fr) 110px 86px 82px 76px auto;
  gap: 10px;
  align-items: end;
  padding: 11px 18px;
  border-bottom: 1px solid #f0f2f5;
}
.SalesEnhancements_stageSettingsRow:last-child {
  border-bottom: 0;
}
.SalesEnhancements_stageSettingsRow > input,
.SalesEnhancements_stageSettingsRow label input,
.SalesEnhancements_addStageRow input,
.SalesEnhancements_importControls input {
  box-sizing: border-box;
  height: 34px;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  padding: 0 9px;
  color: #172033;
  font: inherit;
  font-size: 12px;
}
.SalesEnhancements_stageSettingsRow label {
  display: grid;
  gap: 4px;
  color: #667085;
  font-size: 9px;
  font-weight: 750;
  text-transform: uppercase;
}
.SalesEnhancements_stageSettingsRow input[type=color],
.SalesEnhancements_addStageRow input[type=color] {
  padding: 3px;
  width: 100%;
}
.SalesEnhancements_stageColorPreview {
  align-self: center;
  width: 10px;
  height: 32px;
  border-radius: 999px;
}
.SalesEnhancements_stageActive {
  align-self: center !important;
  display: flex !important;
  align-items: center;
  gap: 6px !important;
}
.SalesEnhancements_stageActive input {
  width: 15px !important;
  height: 15px !important;
  accent-color: #2563eb;
}
.SalesEnhancements_addStageRow {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) 110px 86px 82px auto;
  gap: 10px;
  padding: 14px 18px;
  background: #f8fafc;
  border-bottom: 1px solid #eaecf0;
}
.SalesEnhancements_importControls {
  display: flex;
  align-items: end;
  gap: 8px;
  padding: 16px 20px;
  flex-wrap: wrap;
}
.SalesEnhancements_importControls label {
  display: grid;
  gap: 5px;
  min-width: 210px;
  color: #667085;
  font-size: 10px;
  font-weight: 750;
  text-transform: uppercase;
}
.SalesEnhancements_importResult {
  margin: 0 20px 16px;
  padding: 12px;
  border: 1px solid #abefc6;
  border-radius: 9px;
  background: #ecfdf3;
  color: #067647;
}
.SalesEnhancements_importResultError {
  border-color: #fecdca;
  background: #fef3f2;
  color: #b42318;
}
.SalesEnhancements_importResult pre {
  max-height: 230px;
  margin: 8px 0 0;
  overflow: auto;
  color: inherit;
  font-size: 10px;
  white-space: pre-wrap;
}
.SalesEnhancements_settingsSubhead {
  padding: 12px 20px 8px;
  border-top: 1px solid #eaecf0;
  color: #667085;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.SalesEnhancements_importHistory,
.SalesEnhancements_importReview {
  display: grid;
}
.SalesEnhancements_importHistory > div,
.SalesEnhancements_importReview > div {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 8px 20px;
  border-top: 1px solid #f0f2f5;
  color: #344054;
  font-size: 12px;
}
.SalesEnhancements_importHistory > div > span:first-child,
.SalesEnhancements_importReview > div > span:first-child {
  display: grid;
  gap: 3px;
  min-width: 0;
  flex: 1;
}
.SalesEnhancements_importHistory small,
.SalesEnhancements_importReview small {
  color: #667085;
  font-size: 10px;
}
.SalesEnhancements_importHistory b {
  font-variant-numeric: tabular-nums;
}
.SalesEnhancements_importReview .SalesEnhancements_primary,
.SalesEnhancements_importReview .SalesEnhancements_secondary {
  min-height: 30px;
  height: 30px;
  padding: 0 10px;
}
.SalesEnhancements_close {
  display: grid;
  place-items: center;
}
.SalesEnhancements_close .SalesEnhancements_controlIcon {
  width: 17px;
  height: 17px;
}
.SalesEnhancements_actions .SalesEnhancements_primary,
.SalesEnhancements_actions .SalesEnhancements_secondary,
.SalesEnhancements_toolbar .SalesEnhancements_primary,
.SalesEnhancements_toolbar .SalesEnhancements_secondary {
  min-height: 36px;
}
.SalesEnhancements_linkButton {
  color: #175cd3;
}
.SalesEnhancements_linkButton:hover {
  text-decoration: underline;
}
@media (max-width: 900px) {
  .SalesEnhancements_stageSettingsRow {
    grid-template-columns: 12px minmax(160px, 1fr) 90px auto;
  }
  .SalesEnhancements_stageSettingsRow label:nth-of-type(2),
  .SalesEnhancements_stageSettingsRow label:nth-of-type(3) {
    display: none;
  }
  .SalesEnhancements_stageActive {
    display: flex !important;
  }
  .SalesEnhancements_addStageRow {
    grid-template-columns: 1fr 90px auto;
  }
  .SalesEnhancements_addStageRow input:nth-child(3),
  .SalesEnhancements_addStageRow input:nth-child(4) {
    display: none;
  }
  .SalesEnhancements_settingsCardHeader {
    align-items: center;
  }
}
@media (max-width: 640px) {
  .SalesEnhancements_primary,
  .SalesEnhancements_secondary {
    min-height: 34px;
  }
  .SalesEnhancements_settingsCardHeader {
    display: grid;
    padding: 15px;
  }
  .SalesEnhancements_stageSettingsRow {
    grid-template-columns: 10px minmax(0, 1fr) auto;
    padding: 10px;
  }
  .SalesEnhancements_stageSettingsRow label {
    display: none !important;
  }
  .SalesEnhancements_stageSettingsRow .SalesEnhancements_secondary {
    padding: 0 9px;
  }
  .SalesEnhancements_addStageRow {
    grid-template-columns: 1fr auto;
    padding: 10px;
  }
  .SalesEnhancements_addStageRow input:nth-child(n+2):nth-child(-n+4) {
    display: none;
  }
  .SalesEnhancements_importControls {
    padding: 14px;
  }
  .SalesEnhancements_importControls label {
    width: 100%;
  }
  .SalesEnhancements_importHistory > div,
  .SalesEnhancements_importReview > div {
    padding: 8px 14px;
  }
}
.SalesEnhancements_dateFilterBar {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 6px 8px;
  border: 1px solid #e4e7ec;
  border-radius: 9px;
  background: #f8fafc;
  flex-wrap: wrap;
}
.SalesEnhancements_dateFilterBar label {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #667085;
  font-size: 10px;
  font-weight: 750;
  text-transform: uppercase;
}
.SalesEnhancements_dateFilterBar select,
.SalesEnhancements_dateFilterBar input,
.SalesEnhancements_crmToolbar select,
.SalesEnhancements_crmToolbar input,
.SalesEnhancements_dashboardControls select,
.SalesEnhancements_dashboardControls input {
  appearance: none;
  box-sizing: border-box;
  height: 32px;
  border: 1px solid #d0d5dd;
  border-radius: 7px;
  background: #fff;
  padding: 0 9px;
  color: #344054;
  font: inherit;
  font-size: 11px;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .03);
}
.SalesEnhancements_dateFilterBar select:focus,
.SalesEnhancements_dateFilterBar input:focus,
.SalesEnhancements_crmToolbar select:focus,
.SalesEnhancements_crmToolbar input:focus,
.SalesEnhancements_dashboardControls select:focus,
.SalesEnhancements_dashboardControls input:focus {
  outline: 0;
  border-color: #528bff;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .12);
}
.SalesEnhancements_filterResult {
  margin-left: auto;
  color: #475467;
  font-size: 11px;
  font-weight: 750;
}
.SalesEnhancements_activeFilterChips {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.SalesEnhancements_activeFilterChips button {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 26px;
  padding: 0 8px;
  border: 1px solid #b2ccff;
  border-radius: 999px;
  background: #eff6ff;
  color: #175cd3;
  font-size: 10px;
  font-weight: 700;
  cursor: pointer;
}
.SalesEnhancements_activeFilterChips button:hover {
  background: #dbeafe;
}
.SalesEnhancements_activeFilterChips .SalesEnhancements_controlIcon {
  width: 11px;
  height: 11px;
}
.SalesEnhancements_crmWorkspace {
  display: grid;
  gap: 12px;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.SalesEnhancements_crmToolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.SalesEnhancements_crmSearch {
  width: min(330px, 100%);
  min-width: 220px;
}
.SalesEnhancements_crmToolbar .SalesEnhancements_segmented {
  margin-right: 2px;
}
.SalesEnhancements_crmToolbar .SalesEnhancements_tertiary {
  margin-left: 0;
}
.SalesEnhancements_crmToolbar .SalesEnhancements_primary,
.SalesEnhancements_crmToolbar .SalesEnhancements_secondary,
.SalesEnhancements_dashboardControls .SalesEnhancements_secondary {
  height: 32px;
  min-height: 32px;
  padding: 0 10px;
}
.SalesEnhancements_crmTable {
  width: 100%;
  min-width: 980px;
  table-layout: auto;
  border-collapse: collapse;
}
.SalesEnhancements_crmTable th,
.SalesEnhancements_crmTable td {
  white-space: nowrap;
}
.SalesEnhancements_crmTable td {
  max-width: 240px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.SalesEnhancements_crmTable tbody tr:hover td {
  background: #f8fbff;
}
.SalesEnhancements_quoteTable {
  min-width: 1120px;
}
.SalesEnhancements_recordLink {
  appearance: none;
  display: block;
  max-width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: #175cd3;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
}
.SalesEnhancements_recordLink:hover {
  text-decoration: underline;
}
.SalesEnhancements_recordLink:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
  border-radius: 3px;
}
.SalesEnhancements_statusPill,
.SalesEnhancements_sourcePill {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 0 8px;
  border: 1px solid #d0d5dd;
  border-radius: 999px;
  background: #f8fafc;
  color: #475467;
  font-size: 10px;
  font-weight: 750;
  text-transform: capitalize;
  white-space: nowrap;
}
.SalesEnhancements_sourcePill {
  border-color: #d6e4ff;
  background: #eff6ff;
  color: #175cd3;
}
.SalesEnhancements_statusDraft {
  border-color: #d0d5dd;
  background: #f8fafc;
  color: #475467;
}
.SalesEnhancements_statusSent {
  border-color: #b2ccff;
  background: #eff6ff;
  color: #175cd3;
}
.SalesEnhancements_statusAccepted {
  border-color: #abefc6;
  background: #ecfdf3;
  color: #067647;
}
.SalesEnhancements_statusDeclined {
  border-color: #fecdca;
  background: #fef3f2;
  color: #b42318;
}
.SalesEnhancements_statusExpired {
  border-color: #fedf89;
  background: #fffaeb;
  color: #b54708;
}
.SalesEnhancements_statusSuperseded {
  border-color: #e4e7ec;
  background: #f2f4f7;
  color: #667085;
}
.SalesEnhancements_rowMenu {
  position: relative;
  display: flex;
  justify-content: flex-end;
}
.SalesEnhancements_iconButton {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 7px;
  background: transparent;
  color: #667085;
  cursor: pointer;
}
.SalesEnhancements_iconButton:hover,
.SalesEnhancements_iconButton[aria-expanded=true] {
  border-color: #d0d5dd;
  background: #fff;
  color: #175cd3;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .06);
}
.SalesEnhancements_rowMenuList {
  position: absolute;
  z-index: 40;
  top: calc(100% + 4px);
  right: 0;
  display: grid;
  min-width: 180px;
  padding: 6px;
  border: 1px solid #e4e7ec;
  border-radius: 9px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .16);
}
.SalesEnhancements_rowMenuList button {
  display: flex;
  align-items: center;
  gap: 7px;
  width: 100%;
  min-height: 32px;
  padding: 0 8px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #344054;
  font: inherit;
  font-size: 11px;
  font-weight: 650;
  text-align: left;
  cursor: pointer;
}
.SalesEnhancements_rowMenuList button:hover {
  background: #f2f4f7;
}
.SalesEnhancements_rowMenuList .SalesEnhancements_controlIcon {
  width: 13px;
  height: 13px;
}
.SalesEnhancements_salesDashboard {
  display: grid;
  gap: 16px;
  min-width: 0;
}
.SalesEnhancements_dashboardControls {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-height: 42px;
  padding: 8px 10px;
  border: 1px solid #e4e7ec;
  border-radius: 10px;
  background: #f8fafc;
  flex-wrap: wrap;
}
.SalesEnhancements_dashboardControls > div {
  display: grid;
  gap: 2px;
  margin-right: auto;
}
.SalesEnhancements_dashboardControls > div strong {
  color: #344054;
  font-size: 11px;
}
.SalesEnhancements_dashboardSummary {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  border: 1px solid #e4e7ec;
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
}
.SalesEnhancements_dashboardSummary button {
  display: grid;
  gap: 4px;
  min-width: 0;
  min-height: 66px;
  padding: 12px 14px;
  border: 0;
  border-right: 1px solid #eaecf0;
  background: #fff;
  color: #172033;
  text-align: left;
  cursor: pointer;
}
.SalesEnhancements_dashboardSummary button:last-child {
  border-right: 0;
}
.SalesEnhancements_dashboardSummary button:hover {
  background: #f8fbff;
}
.SalesEnhancements_dashboardSummary small {
  overflow: hidden;
  color: #667085;
  font-size: 10px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesEnhancements_dashboardSummary strong {
  font-size: 17px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.02em;
}
.SalesEnhancements_dashboardSectionHead {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}
.SalesEnhancements_dashboardSectionHead h2 {
  margin: 0;
  color: #172033;
  font-size: 14px;
  font-weight: 800;
}
.SalesEnhancements_dashboardSectionHead p {
  margin: 3px 0 0;
  color: #667085;
  font-size: 10px;
  line-height: 1.4;
}
.SalesEnhancements_gaugeGrid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.SalesEnhancements_gaugeCard {
  appearance: none;
  position: relative;
  display: grid;
  justify-items: center;
  min-width: 0;
  padding: 14px 12px 13px;
  border: 1px solid #e4e7ec;
  border-radius: 11px;
  background: #fff;
  color: #172033;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .03);
  cursor: pointer;
}
.SalesEnhancements_gaugeCard:hover {
  border-color: #b2ccff;
  box-shadow: 0 5px 16px rgba(15, 23, 42, .07);
}
.SalesEnhancements_gaugeCard:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
}
.SalesEnhancements_gaugeChart {
  position: relative;
  width: 100%;
  height: 86px;
  max-width: 190px;
  overflow: hidden;
}
.SalesEnhancements_gaugeCenter {
  position: absolute;
  left: 50%;
  bottom: 2px;
  display: grid;
  justify-items: center;
  transform: translateX(-50%);
}
.SalesEnhancements_gaugeCenter strong {
  font-size: 20px;
  line-height: 1;
}
.SalesEnhancements_gaugeCenter span {
  margin-top: 2px;
  color: #98a2b3;
  font-size: 8px;
  text-transform: uppercase;
}
.SalesEnhancements_gaugeLabel {
  margin-top: 5px;
  color: #475467;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.SalesEnhancements_gaugeValue {
  margin-top: 3px;
  font-size: 16px;
  font-weight: 850;
  font-variant-numeric: tabular-nums;
}
.SalesEnhancements_gaugeCard > small {
  margin-top: 2px;
  color: #667085;
  font-size: 9px;
}
.SalesEnhancements_dashboardChartGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.SalesEnhancements_dashboardCard {
  min-width: 0;
  padding: 16px;
  border: 1px solid #e4e7ec;
  border-radius: 11px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .03);
}
.SalesEnhancements_dashboardWide {
  min-width: 0;
}
.SalesEnhancements_dashboardLists {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.SalesEnhancements_dashboardListRow {
  appearance: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  min-height: 48px;
  padding: 8px 2px;
  border: 0;
  border-bottom: 1px solid #f0f2f5;
  background: transparent;
  color: #344054;
  text-align: left;
}
.SalesEnhancements_dashboardLists button.SalesEnhancements_dashboardListRow {
  cursor: pointer;
}
.SalesEnhancements_dashboardLists button.SalesEnhancements_dashboardListRow:hover {
  background: #f8fbff;
}
.SalesEnhancements_dashboardListRow > span {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.SalesEnhancements_dashboardListRow strong,
.SalesEnhancements_dashboardListRow small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesEnhancements_dashboardListRow strong {
  font-size: 11px;
}
.SalesEnhancements_dashboardListRow small {
  max-width: 380px;
  color: #667085;
  font-size: 10px;
}
.SalesEnhancements_dashboardListRow time {
  flex: none;
  color: #667085;
  font-size: 10px;
}
.SalesEnhancements_dashboardOverdue {
  color: #b42318 !important;
  font-weight: 800;
}
.SalesEnhancements_drawerMetrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.SalesEnhancements_drawerMetrics span {
  display: grid;
  gap: 4px;
  padding: 11px;
  border: 1px solid #e4e7ec;
  border-radius: 9px;
  background: #f8fafc;
}
.SalesEnhancements_drawerMetrics small {
  color: #667085;
  font-size: 9px;
  font-weight: 750;
  text-transform: uppercase;
}
.SalesEnhancements_drawerMetrics strong {
  color: #172033;
  font-size: 14px;
  font-variant-numeric: tabular-nums;
}
.SalesEnhancements_drawerRecordRow {
  appearance: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  min-height: 46px;
  padding: 7px 4px;
  border: 0;
  border-bottom: 1px solid #f0f2f5;
  background: transparent;
  color: #344054;
  text-align: left;
}
.SalesEnhancements_drawerRecordRow:where(button) {
  cursor: pointer;
}
.SalesEnhancements_drawerRecordRow:where(button):hover {
  background: #f8fbff;
}
.SalesEnhancements_drawerRecordRow > span {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.SalesEnhancements_drawerRecordRow strong,
.SalesEnhancements_drawerRecordRow small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesEnhancements_drawerRecordRow strong {
  font-size: 11px;
}
.SalesEnhancements_drawerRecordRow small {
  color: #667085;
  font-size: 10px;
}
.SalesEnhancements_drawerRecordRow > .SalesEnhancements_controlIcon {
  width: 13px;
  color: #98a2b3;
}
.SalesEnhancements_quoteDrawerHero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  padding: 14px;
  border: 1px solid #d6e4ff;
  border-radius: 10px;
  background: #f5f9ff;
}
.SalesEnhancements_quoteDrawerHero > strong {
  font-size: 20px;
  font-variant-numeric: tabular-nums;
}
.SalesEnhancements_quoteDrawerHero > strong small {
  color: #667085;
  font-size: 9px;
  font-weight: 700;
}
.SalesEnhancements_quoteTotals {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 7px 16px;
  align-items: center;
  margin-left: auto;
  width: min(260px, 100%);
  padding: 12px 0;
  color: #475467;
  font-size: 11px;
}
.SalesEnhancements_quoteTotals strong {
  text-align: right;
  color: #172033;
  font-variant-numeric: tabular-nums;
}
.SalesEnhancements_quoteTotals span:last-of-type,
.SalesEnhancements_quoteTotals strong:last-child {
  padding-top: 7px;
  border-top: 1px solid #d0d5dd;
  font-size: 13px;
  font-weight: 850;
}
@media (max-width: 1100px) {
  .SalesEnhancements_dashboardSummary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .SalesEnhancements_dashboardSummary button:nth-child(3) {
    border-right: 0;
  }
  .SalesEnhancements_dashboardSummary button:nth-child(-n+3) {
    border-bottom: 1px solid #eaecf0;
  }
  .SalesEnhancements_gaugeGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .SalesEnhancements_dateFilterBar > * {
    flex: 1 1 135px;
  }
  .SalesEnhancements_dateFilterBar label {
    flex-basis: 100%;
  }
  .SalesEnhancements_dateFilterBar label select {
    flex: 1;
  }
  .SalesEnhancements_filterResult {
    margin-left: 0;
  }
  .SalesEnhancements_crmToolbar > * {
    flex: 1 1 140px;
  }
  .SalesEnhancements_crmSearch {
    flex-basis: 100%;
    width: 100%;
    min-width: 0;
  }
  .SalesEnhancements_crmToolbar .SalesEnhancements_segmented {
    flex: 0 0 auto;
  }
  .SalesEnhancements_crmToolbar .SalesEnhancements_tertiary {
    margin-left: 0;
  }
  .SalesEnhancements_dashboardChartGrid,
  .SalesEnhancements_dashboardLists {
    grid-template-columns: 1fr;
  }
  .SalesEnhancements_dashboardControls > div {
    flex-basis: 100%;
  }
  .SalesEnhancements_dashboardSummary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .SalesEnhancements_dashboardSummary button {
    border-right: 1px solid #eaecf0;
    border-bottom: 1px solid #eaecf0;
  }
  .SalesEnhancements_dashboardSummary button:nth-child(2n) {
    border-right: 0;
  }
  .SalesEnhancements_dashboardSummary button:nth-last-child(-n+2) {
    border-bottom: 0;
  }
  .SalesEnhancements_gaugeGrid {
    grid-template-columns: 1fr 1fr;
  }
  .SalesEnhancements_dashboardCard {
    padding: 13px;
  }
}
@media (max-width: 520px) {
  .SalesEnhancements_gaugeGrid {
    grid-template-columns: 1fr;
  }
  .SalesEnhancements_dashboardSummary {
    grid-template-columns: 1fr 1fr;
  }
  .SalesEnhancements_drawerMetrics {
    grid-template-columns: 1fr;
  }
  .SalesEnhancements_dashboardControls select,
  .SalesEnhancements_dashboardControls input {
    flex: 1 1 130px;
  }
}
.SalesEnhancements_kpiWorkspace {
  display: grid;
  gap: 12px;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.SalesEnhancements_kpiFyToolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 14px;
  border: 1px solid #e4e7ec;
  border-radius: 10px;
  background: #fff;
}
.SalesEnhancements_kpiFyToolbar > div:first-child {
  display: grid;
  gap: 4px;
}
.SalesEnhancements_kpiFyToolbar strong {
  color: #344054;
  font-size: 13px;
}
.SalesEnhancements_kpiFyActions {
  display: flex;
  align-items: center;
  gap: 7px;
}
.SalesEnhancements_kpiFyActions .SalesEnhancements_iconButton {
  width: 34px;
  height: 34px;
}
.SalesEnhancements_kpiFyActions .SalesEnhancements_iconButton:first-child .SalesEnhancements_controlIcon,
.SalesEnhancements_kpiFyActions .SalesEnhancements_iconButton:nth-child(3) .SalesEnhancements_controlIcon {
  transform: rotate(-90deg);
}
.SalesEnhancements_kpiPlanningEmpty {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 14px;
  border: 1px dashed #b9c8dc;
  border-radius: 10px;
  background: #f8fbff;
}
.SalesEnhancements_kpiPlanningEmpty > span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background: #eaf2ff;
  color: #2563eb;
}
.SalesEnhancements_kpiPlanningEmpty > div {
  flex: 1;
  display: grid;
  gap: 2px;
}
.SalesEnhancements_kpiPlanningEmpty strong {
  color: #344054;
  font-size: 12px;
}
.SalesEnhancements_kpiPlanningEmpty p {
  margin: 0;
  color: #667085;
  font-size: 11px;
}
.SalesEnhancements_kpiMetricBar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 4px;
}
.SalesEnhancements_kpiMetricBar > div:first-child {
  display: grid;
  gap: 2px;
}
.SalesEnhancements_kpiMetricBar strong {
  color: #344054;
  font-size: 14px;
}
.SalesEnhancements_kpiMetricBar span {
  color: #667085;
  font-size: 11px;
}
.SalesEnhancements_kpiChartCard,
.SalesEnhancements_kpiRegister,
.SalesEnhancements_kpiAdjustments {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e4e7ec;
  border-radius: 11px;
  background: #fff;
}
.SalesEnhancements_kpiChartCard {
  padding: 14px 16px;
}
.SalesEnhancements_kpiRegister {
  padding: 0;
}
.SalesEnhancements_kpiPerformanceTable {
  width: 100%;
  min-width: 820px;
}
.SalesEnhancements_kpiPerformanceTable td:not(:first-child),
.SalesEnhancements_kpiPerformanceTable th:not(:first-child) {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.SalesEnhancements_kpiActualLink {
  appearance: none;
  padding: 3px 5px;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: #175cd3;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
.SalesEnhancements_kpiActualLink:hover {
  background: #eff6ff;
  text-decoration: underline;
}
.SalesEnhancements_kpiActualLink:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 1px;
}
.SalesEnhancements_kpiAchievement {
  display: inline-flex;
  justify-content: center;
  min-width: 64px;
  padding: 4px 7px;
  border-radius: 999px;
  background: #f2f4f7;
  color: #667085;
  font-size: 10px;
  font-weight: 750;
}
.SalesEnhancements_kpiGood {
  background: #ecfdf3;
  color: #067647;
}
.SalesEnhancements_kpiWarning {
  background: #fffaeb;
  color: #b54708;
}
.SalesEnhancements_kpiNegative {
  color: #b42318 !important;
}
.SalesEnhancements_kpiPositive {
  color: #067647 !important;
}
.SalesEnhancements_kpiAdjustments {
  padding: 14px 16px;
}
.SalesEnhancements_kpiAdjustmentRow {
  display: grid;
  grid-template-columns: 135px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 44px;
  padding: 7px 2px;
  border-bottom: 1px solid #f0f2f5;
  color: #344054;
  font-size: 11px;
}
.SalesEnhancements_kpiAdjustmentRow:last-of-type {
  border-bottom: 0;
}
.SalesEnhancements_kpiAdjustmentRow > span {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.SalesEnhancements_kpiAdjustmentRow > span:last-child {
  text-align: right;
}
.SalesEnhancements_kpiAdjustmentRow small {
  overflow: hidden;
  color: #667085;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesEnhancements_kpiAdjustmentMetric {
  display: inline-flex !important;
  justify-self: start;
  padding: 4px 7px;
  border-radius: 999px;
  background: #eff6ff;
  color: #175cd3;
  font-size: 10px;
  font-weight: 750;
}
@media (max-width: 760px) {
  .SalesEnhancements_kpiFyToolbar,
  .SalesEnhancements_kpiMetricBar {
    align-items: stretch;
    flex-direction: column;
  }
  .SalesEnhancements_kpiFyActions {
    flex-wrap: wrap;
  }
  .SalesEnhancements_kpiFyActions .SalesEnhancements_fySelect {
    flex: 1;
  }
  .SalesEnhancements_kpiMetricBar .SalesEnhancements_segmented {
    width: 100%;
    overflow-x: auto;
  }
  .SalesEnhancements_kpiMetricBar .SalesEnhancements_segmented button {
    flex: 1;
    white-space: nowrap;
  }
  .SalesEnhancements_kpiPlanningEmpty {
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .SalesEnhancements_kpiPlanningEmpty > div {
    min-width: 180px;
  }
  .SalesEnhancements_kpiAdjustmentRow {
    grid-template-columns: 1fr auto;
  }
  .SalesEnhancements_kpiAdjustmentMetric {
    grid-column: 1/-1;
  }
  .SalesEnhancements_kpiAdjustmentRow > span:last-child {
    align-self: end;
  }
  .SalesEnhancements_kpiChartCard {
    padding: 12px;
  }
  .SalesEnhancements_kpiRegister .SalesEnhancements_tableWrap {
    overflow-x: auto;
  }
}
.SalesEnhancements_emailAccountSection {
  display: grid;
  gap: 12px;
}
.SalesEnhancements_emailAccountHeading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}
.SalesEnhancements_emailAccountHeading h3 {
  margin: 0;
  color: #172033;
  font-size: 14px;
  font-weight: 800;
}
.SalesEnhancements_emailAccountHeading p,
.SalesEnhancements_emailConnectEmpty p,
.SalesEnhancements_emailConfigHint {
  margin: 4px 0 0;
  color: #667085;
  font-size: 11px;
  line-height: 1.5;
}
.SalesEnhancements_emailAccountHeading > span {
  flex: none;
  padding: 4px 8px;
  border-radius: 999px;
  background: #fff4e5;
  color: #b54708;
  font-size: 10px;
  font-weight: 800;
}
.SalesEnhancements_emailAccountCard {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 13px;
  border: 1px solid #dce4ef;
  border-radius: 11px;
  background: #f8fbff;
}
.SalesEnhancements_emailProviderMark {
  display: grid;
  place-items: center;
  flex: none;
  width: 34px;
  height: 34px;
  border-radius: 9px;
  background: #eaf2ff;
  color: #2563eb;
}
.SalesEnhancements_emailProviderMark .SalesEnhancements_controlIcon {
  width: 17px;
  height: 17px;
}
.SalesEnhancements_emailAccountCard > div:nth-child(2) {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.SalesEnhancements_emailAccountCard strong {
  color: #172033;
  font-size: 12px;
}
.SalesEnhancements_emailAccountCard small {
  overflow: hidden;
  color: #667085;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesEnhancements_emailAccountCard em,
.SalesEnhancements_emailAdminAccounts em {
  color: #b42318;
  font-size: 10px;
  font-style: normal;
}
.SalesEnhancements_emailAccountActions,
.SalesEnhancements_emailProviderButtons {
  display: flex;
  align-items: center;
  gap: 7px;
  flex-wrap: wrap;
}
.SalesEnhancements_emailConnectEmpty {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  padding: 13px;
  border: 1px dashed #b8c7dc;
  border-radius: 10px;
  background: #f8fafc;
}
.SalesEnhancements_emailConnectEmpty > div {
  min-width: 0;
}
.SalesEnhancements_emailConnectEmpty strong {
  color: #344054;
  font-size: 12px;
}
.SalesEnhancements_emailConfigHint {
  margin: 0;
}
.SalesEnhancements_emailReviewButton {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 32px;
  padding: 0 9px;
  border: 1px solid #fedf89;
  border-radius: 8px;
  background: #fffaeb;
  color: #b54708;
  font: inherit;
  font-size: 11px;
  font-weight: 750;
  cursor: pointer;
}
.SalesEnhancements_emailReviewButton:hover {
  background: #fff4d6;
}
.SalesEnhancements_emailReviewButton b {
  display: grid;
  place-items: center;
  min-width: 19px;
  height: 19px;
  padding: 0 4px;
  border-radius: 999px;
  background: #b54708;
  color: #fff;
  font-size: 9px;
}
.SalesEnhancements_emailReviewButton .SalesEnhancements_controlIcon {
  width: 14px;
  height: 14px;
}
.SalesEnhancements_emailReviewList {
  display: grid;
  gap: 10px;
}
.SalesEnhancements_emailReviewItem {
  display: grid;
  gap: 7px;
  padding: 13px;
  border: 1px solid #e4e7ec;
  border-radius: 10px;
  background: #fff;
}
.SalesEnhancements_emailReviewHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.SalesEnhancements_emailReviewHead time {
  color: #667085;
  font-size: 10px;
}
.SalesEnhancements_emailDirection {
  padding: 3px 7px;
  border-radius: 999px;
  background: #eff6ff;
  color: #175cd3;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}
.SalesEnhancements_emailReviewItem > strong {
  color: #172033;
  font-size: 12px;
}
.SalesEnhancements_emailReviewItem > p {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  color: #475467;
  font-size: 11px;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.SalesEnhancements_emailReviewItem > small {
  color: #b54708;
  font-size: 10px;
}
.SalesEnhancements_emailReviewActions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 7px;
  margin-top: 3px;
}
.SalesEnhancements_emailReviewActions select {
  min-width: 0;
  height: 34px;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  padding: 0 9px;
  color: #344054;
  font-size: 11px;
}
.SalesEnhancements_emailReviewEmpty {
  display: grid;
  justify-items: center;
  gap: 5px;
  padding: 22px 12px;
  border: 1px dashed #d0d5dd;
  border-radius: 10px;
  background: #f8fafc;
  text-align: center;
}
.SalesEnhancements_emailReviewEmpty > .SalesEnhancements_controlIcon {
  width: 22px;
  height: 22px;
  color: #98a2b3;
}
.SalesEnhancements_emailReviewEmpty strong {
  color: #344054;
  font-size: 12px;
}
.SalesEnhancements_emailReviewEmpty span {
  color: #667085;
  font-size: 10px;
}
.SalesEnhancements_emailThreadList {
  display: grid;
  border: 1px solid #e4e7ec;
  border-radius: 10px;
  overflow: hidden;
}
.SalesEnhancements_emailThread {
  border-bottom: 1px solid #eaecf0;
  background: #fff;
}
.SalesEnhancements_emailThread:last-child {
  border-bottom: 0;
}
.SalesEnhancements_emailThreadLatest {
  box-shadow: inset 3px 0 #2563eb;
}
.SalesEnhancements_emailThreadSummary {
  appearance: none;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 10px;
  border: 0;
  background: #fff;
  color: #344054;
  text-align: left;
  cursor: pointer;
}
.SalesEnhancements_emailThreadSummary:hover {
  background: #f8fbff;
}
.SalesEnhancements_emailThreadSummary > span:nth-child(2) {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.SalesEnhancements_emailThreadSummary strong,
.SalesEnhancements_emailThreadSummary small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesEnhancements_emailThreadSummary strong {
  color: #172033;
  font-size: 11px;
}
.SalesEnhancements_emailThreadSummary strong i {
  margin-right: 7px;
  padding: 2px 5px;
  border-radius: 4px;
  background: #eaf2ff;
  color: #175cd3;
  font-size: 8px;
  font-style: normal;
  text-transform: uppercase;
}
.SalesEnhancements_emailThreadSummary small {
  color: #667085;
  font-size: 9px;
}
.SalesEnhancements_emailThreadSummary > .SalesEnhancements_controlIcon {
  width: 14px;
  height: 14px;
  color: #98a2b3;
}
.SalesEnhancements_emailMessages {
  display: grid;
  gap: 8px;
  padding: 9px 11px 12px;
  background: #f8fafc;
  border-top: 1px solid #eaecf0;
}
.SalesEnhancements_emailMessage {
  display: grid;
  gap: 5px;
  padding: 11px;
  border: 1px solid #dce4ef;
  border-radius: 9px;
  background: #fff;
}
.SalesEnhancements_emailMessageOutbound {
  border-left: 3px solid #2563eb;
}
.SalesEnhancements_emailMessageInbound {
  border-left: 3px solid #16a34a;
}
.SalesEnhancements_emailMessageHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.SalesEnhancements_emailMessageHead span {
  padding: 3px 6px;
  border-radius: 999px;
  background: #f2f4f7;
  color: #475467;
  font-size: 8px;
  font-weight: 800;
  text-transform: uppercase;
}
.SalesEnhancements_emailMessageHead time,
.SalesEnhancements_emailMessage > small {
  color: #667085;
  font-size: 9px;
}
.SalesEnhancements_emailMessage > strong {
  color: #172033;
  font-size: 11px;
}
.SalesEnhancements_emailMessage pre {
  max-height: 310px;
  margin: 4px 0 0;
  overflow: auto;
  color: #344054;
  font: inherit;
  font-size: 10px;
  line-height: 1.55;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.SalesEnhancements_emailMessage > a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  justify-self: start;
  color: #175cd3;
  font-size: 10px;
  font-weight: 750;
  text-decoration: none;
}
.SalesEnhancements_emailMessage > a .SalesEnhancements_controlIcon {
  width: 11px;
  height: 11px;
}
.SalesEnhancements_emailAttachmentList {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.SalesEnhancements_emailAttachmentList span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 6px;
  border: 1px solid #e4e7ec;
  border-radius: 6px;
  background: #f8fafc;
  color: #475467;
  font-size: 9px;
}
.SalesEnhancements_emailAttachmentList .SalesEnhancements_controlIcon {
  width: 11px;
  height: 11px;
}
.SalesEnhancements_emailThreadError {
  padding: 10px;
  border: 1px solid #fecdca;
  border-radius: 8px;
  background: #fef3f2;
  color: #b42318;
  font-size: 10px;
}
.SalesEnhancements_emailAdminSummary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-bottom: 1px solid #eaecf0;
}
.SalesEnhancements_emailAdminSummary > span {
  display: grid;
  gap: 4px;
  padding: 14px 16px;
  border-right: 1px solid #eaecf0;
}
.SalesEnhancements_emailAdminSummary > span:last-child {
  border-right: 0;
}
.SalesEnhancements_emailAdminSummary small {
  color: #667085;
  font-size: 9px;
  font-weight: 750;
  text-transform: uppercase;
}
.SalesEnhancements_emailAdminSummary strong {
  color: #172033;
  font-size: 12px;
}
.SalesEnhancements_emailAdminAccounts,
.SalesEnhancements_emailSyncRuns {
  display: grid;
}
.SalesEnhancements_emailAdminAccounts > div {
  display: grid;
  grid-template-columns: auto minmax(150px, 1fr) minmax(150px, 1fr) 100px auto;
  align-items: center;
  gap: 10px;
  min-height: 58px;
  padding: 9px 20px;
  border-top: 1px solid #f0f2f5;
}
.SalesEnhancements_emailAdminAccounts > div > span:not(.SalesEnhancements_emailProviderMark) {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.SalesEnhancements_emailAdminAccounts strong {
  color: #344054;
  font-size: 11px;
  text-transform: capitalize;
}
.SalesEnhancements_emailAdminAccounts small {
  overflow: hidden;
  color: #667085;
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesEnhancements_emailAdminAccounts .SalesEnhancements_danger {
  min-height: 31px;
  height: 31px;
  padding: 0 9px;
  font-size: 10px;
}
.SalesEnhancements_emailSyncRuns > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 12px;
  min-height: 42px;
  padding: 7px 20px;
  border-top: 1px solid #f0f2f5;
}
.SalesEnhancements_emailSyncRuns > div > span:first-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.SalesEnhancements_emailSyncRuns strong {
  font-size: 11px;
}
.SalesEnhancements_emailSyncRuns small {
  color: #667085;
  font-size: 9px;
}
.SalesEnhancements_emailSyncRuns > div > small {
  text-align: right;
}
@media (max-width: 760px) {
  .SalesEnhancements_emailAccountCard {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .SalesEnhancements_emailAccountActions {
    grid-column: 1/-1;
  }
  .SalesEnhancements_emailReviewActions {
    grid-template-columns: 1fr 1fr;
  }
  .SalesEnhancements_emailReviewActions select {
    grid-column: 1/-1;
  }
  .SalesEnhancements_emailAdminSummary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .SalesEnhancements_emailAdminSummary > span:nth-child(2) {
    border-right: 0;
  }
  .SalesEnhancements_emailAdminAccounts > div {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .SalesEnhancements_emailAdminAccounts > div > span:nth-child(n+3),
  .SalesEnhancements_emailAdminAccounts > div > button {
    grid-column: 2;
  }
  .SalesEnhancements_emailSyncRuns > div {
    grid-template-columns: 1fr auto;
  }
  .SalesEnhancements_emailSyncRuns > div > small {
    grid-column: 1/-1;
    text-align: left;
  }
  .SalesEnhancements_emailThreadSummary {
    padding: 9px;
  }
  .SalesEnhancements_emailMessage pre {
    max-height: 220px;
  }
}
.SalesEnhancements_emailSetupBanner {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 18px;
  border-bottom: 1px solid #eaecf0;
}
.SalesEnhancements_emailSetupBanner > span {
  display: grid;
  place-items: center;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  border-radius: 10px;
}
.SalesEnhancements_emailSetupBanner > div {
  display: grid;
  flex: 1;
  gap: 3px;
  min-width: 0;
}
.SalesEnhancements_emailSetupBanner strong {
  font-size: 13px;
}
.SalesEnhancements_emailSetupBanner p {
  margin: 0;
  font-size: 10px;
  line-height: 1.45;
}
.SalesEnhancements_emailSetupBanner > a {
  display: inline-flex;
  flex: 0 0 auto;
  text-decoration: none;
}
.SalesEnhancements_emailSetupReady {
  background: #f0fdf4;
  color: #067647;
}
.SalesEnhancements_emailSetupReady > span {
  background: #dcfce7;
}
.SalesEnhancements_emailSetupPending {
  background: #fffaeb;
  color: #b54708;
}
.SalesEnhancements_emailSetupPending > span {
  background: #fef0c7;
}
.SalesEnhancements_emailSetupGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 16px 20px;
}
.SalesEnhancements_emailSetupGrid article {
  display: grid;
  gap: 8px;
  padding: 13px;
  border: 1px solid #e4e7ec;
  border-radius: 10px;
  background: #fff;
}
.SalesEnhancements_emailSetupTitle {
  display: flex;
  align-items: center;
  gap: 8px;
}
.SalesEnhancements_emailSetupTitle strong {
  font-size: 12px;
  color: #172033;
}
.SalesEnhancements_emailSetupGrid article > p {
  margin: 0;
  color: #667085;
  font-size: 10px;
  line-height: 1.45;
}
.SalesEnhancements_emailSetupCheck,
.SalesEnhancements_emailSetupMissing {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 3px 6px;
  border-radius: 999px;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .025em;
  text-transform: uppercase;
  white-space: nowrap;
}
.SalesEnhancements_emailSetupCheck {
  background: #ecfdf3;
  color: #067647;
}
.SalesEnhancements_emailSetupMissing {
  background: #fff4e5;
  color: #b54708;
}
.SalesEnhancements_emailCallback {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 8px;
  padding: 8px;
  border-radius: 8px;
  background: #f8fafc;
}
.SalesEnhancements_emailCallback small {
  grid-column: 1/-1;
  color: #667085;
  font-size: 8px;
  font-weight: 750;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.SalesEnhancements_emailCallback code {
  overflow: hidden;
  color: #344054;
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesEnhancements_emailCallback button {
  border: 0;
  background: transparent;
  color: #175cd3;
  font-size: 9px;
  font-weight: 800;
  cursor: pointer;
}
.SalesEnhancements_emailCallback button:disabled {
  cursor: not-allowed;
  opacity: .45;
}
.SalesEnhancements_emailCallback button:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
}
.SalesEnhancements_emailEnvironmentHelp {
  margin: 0 20px 14px;
  padding: 10px 12px;
  border: 1px solid #d6e4ff;
  border-radius: 9px;
  background: #f5f9ff;
}
.SalesEnhancements_emailEnvironmentHelp strong {
  font-size: 11px;
  color: #175cd3;
}
.SalesEnhancements_emailEnvironmentHelp p {
  margin: 4px 0 0;
  color: #475467;
  font-size: 10px;
  line-height: 1.6;
}
.SalesEnhancements_emailEnvironmentHelp code {
  padding: 1px 4px;
  border-radius: 4px;
  background: #eaf2ff;
  color: #175cd3;
  font-size: 9px;
}
.SalesEnhancements_emailReadinessList {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid #eaecf0;
  border-bottom: 1px solid #eaecf0;
}
.SalesEnhancements_emailReadinessList > div {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 50px;
  padding: 9px 16px;
  border-right: 1px solid #eaecf0;
  border-bottom: 1px solid #eaecf0;
}
.SalesEnhancements_emailReadinessList > div:nth-child(2n) {
  border-right: 0;
}
.SalesEnhancements_emailReadinessList > div:last-child {
  grid-column: 1/-1;
  border-right: 0;
  border-bottom: 0;
}
.SalesEnhancements_emailReadinessList > div > span:last-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.SalesEnhancements_emailReadinessList strong {
  font-size: 10px;
  color: #344054;
}
.SalesEnhancements_emailReadinessList small {
  overflow: hidden;
  color: #667085;
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (max-width: 760px) {
  .SalesEnhancements_emailSetupBanner {
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .SalesEnhancements_emailSetupBanner > div {
    flex-basis: calc(100% - 50px);
  }
  .SalesEnhancements_emailSetupBanner > a {
    width: 100%;
  }
  .SalesEnhancements_emailSetupGrid,
  .SalesEnhancements_emailReadinessList {
    grid-template-columns: 1fr;
  }
  .SalesEnhancements_emailSetupGrid {
    padding: 14px;
  }
  .SalesEnhancements_emailEnvironmentHelp {
    margin: 0 14px 14px;
  }
  .SalesEnhancements_emailReadinessList > div,
  .SalesEnhancements_emailReadinessList > div:nth-child(2n) {
    border-right: 0;
  }
  .SalesEnhancements_emailReadinessList > div:last-child {
    grid-column: auto;
  }
  .SalesEnhancements_emailReadinessList small {
    white-space: normal;
  }
}
.SalesEnhancements_dealTitleWithSync {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  flex-wrap: wrap;
}
.SalesEnhancements_mondayMissingPill {
  display: inline-flex;
  align-items: center;
  width: max-content;
  max-width: 100%;
  min-height: 20px;
  padding: 2px 7px;
  border: 1px solid #fedf89;
  border-radius: 999px;
  background: #fffaeb;
  color: #b54708;
  font-size: 9px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.25;
  white-space: nowrap;
}
.SalesEnhancements_mondaySyncStatus {
  min-height: 22px;
  padding: 4px 2px;
  color: #475467;
  font-size: 11px;
  line-height: 1.35;
}
.SalesEnhancements_mondaySyncStatus:empty {
  display: none;
}
.SalesEnhancements_mondaySyncStatusError {
  color: #b42318;
}
@media (max-width: 760px) {
  .SalesEnhancements_dealsToolbar .SalesEnhancements_primary,
  .SalesEnhancements_dealsToolbar .SalesEnhancements_secondary {
    flex: 1 1 auto;
  }
  .SalesEnhancements_mondaySyncStatus {
    padding: 7px 2px;
  }
  .SalesEnhancements_mondayMissingPill {
    white-space: normal;
  }
}
.SalesEnhancements_followUpsCard {
  grid-column: 1/-1;
  min-width: 0;
}
.SalesEnhancements_followUpsToolbar {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}
.SalesEnhancements_followUpsToolbar label {
  display: grid;
  gap: 3px;
  color: #667085;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
}
.SalesEnhancements_followUpsToolbar select {
  height: 32px;
  min-width: 150px;
  border: 1px solid #d6dce5;
  border-radius: 6px;
  background: #fff;
  padding: 0 8px;
  color: #344054;
  font-size: 12px;
}
.SalesEnhancements_followUpsGroups {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  max-height: 520px;
  overflow: auto;
}
.SalesEnhancements_followUpsGroup {
  min-width: 0;
  border: 1px solid #e5eaf1;
  border-radius: 8px;
  background: #f8fafc;
  overflow: hidden;
}
.SalesEnhancements_followUpsGroup > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 7px 9px;
  border-bottom: 1px solid #e5eaf1;
  color: #475467;
  font-size: 11px;
}
.SalesEnhancements_followUpsGroup > header span {
  min-width: 22px;
  padding: 2px 6px;
  border-radius: 999px;
  background: #e8eef7;
  text-align: center;
}
.SalesEnhancements_followUpRow {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px;
  border-bottom: 1px solid #edf1f5;
  background: #fff;
}
.SalesEnhancements_followUpRow:last-child {
  border-bottom: 0;
}
.SalesEnhancements_followUpMain {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex: 1;
  min-width: 0;
  border: 0;
  background: transparent;
  padding: 4px;
  text-align: left;
  cursor: pointer;
}
.SalesEnhancements_followUpMain > span {
  min-width: 0;
}
.SalesEnhancements_followUpMain strong,
.SalesEnhancements_followUpMain small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesEnhancements_followUpMain strong {
  color: #172033;
  font-size: 12px;
}
.SalesEnhancements_followUpMain small {
  margin-top: 2px;
  color: #667085;
  font-size: 10px;
}
.SalesEnhancements_followUpMain time {
  flex: none;
  color: #475467;
  font-size: 11px;
}
.SalesEnhancements_followUpActions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 3px;
  flex-wrap: wrap;
}
.SalesEnhancements_followUpActions button {
  min-height: 27px;
  padding: 0 7px;
  font-size: 10px;
}
.SalesEnhancements_followUpsError {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px;
  border: 1px solid #fca5a5;
  border-radius: 8px;
  background: #fef2f2;
  color: #991b1b;
  font-size: 12px;
}
.SalesEnhancements_followUpsState {
  padding: 20px;
  color: #667085;
  text-align: center;
}
.SalesEnhancements_lifecycleConfirm {
  color: #b42318;
  font-size: 12px;
  font-weight: 700;
}
@media (max-width: 900px) {
  .SalesEnhancements_followUpsGroups {
    grid-template-columns: 1fr;
  }
  .SalesEnhancements_followUpRow {
    align-items: flex-start;
    flex-direction: column;
  }
  .SalesEnhancements_followUpActions {
    width: 100%;
  }
}

/* src/styles/SalesSystem.module.css */
.SalesSystem_tabs {
  display: flex;
  gap: 3px;
  overflow: auto;
  padding: 4px;
  border: 1px solid var(--opebix-border);
  border-radius: var(--opebix-radius-panel);
  background: #fff;
  box-shadow: var(--opebix-shadow-xs);
  scrollbar-width: none;
}
.SalesSystem_tabs::-webkit-scrollbar {
  display: none;
}
.SalesSystem_tab {
  appearance: none;
  flex: 0 0 auto;
  min-height: 34px;
  padding: 0 12px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--opebix-text-soft);
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  white-space: nowrap;
  cursor: pointer;
}
.SalesSystem_tab:hover {
  background: var(--opebix-surface-soft);
  color: var(--opebix-text);
}
.SalesSystem_tabActive,
.SalesSystem_tabActive:hover {
  background: var(--opebix-navy);
  color: #fff;
  box-shadow: var(--opebix-shadow-xs);
}
.SalesSystem_primary,
.SalesSystem_secondary,
.SalesSystem_danger {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid transparent;
  border-radius: var(--opebix-radius-control);
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  white-space: nowrap;
  cursor: pointer;
}
.SalesSystem_primary {
  border-color: var(--opebix-navy);
  background: var(--opebix-navy);
  color: #fff;
}
.SalesSystem_primary:hover {
  background: var(--opebix-navy-soft);
}
.SalesSystem_secondary {
  border-color: var(--opebix-border-strong);
  background: #fff;
  color: var(--opebix-text-soft);
}
.SalesSystem_secondary:hover {
  background: var(--opebix-surface-soft);
}
.SalesSystem_danger {
  border-color: var(--opebix-danger-border);
  background: var(--opebix-danger-bg);
  color: var(--opebix-danger);
}
.SalesSystem_metric {
  display: grid;
  gap: 5px;
  padding: 16px 18px;
  border: 1px solid var(--opebix-border);
  border-radius: var(--opebix-radius-panel);
  background: #fff;
  box-shadow: var(--opebix-shadow-xs);
}
.SalesSystem_metricLabel {
  color: var(--opebix-text-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .075em;
  text-transform: uppercase;
}
.SalesSystem_metricValue {
  margin-top: 3px;
  color: var(--opebix-text);
  font-size: 25px;
  font-weight: 850;
  letter-spacing: -.025em;
}
.SalesSystem_metricNote {
  color: var(--opebix-text-muted);
  font-size: 11px;
}
.SalesSystem_panel {
  padding: 18px 20px;
  border: 1px solid var(--opebix-border);
  border-radius: var(--opebix-radius-panel);
  background: #fff;
  box-shadow: var(--opebix-shadow-xs);
}
.SalesSystem_panelTitle {
  color: var(--opebix-text);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: -.012em;
}
.SalesSystem_panelSub {
  margin-top: 4px;
  color: var(--opebix-text-muted);
  font-size: 12px;
}
.SalesSystem_table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
}
.SalesSystem_table th {
  padding: 9px 10px;
  border-bottom: 1px solid var(--opebix-border);
  background: var(--opebix-surface-soft);
  color: var(--opebix-text-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .075em;
  text-align: left;
  text-transform: uppercase;
}
.SalesSystem_table td {
  padding: 11px 10px;
  border-bottom: 1px solid var(--opebix-divider);
  color: var(--opebix-text-soft);
}
.SalesSystem_table tr:last-child td {
  border-bottom: 0;
}
.SalesSystem_field {
  display: grid;
  gap: 6px;
}
.SalesSystem_field label {
  color: var(--opebix-text-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.SalesSystem_field input,
.SalesSystem_field select,
.SalesSystem_field textarea {
  width: 100%;
  min-height: 40px;
  box-sizing: border-box;
  border: 1px solid var(--opebix-border-strong);
  border-radius: var(--opebix-radius-control);
  padding: 8px 11px;
  background: #fff;
  color: var(--opebix-text);
  font: inherit;
  font-size: 13px;
}
.SalesSystem_field textarea {
  min-height: 90px;
  resize: vertical;
}
.SalesSystem_field input:focus,
.SalesSystem_field select:focus,
.SalesSystem_field textarea:focus {
  border-color: var(--opebix-focus);
  outline: 0;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .12);
}
@media (max-width: 767px) {
  .SalesSystem_primary,
  .SalesSystem_secondary,
  .SalesSystem_danger {
    min-height: 44px;
  }
  .SalesSystem_panel {
    padding: 16px;
  }
  .SalesSystem_metric {
    padding: 14px 16px;
  }
}

/* src/styles/FieldPortal.module.css */
.FieldPortal_portal {
  --field-navy:var(--opebix-navy);
  --field-navy-soft:var(--opebix-navy-soft);
  --field-teal:var(--opebix-teal-dark);
  --field-teal-dark:#0b7f78;
  --field-blue:var(--opebix-focus);
  --field-bg:var(--opebix-canvas);
  --field-surface:var(--opebix-surface);
  --field-text:var(--opebix-text);
  --field-text-soft:var(--opebix-text-soft);
  --field-muted:var(--opebix-text-muted);
  --field-border:var(--opebix-border);
  min-height: 100vh;
  background: var(--field-bg);
  color: var(--field-text);
}
.FieldPortal_portal * {
  box-sizing: border-box;
}
.FieldPortal_sidebar {
  width: 240px;
}
.FieldPortal_main {
  min-width: 0;
  background: var(--field-bg);
}
.FieldPortal_topBar {
  height: 52px;
  padding: 0 24px;
  border-bottom: 1px solid var(--field-border);
  background: rgba(255, 255, 255, .98);
}
.FieldPortal_brandLine {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  margin-right: auto;
}
.FieldPortal_brandLine img {
  display: none;
  width: 30px;
  height: 30px;
  object-fit: contain;
}
.FieldPortal_companyName {
  overflow: hidden;
  color: var(--field-muted);
  font-size: 12px;
  font-weight: 650;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.FieldPortal_headerActions {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
}
.FieldPortal_menuTrigger {
  display: none;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 4px;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
}
.FieldPortal_menuTrigger span {
  display: block;
  width: 17px;
  height: 2px;
  border-radius: 999px;
  background: var(--field-text);
}
.FieldPortal_menuBackdrop {
  display: none;
}
.FieldPortal_alertAnchor {
  position: relative;
  flex: 0 0 40px;
}
.FieldPortal_alertButton {
  appearance: none;
  position: relative;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  color: var(--field-text-soft);
  cursor: pointer;
  transition:
    background .15s,
    border-color .15s,
    color .15s,
    box-shadow .15s;
}
.FieldPortal_alertButton:hover {
  border-color: #98a2b3;
  background: #f8fafc;
  color: var(--field-text);
}
.FieldPortal_alertButton:focus-visible {
  outline: 2px solid var(--field-blue);
  outline-offset: 2px;
}
.FieldPortal_alertButton svg,
.FieldPortal_alertItemIcon svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.FieldPortal_alertBadge {
  position: absolute;
  top: -6px;
  right: -6px;
  display: grid;
  place-items: center;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  border: 2px solid #fff;
  border-radius: 999px;
  background: #d92d20;
  color: #fff;
  font-size: 9px;
  font-weight: 800;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
.FieldPortal_alertDropdown {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 1400;
  width: 360px;
  max-height: min(620px, calc(100dvh - 80px));
  overflow: auto;
  border: 1px solid var(--field-border);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 20px 60px rgba(15, 23, 42, .2);
}
.FieldPortal_alertHeader {
  position: sticky;
  top: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 16px;
  border-bottom: 1px solid var(--field-border);
  background: #fff;
}
.FieldPortal_alertHeader strong {
  font-size: 14px;
  font-weight: 800;
}
.FieldPortal_alertHeader button {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: var(--field-muted);
  font-size: 22px;
  cursor: pointer;
}
.FieldPortal_alertHeader button:hover {
  background: #f2f4f7;
  color: var(--field-text);
}
.FieldPortal_alertEmpty {
  display: grid;
  gap: 4px;
  padding: 22px 16px;
  color: var(--field-muted);
  font-size: 11px;
  line-height: 1.45;
}
.FieldPortal_alertEmpty strong {
  color: var(--field-text-soft);
  font-size: 13px;
  font-weight: 750;
}
.FieldPortal_alertItem {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 12px 14px;
  border-bottom: 1px solid #f0f2f5;
  background: #fff;
}
.FieldPortal_alertSummary {
  grid-template-columns: 32px minmax(0, 1fr);
  background: #fffaeb;
}
.FieldPortal_alertItemIcon {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: #fffaeb;
  color: #b54708;
}
.FieldPortal_alertSummary .FieldPortal_alertItemIcon {
  background: #fef0c7;
}
.FieldPortal_alertItemCopy {
  min-width: 0;
}
.FieldPortal_alertItemCopy strong {
  display: block;
  color: var(--field-text-soft);
  font-size: 12px;
  font-weight: 750;
}
.FieldPortal_alertItemCopy p {
  margin: 3px 0 0;
  color: var(--field-muted);
  font-size: 10px;
  line-height: 1.45;
}
.FieldPortal_alertItemAction {
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid #d0d5dd;
  border-radius: 7px;
  background: #fff;
  color: var(--field-blue);
  font: inherit;
  font-size: 10px;
  font-weight: 750;
  cursor: pointer;
}
.FieldPortal_alertItemAction:hover {
  border-color: #98a2b3;
  background: #f8fafc;
}
.FieldPortal_alertItemAction:focus-visible,
.FieldPortal_alertHeader button:focus-visible {
  outline: 2px solid var(--field-blue);
  outline-offset: 2px;
}
.FieldPortal_alertFootnote {
  padding: 10px 16px;
  color: var(--field-muted);
  font-size: 10px;
  line-height: 1.45;
}
.FieldPortal_iconButton,
.FieldPortal_secondaryButton,
.FieldPortal_primaryButton,
.FieldPortal_dangerButton,
.FieldPortal_textButton {
  appearance: none;
  border: 1px solid transparent;
  border-radius: 8px;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
  transition:
    background .15s,
    border-color .15s,
    color .15s,
    box-shadow .15s,
    transform .15s;
}
.FieldPortal_iconButton {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  padding: 0;
  border-color: #d0d5dd;
  background: #fff;
  color: var(--field-text-soft);
}
.FieldPortal_iconButton svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.FieldPortal_iconButton:hover,
.FieldPortal_secondaryButton:hover {
  border-color: #98a2b3;
  background: #f8fafc;
}
.FieldPortal_primaryButton,
.FieldPortal_secondaryButton,
.FieldPortal_dangerButton,
.FieldPortal_textButton {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 40px;
  padding: 0 14px;
}
.FieldPortal_primaryButton {
  border-color: var(--field-teal);
  background: var(--field-teal);
  color: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .08);
}
.FieldPortal_primaryButton:hover {
  border-color: var(--field-teal-dark);
  background: var(--field-teal-dark);
}
.FieldPortal_secondaryButton {
  border-color: #d0d5dd;
  background: #fff;
  color: var(--field-text-soft);
}
.FieldPortal_dangerButton {
  border-color: #fda29b;
  background: #fff;
  color: #b42318;
}
.FieldPortal_textButton {
  min-height: 36px;
  padding: 0 8px;
  background: transparent;
  color: var(--field-blue);
}
.FieldPortal_iconButton:active,
.FieldPortal_primaryButton:active,
.FieldPortal_secondaryButton:active,
.FieldPortal_dangerButton:active {
  transform: translateY(1px);
}
.FieldPortal_iconButton:focus-visible,
.FieldPortal_primaryButton:focus-visible,
.FieldPortal_secondaryButton:focus-visible,
.FieldPortal_dangerButton:focus-visible,
.FieldPortal_textButton:focus-visible,
.FieldPortal_allocationRow:focus-visible,
.FieldPortal_actionRow:focus-visible {
  outline: 2px solid var(--field-blue);
  outline-offset: 2px;
}
.FieldPortal_iconButton:disabled,
.FieldPortal_primaryButton:disabled,
.FieldPortal_secondaryButton:disabled,
.FieldPortal_dangerButton:disabled {
  cursor: not-allowed;
  opacity: .5;
  transform: none;
}
.FieldPortal_content {
  min-height: 0;
  overflow-y: auto;
}
.FieldPortal_scopeBar {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 16px 24px 0;
}
.FieldPortal_scopeTabs {
  display: flex;
  gap: 2px;
  padding: 3px;
  border: 1px solid var(--field-border);
  border-radius: 9px;
  background: #f2f4f7;
}
.FieldPortal_scopeTabs button {
  min-height: 32px;
  padding: 0 10px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--field-muted);
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}
.FieldPortal_scopeTabs button:hover {
  color: var(--field-text);
}
.FieldPortal_scopeTabs button.FieldPortal_activeScope {
  background: #fff;
  color: var(--field-blue);
  box-shadow: 0 1px 3px rgba(15, 23, 42, .1);
}
.FieldPortal_scopePeriod {
  flex: 1;
  overflow: hidden;
  color: var(--field-muted);
  font-size: 11px;
  font-weight: 650;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.FieldPortal_pageInner {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 20px 24px 28px;
}
.FieldPortal_scopeBar + .FieldPortal_pageInner {
  padding-top: 12px;
}
.FieldPortal_stack {
  display: grid;
  gap: 16px;
}
.FieldPortal_panel {
  overflow: hidden;
  border: 1px solid var(--field-border);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .03);
}
.FieldPortal_panelBody {
  padding: 18px 20px;
}
.FieldPortal_panelHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 17px 20px;
  border-bottom: 1px solid var(--field-border);
}
.FieldPortal_panelHeader h2,
.FieldPortal_sectionHeading h2 {
  margin: 0;
  color: var(--field-text);
  font-size: 17px;
  font-weight: 750;
  letter-spacing: -.01em;
}
.FieldPortal_panelHeader p,
.FieldPortal_sectionHeading p {
  margin: 4px 0 0;
  color: var(--field-muted);
  font-size: 12px;
  line-height: 1.5;
}
.FieldPortal_sectionHeading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.FieldPortal_eyebrow {
  display: block;
  margin-bottom: 5px;
  color: var(--field-muted);
  font-size: 10px;
  font-weight: 750;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.FieldPortal_countBadge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  height: 24px;
  padding: 0 8px;
  border-radius: 7px;
  background: #f2f4f7;
  color: var(--field-text-soft);
  font-size: 11px;
  font-weight: 750;
  font-variant-numeric: tabular-nums;
}
.FieldPortal_dashboardGrid {
  display: grid;
  grid-template-columns: minmax(0, 1.75fr) minmax(300px, .75fr);
  gap: 16px;
  align-items: start;
}
.FieldPortal_todayPanel {
  border-top: 3px solid var(--field-teal);
}
.FieldPortal_todayDate {
  color: var(--field-teal-dark);
  font-size: 12px;
  font-weight: 750;
}
.FieldPortal_todayJobs {
  display: grid;
}
.FieldPortal_todayJob {
  padding: 18px 20px;
  border-bottom: 1px solid var(--field-border);
}
.FieldPortal_todayJob:last-child {
  border-bottom: 0;
}
.FieldPortal_todayJobTop {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.FieldPortal_timeBlock {
  display: grid;
  gap: 2px;
  padding-right: 16px;
  border-right: 1px solid var(--field-border);
  font-variant-numeric: tabular-nums;
}
.FieldPortal_timeBlock strong {
  color: var(--field-text);
  font-size: 20px;
  font-weight: 800;
  letter-spacing: -.02em;
}
.FieldPortal_timeBlock span {
  color: var(--field-muted);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
}
.FieldPortal_jobIdentity {
  min-width: 0;
}
.FieldPortal_jobIdentity strong {
  display: block;
  overflow: hidden;
  color: var(--field-text);
  font-size: 16px;
  font-weight: 750;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.FieldPortal_jobIdentity span {
  display: block;
  margin-top: 3px;
  color: var(--field-muted);
  font-size: 12px;
  line-height: 1.45;
}
.FieldPortal_jobMeta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  margin-top: 12px;
  color: var(--field-text-soft);
  font-size: 12px;
}
.FieldPortal_jobMeta span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.FieldPortal_jobActions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
  padding-left: 104px;
}
.FieldPortal_status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 24px;
  padding: 3px 8px;
  border-radius: 6px;
  font-size: 10px;
  font-weight: 750;
  white-space: nowrap;
}
.FieldPortal_status:before {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  content: "";
}
.FieldPortal_statusSuccess {
  background: #ecfdf3;
  color: #067647;
}
.FieldPortal_statusWarning {
  background: #fffaeb;
  color: #b54708;
}
.FieldPortal_statusDanger {
  background: #fef3f2;
  color: #b42318;
}
.FieldPortal_statusInfo {
  background: #eff6ff;
  color: #175cd3;
}
.FieldPortal_statusNeutral {
  background: #f2f4f7;
  color: #667085;
}
.FieldPortal_srOnly {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.FieldPortal_uploadProgressGroup {
  display: grid;
  gap: 9px;
}
.FieldPortal_uploadPendingGrid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.FieldPortal_uploadPendingTile {
  position: relative;
  width: 76px;
  height: 76px;
  overflow: hidden;
  border: 1px solid #cbd5e1;
  border-radius: 12px;
  background: #e2e8f0;
}
.FieldPortal_uploadPendingTile > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.FieldPortal_uploadPreviewFallback {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  color: #64748b;
  font-size: 10px;
  font-weight: 750;
}
.FieldPortal_uploadPendingShade {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, .38);
}
.FieldPortal_uploadStatusRing {
  position: absolute;
  top: 50%;
  left: 50%;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  transform: translate(-50%, -50%);
  border: 1px solid rgba(255, 255, 255, .7);
  border-radius: 50%;
  background: rgba(15, 23, 42, .82);
  color: #fff;
  font-size: 9px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  box-shadow: 0 2px 8px rgba(15, 23, 42, .28);
}
.FieldPortal_uploadStatusRing svg {
  position: absolute;
  inset: 2px;
  width: 32px;
  height: 32px;
  transform: rotate(-90deg);
  fill: none;
  stroke-width: 3;
}
.FieldPortal_uploadRingTrack {
  stroke: rgba(255, 255, 255, .28);
}
.FieldPortal_uploadRingValue {
  stroke: #5eead4;
  stroke-linecap: round;
  transition: stroke-dasharray .18s ease;
}
.FieldPortal_uploadStatusPreparing {
  background: rgba(71, 85, 105, .88);
}
.FieldPortal_uploadStatusComplete {
  border-color: #a7f3d0;
  background: #067647;
  font-size: 19px;
}
.FieldPortal_uploadStatusFailed {
  border-color: #fecaca;
  background: #b42318;
  font-size: 19px;
}
.FieldPortal_uploadSpinner {
  width: 17px;
  height: 17px;
  border: 2px solid rgba(255, 255, 255, .38);
  border-top-color: #fff;
  border-radius: 50%;
  animation: FieldPortal_fieldUploadSpin .8s linear infinite;
}
.FieldPortal_uploadProgressCard {
  display: grid;
  gap: 8px;
  min-height: 60px;
  padding: 10px 12px;
  border: 1px solid #99f6e4;
  border-radius: 10px;
  background: #f0fdfa;
  color: #115e59;
}
.FieldPortal_uploadProgressFailed {
  border-color: #fecaca;
  background: #fef2f2;
  color: #991b1b;
}
.FieldPortal_uploadProgressCopy {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 10px;
  align-items: center;
}
.FieldPortal_uploadProgressCopy strong {
  overflow: hidden;
  font-size: 12px;
  font-weight: 780;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.FieldPortal_uploadProgressCopy span {
  grid-column: 1;
  color: #475569;
  font-size: 10px;
  line-height: 1.35;
}
.FieldPortal_uploadProgressCopy b {
  grid-column: 2;
  grid-row: 1/3;
  font-size: 12px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}
.FieldPortal_uploadProgressTrack {
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: #ccfbf1;
}
.FieldPortal_uploadProgressFailed .FieldPortal_uploadProgressTrack {
  background: #fee2e2;
}
.FieldPortal_uploadProgressValue {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #0f766e;
  transition: width .18s ease;
}
.FieldPortal_uploadProgressFailed .FieldPortal_uploadProgressValue {
  background: #b42318;
}
.FieldPortal_uploadProgressIndeterminate {
  width: 34%;
  animation: FieldPortal_fieldUploadIndeterminate 1.15s ease-in-out infinite;
}
@keyframes FieldPortal_fieldUploadSpin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes FieldPortal_fieldUploadIndeterminate {
  0% {
    transform: translateX(-110%);
  }
  50% {
    transform: translateX(195%);
  }
  100% {
    transform: translateX(-110%);
  }
}
@media (prefers-reduced-motion: reduce) {
  .FieldPortal_uploadSpinner {
    animation: none;
    border-color: #fff;
  }
  .FieldPortal_uploadProgressIndeterminate {
    width: 45%;
    animation: none;
    transform: none;
  }
  .FieldPortal_uploadRingValue,
  .FieldPortal_uploadProgressValue {
    transition: none;
  }
}
.FieldPortal_emptyState {
  display: grid;
  place-items: start;
  gap: 5px;
  padding: 28px 20px;
  color: var(--field-muted);
  font-size: 12px;
}
.FieldPortal_emptyState strong {
  color: var(--field-text-soft);
  font-size: 14px;
  font-weight: 750;
}
.FieldPortal_actionList {
  display: grid;
}
.FieldPortal_actionRow {
  appearance: none;
  width: 100%;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  gap: 11px;
  align-items: center;
  padding: 12px 16px;
  border: 0;
  border-bottom: 1px solid #f0f2f5;
  background: #fff;
  color: inherit;
  text-align: left;
  cursor: pointer;
}
.FieldPortal_actionRow:last-child {
  border-bottom: 0;
}
.FieldPortal_actionRow:hover {
  background: #f8fafc;
}
.FieldPortal_actionIcon {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 8px;
  background: #fffaeb;
  color: #b54708;
}
.FieldPortal_actionIcon .sidebar-icon {
  width: 15px;
  height: 15px;
}
.FieldPortal_actionIcon .sidebar-icon svg {
  width: 15px;
  height: 15px;
}
.FieldPortal_actionCopy {
  min-width: 0;
}
.FieldPortal_actionCopy strong {
  display: block;
  color: var(--field-text-soft);
  font-size: 12px;
  font-weight: 750;
}
.FieldPortal_actionCopy span {
  display: block;
  overflow: hidden;
  margin-top: 2px;
  color: var(--field-muted);
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.FieldPortal_actionLabel {
  color: var(--field-blue);
  font-size: 11px;
  font-weight: 750;
}
.FieldPortal_metricStrip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--field-border);
  border-radius: 12px;
  background: #fff;
}
.FieldPortal_metric {
  appearance: none;
  display: grid;
  gap: 4px;
  padding: 15px 18px;
  border: 0;
  border-right: 1px solid var(--field-border);
  background: #fff;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.FieldPortal_metric:hover {
  background: #f8fafc;
}
.FieldPortal_metric:last-child {
  border-right: 0;
}
.FieldPortal_metric span {
  color: var(--field-muted);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.FieldPortal_metric strong {
  color: var(--field-text);
  font-size: 22px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}
.FieldPortal_metric small {
  color: var(--field-muted);
  font-size: 10px;
}
.FieldPortal_allocationLayout {
  display: grid;
  grid-template-columns: 380px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}
.FieldPortal_allocationList {
  display: grid;
}
.FieldPortal_groupLabel {
  padding: 13px 16px 7px;
  color: var(--field-muted);
  font-size: 10px;
  font-weight: 750;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.FieldPortal_allocationRow {
  appearance: none;
  width: 100%;
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr) 20px;
  gap: 12px;
  align-items: center;
  padding: 13px 16px;
  border: 0;
  border-top: 1px solid #f0f2f5;
  background: #fff;
  color: inherit;
  text-align: left;
  cursor: pointer;
}
.FieldPortal_allocationRow:hover {
  background: #f8fafc;
}
.FieldPortal_allocationRowActive {
  background: #f0fdfa;
  box-shadow: inset 3px 0 0 var(--field-teal);
}
.FieldPortal_allocationWhen {
  display: grid;
  gap: 2px;
  color: var(--field-muted);
  font-size: 10px;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
}
.FieldPortal_allocationWhen strong {
  color: var(--field-text);
  font-size: 13px;
  font-weight: 750;
}
.FieldPortal_allocationWhen span {
  white-space: nowrap;
}
.FieldPortal_allocationCopy {
  min-width: 0;
}
.FieldPortal_allocationCopy strong {
  display: block;
  overflow: hidden;
  color: var(--field-text-soft);
  font-size: 13px;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.FieldPortal_allocationCopy span {
  display: block;
  overflow: hidden;
  margin-top: 3px;
  color: var(--field-muted);
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.FieldPortal_allocationCopy small {
  display: block;
  overflow: hidden;
  margin-top: 4px;
  color: #98a2b3;
  font-size: 9px;
  font-weight: 650;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.FieldPortal_chevron {
  color: #98a2b3;
  font-size: 20px;
  font-weight: 400;
}
.FieldPortal_brief {
  display: grid;
  gap: 18px;
  padding: 20px;
}
.FieldPortal_briefHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 17px;
  border-bottom: 1px solid var(--field-border);
}
.FieldPortal_briefHeader h2 {
  margin: 0;
  color: var(--field-text);
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -.025em;
}
.FieldPortal_briefHeader p {
  margin: 5px 0 0;
  color: var(--field-muted);
  font-size: 13px;
  line-height: 1.5;
}
.FieldPortal_workDay {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 13px 14px;
  border: 1px solid var(--field-border);
  border-radius: 10px;
  background: #f8fafc;
}
.FieldPortal_workDay select {
  min-width: 220px;
  height: 38px;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  padding: 0 10px;
  color: var(--field-text-soft);
  font: inherit;
  font-size: 12px;
}
.FieldPortal_factGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid var(--field-border);
  border-radius: 10px;
  overflow: hidden;
}
.FieldPortal_fact {
  min-width: 0;
  padding: 12px 14px;
  border-right: 1px solid var(--field-border);
  border-bottom: 1px solid var(--field-border);
}
.FieldPortal_fact:nth-child(2n) {
  border-right: 0;
}
.FieldPortal_fact:nth-last-child(-n+2) {
  border-bottom: 0;
}
.FieldPortal_fact label {
  display: block;
  margin-bottom: 4px;
  color: var(--field-muted);
  font-size: 9px;
  font-weight: 750;
  letter-spacing: .045em;
  text-transform: uppercase;
}
.FieldPortal_fact strong {
  display: block;
  color: var(--field-text-soft);
  font-size: 13px;
  font-weight: 650;
  line-height: 1.45;
  white-space: pre-wrap;
}
.FieldPortal_noteBlock {
  padding: 14px 16px;
  border-left: 3px solid #98a2b3;
  background: #f8fafc;
  color: var(--field-text-soft);
  font-size: 12px;
  line-height: 1.6;
  white-space: pre-wrap;
}
.FieldPortal_taskActions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 1px solid var(--field-border);
  border-radius: 10px;
  overflow: hidden;
}
.FieldPortal_taskAction {
  display: grid;
  gap: 7px;
  align-content: start;
  padding: 15px;
  border: 0;
  border-right: 1px solid var(--field-border);
  background: #fff;
  color: inherit;
  text-align: left;
}
.FieldPortal_taskAction:last-child {
  border-right: 0;
}
.FieldPortal_taskAction strong {
  color: var(--field-text);
  font-size: 13px;
  font-weight: 750;
}
.FieldPortal_taskAction span {
  color: var(--field-muted);
  font-size: 11px;
  line-height: 1.45;
}
.FieldPortal_taskAction button {
  margin-top: auto;
}
.FieldPortal_recordList {
  display: grid;
}
.FieldPortal_recordRow {
  appearance: none;
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 14px 18px;
  border: 0;
  border-bottom: 1px solid #f0f2f5;
  background: #fff;
  color: inherit;
  text-align: left;
  cursor: pointer;
}
.FieldPortal_recordRow:last-child {
  border-bottom: 0;
}
.FieldPortal_recordRow:hover {
  background: #f8fafc;
}
.FieldPortal_recordRowLocked {
  cursor: not-allowed;
}
.FieldPortal_recordRowLocked:hover {
  background: #fff;
}
.FieldPortal_recordRow > span:first-child > strong {
  display: block;
  color: var(--field-text-soft);
  font-size: 13px;
  font-weight: 750;
}
.FieldPortal_recordRow > span:first-child > span {
  display: block;
  margin-top: 3px;
  color: var(--field-muted);
  font-size: 11px;
  line-height: 1.45;
}
.FieldPortal_recordMeta {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
  flex-wrap: wrap;
}
.FieldPortal_formCatalogue {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  border: 1px solid var(--field-border);
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}
.FieldPortal_formTile {
  appearance: none;
  display: grid;
  gap: 5px;
  min-height: 98px;
  padding: 16px;
  border: 0;
  border-right: 1px solid var(--field-border);
  border-bottom: 1px solid var(--field-border);
  background: #fff;
  color: inherit;
  text-align: left;
  cursor: pointer;
}
.FieldPortal_formTile:hover {
  background: #f8fafc;
}
.FieldPortal_formTile strong {
  color: var(--field-text);
  font-size: 14px;
  font-weight: 750;
}
.FieldPortal_formTile span {
  color: var(--field-muted);
  font-size: 11px;
  line-height: 1.45;
}
.FieldPortal_profileRoot {
  display: grid;
  gap: 16px;
}
.FieldPortal_profileToolbar {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}
.FieldPortal_profileCard {
  padding: 20px;
}
.FieldPortal_stickySave {
  position: sticky;
  bottom: 0;
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 0 -20px -20px;
  padding: 12px 20px max(12px, env(safe-area-inset-bottom));
  border-top: 1px solid var(--field-border);
  background: rgba(255, 255, 255, .97);
}
.FieldPortal_filterOverlay,
.FieldPortal_modalOverlay {
  position: fixed;
  inset: 0;
  z-index: 1300;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 24px;
  background: rgba(15, 23, 42, .52);
}
.FieldPortal_filterSheet {
  width: min(430px, 100%);
  padding: 20px;
  border: 1px solid var(--field-border);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(15, 23, 42, .24);
}
.FieldPortal_modalOverlay {
  align-items: flex-start;
  overflow: auto;
}
.FieldPortal_modalCard {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  width: min(820px, 100%);
  max-height: calc(100dvh - 48px);
  overflow: hidden;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(15, 23, 42, .26);
}
.FieldPortal_modalHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px 16px;
  border-bottom: 1px solid var(--field-border);
}
.FieldPortal_modalHeader h2 {
  margin: 0;
  color: var(--field-text);
  font-size: 20px;
  font-weight: 800;
}
.FieldPortal_modalHeader p {
  margin: 4px 0 0;
  color: var(--field-muted);
  font-size: 12px;
}
.FieldPortal_modalBody {
  overflow: auto;
  padding: 20px;
}
.FieldPortal_modalFooter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 20px max(12px, env(safe-area-inset-bottom));
  border-top: 1px solid var(--field-border);
  background: #fff;
}
.FieldPortal_formProgress {
  display: grid;
  gap: 10px;
  margin: -4px 0 18px;
  padding: 14px;
  border: 1px solid #dbe3ef;
  border-radius: 12px;
  background: #f8fafc;
}
.FieldPortal_formProgressSummary {
  display: grid;
  gap: 3px;
}
.FieldPortal_formProgressSummary span {
  color: var(--field-teal-dark);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.FieldPortal_formProgressSummary strong {
  color: var(--field-text);
  font-size: 14px;
  line-height: 1.35;
}
.FieldPortal_formProgressTrack {
  height: 5px;
  overflow: hidden;
  border-radius: 999px;
  background: #e2e8f0;
}
.FieldPortal_formProgressTrack span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--field-teal);
  transition: width .2s ease;
}
.FieldPortal_formStepList {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  padding-bottom: 2px;
}
.FieldPortal_formStepList button {
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}
.FieldPortal_formStepList .FieldPortal_formStepActive {
  border-color: var(--field-teal);
  background: var(--field-teal);
  color: #fff;
}
.FieldPortal_correctionNotice {
  padding: 14px 16px;
  border: 1px solid #f59e0b;
  border-radius: 14px;
  background: #fffbeb;
  color: #78350f;
  margin-bottom: 18px;
}
.FieldPortal_correctionNotice strong {
  display: block;
  font-size: 13px;
  font-weight: 900;
  margin-bottom: 5px;
}
.FieldPortal_correctionNotice p {
  margin: 0;
  font-size: 13px;
  line-height: 1.6;
  white-space: pre-wrap;
}
.FieldPortal_correctionNotice small {
  display: block;
  font-size: 12px;
  color: #a16207;
  margin-top: 7px;
}
.FieldPortal_adminActionOverlay {
  position: fixed;
  inset: 0;
  z-index: 1400;
  padding: 20px;
  background: rgba(15, 23, 42, .58);
  display: flex;
  align-items: center;
  justify-content: center;
}
.FieldPortal_adminActionDialog {
  width: 100%;
  max-width: 540px;
  background: #fff;
  border: 1px solid #dbe3ef;
  border-radius: 20px;
  box-shadow: 0 28px 70px rgba(15, 23, 42, .3);
  padding: 22px;
  display: grid;
  gap: 16px;
}
.FieldPortal_adminActionEyebrow {
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: #a16207;
  margin-bottom: 6px;
}
.FieldPortal_adminActionEyebrowDanger {
  color: #b91c1c;
}
.FieldPortal_adminActionDialog h3 {
  margin: 0;
  font-size: 21px;
  color: #111827;
}
.FieldPortal_adminActionDialog p {
  margin: 8px 0 0;
  font-size: 13px;
  line-height: 1.6;
  color: #64748b;
}
.FieldPortal_adminActionError {
  padding: 11px 12px;
  border-radius: 10px;
  background: #fef2f2;
  color: #b91c1c;
  font-size: 13px;
  font-weight: 700;
}
.FieldPortal_adminActionButtons {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}
.FieldPortal_adminActionButtons button {
  padding: 10px 14px;
  border-radius: 10px;
  font-weight: 800;
}
.FieldPortal_adminActionCancel {
  border: 1px solid #d1d5db;
  background: #fff;
  color: #374151;
}
.FieldPortal_adminActionSubmit {
  border: 0;
  background: #d97706;
  color: #fff;
}
.FieldPortal_adminActionDanger {
  background: #b91c1c;
}
.FieldPortal_adminActionButtons button:disabled {
  cursor: not-allowed;
  opacity: .65;
}
@media (max-width: 1099px) and (min-width: 768px) {
  .FieldPortal_sidebar {
    width: 72px;
  }
  .FieldPortal_topBar {
    padding: 0 20px;
  }
  .FieldPortal_scopeBar {
    padding-left: 20px;
    padding-right: 20px;
  }
  .FieldPortal_pageInner {
    padding: 18px 20px 24px;
  }
  .FieldPortal_scopeBar + .FieldPortal_pageInner {
    padding-top: 12px;
  }
  .FieldPortal_dashboardGrid {
    grid-template-columns: minmax(0, 1.45fr) minmax(280px, .85fr);
  }
  .FieldPortal_allocationLayout {
    grid-template-columns: 330px minmax(0, 1fr);
  }
}
@media (max-width: 900px) {
  .FieldPortal_dashboardGrid,
  .FieldPortal_allocationLayout {
    grid-template-columns: 1fr;
  }
  .FieldPortal_allocationList {
    max-height: none;
  }
  .FieldPortal_taskActions {
    grid-template-columns: 1fr;
  }
  .FieldPortal_taskAction {
    border-right: 0;
    border-bottom: 1px solid var(--field-border);
  }
  .FieldPortal_taskAction:last-child {
    border-bottom: 0;
  }
}
@media (max-width: 767px) {
  .FieldPortal_portal {
    display: block;
  }
  .FieldPortal_portal .FieldPortal_sidebar {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1301;
    display: flex;
    width: 240px;
    height: 100dvh;
    transform: translateX(-104%);
    transition: transform .22s ease;
    box-shadow: 18px 0 42px rgba(15, 23, 42, .28);
  }
  .FieldPortal_portal .FieldPortal_sidebarOpen {
    transform: translateX(0);
  }
  .FieldPortal_sidebar .sidebar-nav {
    flex-direction: column;
    overflow-y: auto;
    overflow-x: hidden;
  }
  .FieldPortal_sidebar .sidebar-title,
  .FieldPortal_sidebar .sidebar-subtitle,
  .FieldPortal_sidebar .sidebar-group-label,
  .FieldPortal_sidebar .sidebar-label,
  .FieldPortal_sidebar .sidebar-user-info {
    display: block;
  }
  .FieldPortal_sidebar .sidebar-top {
    padding: 14px 16px;
  }
  .FieldPortal_sidebar .sidebar-brand {
    justify-content: flex-start;
  }
  .FieldPortal_sidebar .sidebar-brand-mark {
    width: 42px;
    height: 42px;
    margin: 0;
  }
  .FieldPortal_sidebar .sidebar-link {
    justify-content: flex-start;
    min-height: 44px;
    padding: 9px 10px;
  }
  .FieldPortal_sidebar .sidebar-footer {
    justify-content: stretch;
    padding: 12px 16px;
  }
  .FieldPortal_sidebar .sidebar-footer-actions {
    display: flex;
  }
  .FieldPortal_menuBackdrop {
    position: fixed;
    inset: 0;
    z-index: 1300;
    display: block;
    padding: 0;
    border: 0;
    background: rgba(15, 23, 42, .48);
    cursor: pointer;
  }
  .FieldPortal_menuTrigger {
    display: flex;
    flex: 0 0 40px;
  }
  .FieldPortal_main {
    width: 100%;
    min-height: 100vh;
  }
  .FieldPortal_topBar {
    height: 54px;
    padding: 0 16px;
  }
  .FieldPortal_brandLine img {
    display: block;
  }
  .FieldPortal_companyName {
    font-size: 11px;
  }
  .FieldPortal_headerActions {
    gap: 6px;
  }
  .FieldPortal_iconButton {
    width: 40px;
    height: 40px;
  }
  .FieldPortal_alertDropdown {
    position: fixed;
    top: 62px;
    right: 12px;
    left: 12px;
    width: auto;
    max-height: calc(100dvh - 76px);
  }
  .FieldPortal_content {
    padding-bottom: 0;
  }
  .FieldPortal_scopeBar {
    align-items: stretch;
    gap: 8px;
    padding: 14px 16px 0;
  }
  .FieldPortal_scopeTabs {
    flex: 1;
    overflow: auto;
  }
  .FieldPortal_scopeTabs button {
    flex: 1;
    min-width: max-content;
    min-height: 36px;
  }
  .FieldPortal_scopePeriod {
    display: none;
  }
  .FieldPortal_scopeBar > .FieldPortal_secondaryButton {
    min-height: 44px;
  }
  .FieldPortal_pageInner {
    padding: 14px 16px 24px;
  }
  .FieldPortal_scopeBar + .FieldPortal_pageInner {
    padding-top: 10px;
  }
  .FieldPortal_panelHeader,
  .FieldPortal_panelBody {
    padding-left: 16px;
    padding-right: 16px;
  }
  .FieldPortal_dashboardGrid {
    gap: 14px;
  }
  .FieldPortal_todayJob {
    padding: 16px;
  }
  .FieldPortal_todayJobTop {
    grid-template-columns: 64px minmax(0, 1fr);
    gap: 12px;
  }
  .FieldPortal_todayJobTop > .FieldPortal_status {
    grid-column: 1/-1;
    justify-self: start;
  }
  .FieldPortal_timeBlock {
    padding-right: 10px;
  }
  .FieldPortal_timeBlock strong {
    font-size: 17px;
  }
  .FieldPortal_jobIdentity strong {
    font-size: 15px;
  }
  .FieldPortal_jobActions {
    padding-left: 0;
  }
  .FieldPortal_jobActions button {
    min-height: 44px;
    flex: 1;
  }
  .FieldPortal_metricStrip {
    grid-template-columns: 1fr;
  }
  .FieldPortal_metric {
    border-right: 0;
    border-bottom: 1px solid var(--field-border);
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
  }
  .FieldPortal_metric:last-child {
    border-bottom: 0;
  }
  .FieldPortal_metric strong {
    grid-column: 2;
    grid-row: 1/3;
    font-size: 20px;
  }
  .FieldPortal_metric small {
    grid-column: 1;
  }
  .FieldPortal_allocationLayout {
    display: block;
  }
  .FieldPortal_allocationRow {
    grid-template-columns: 86px minmax(0, 1fr) 20px;
    min-height: 76px;
    padding-left: 14px;
    padding-right: 14px;
  }
  .FieldPortal_brief {
    padding: 16px;
  }
  .FieldPortal_briefHeader h2 {
    font-size: 19px;
  }
  .FieldPortal_workDay {
    display: grid;
  }
  .FieldPortal_workDay select {
    width: 100%;
    min-width: 0;
    height: 44px;
  }
  .FieldPortal_factGrid {
    grid-template-columns: 1fr;
  }
  .FieldPortal_fact,
  .FieldPortal_fact:nth-child(2n),
  .FieldPortal_fact:nth-last-child(-n+2) {
    border-right: 0;
    border-bottom: 1px solid var(--field-border);
  }
  .FieldPortal_fact:last-child {
    border-bottom: 0;
  }
  .FieldPortal_recordRow {
    padding: 14px 16px;
  }
  .FieldPortal_recordMeta {
    align-items: flex-end;
    flex-direction: column;
  }
  .FieldPortal_formCatalogue {
    grid-template-columns: 1fr;
  }
  .FieldPortal_formTile {
    min-height: 88px;
    border-right: 0;
  }
  .FieldPortal_profileToolbar {
    display: none;
  }
  .FieldPortal_profileCard {
    padding: 16px;
  }
  .FieldPortal_stickySave {
    margin: 0 -16px -16px;
    padding-left: 16px;
    padding-right: 16px;
    align-items: stretch;
    flex-direction: column;
  }
  .FieldPortal_stickySave button {
    width: 100%;
    min-height: 46px;
  }
  .FieldPortal_filterOverlay {
    padding: 0;
  }
  .FieldPortal_filterSheet {
    border-width: 1px 0 0;
    border-radius: 14px 14px 0 0;
    padding: 18px 16px max(18px, env(safe-area-inset-bottom));
  }
  .FieldPortal_modalOverlay {
    align-items: stretch;
    padding: 0;
  }
  .FieldPortal_modalCard {
    width: 100%;
    max-height: none;
    height: 100dvh;
    border-radius: 0;
  }
  .FieldPortal_modalHeader {
    padding: 15px 16px 13px;
  }
  .FieldPortal_modalBody {
    padding: 16px;
  }
  .FieldPortal_modalFooter {
    padding: 11px 16px max(11px, env(safe-area-inset-bottom));
  }
  .FieldPortal_modalFooter button {
    min-height: 46px;
  }
}
@media (max-width: 390px) {
  .FieldPortal_pageInner,
  .FieldPortal_scopeBar {
    padding-left: 12px;
    padding-right: 12px;
  }
  .FieldPortal_topBar {
    padding-left: 12px;
    padding-right: 12px;
  }
  .FieldPortal_todayJob {
    padding: 14px;
  }
  .FieldPortal_panelHeader {
    padding-left: 14px;
    padding-right: 14px;
  }
}

/* src/styles/FieldDataWorkspace.module.css */
.FieldDataWorkspace_workspace {
  display: flex;
  flex: 1;
  min-width: 0;
  min-height: 0;
  padding: 4px 6px 8px;
  background: var(--opebix-canvas);
}
.FieldDataWorkspace_register {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  min-height: calc(100vh - 12px);
  overflow: hidden;
  border: 1px solid var(--opebix-border);
  border-radius: 14px;
  background: var(--opebix-surface);
  box-shadow: var(--opebix-shadow-xs);
}
.FieldDataWorkspace_header {
  display: grid;
  grid-template-columns: auto minmax(280px, 360px) minmax(260px, 1fr);
  align-items: center;
  gap: 20px;
  min-height: 62px;
  padding: 11px 22px;
  border-bottom: 1px solid var(--opebix-border);
}
.FieldDataWorkspace_heading {
  display: grid;
  gap: 3px;
  min-width: 86px;
}
.FieldDataWorkspace_heading > span {
  color: var(--opebix-teal-dark);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.FieldDataWorkspace_heading h1 {
  margin: 0;
  color: var(--opebix-text);
  font-size: 21px;
  font-weight: 850;
  letter-spacing: -.025em;
  line-height: 1.1;
}
.FieldDataWorkspace_search {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  height: 38px;
  padding: 0 12px;
  border: 1px solid var(--opebix-border);
  border-radius: 9px;
  background: var(--opebix-surface-soft);
  color: var(--opebix-muted);
}
.FieldDataWorkspace_search:focus-within {
  border-color: var(--opebix-focus);
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .1);
}
.FieldDataWorkspace_search svg {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
}
.FieldDataWorkspace_search input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--opebix-text);
  font-size: 12px;
}
.FieldDataWorkspace_search input::placeholder {
  color: var(--opebix-muted);
}
.FieldDataWorkspace_headerActions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 11px;
}
.FieldDataWorkspace_syncText {
  color: var(--opebix-muted);
  font-size: 11px;
  white-space: nowrap;
}
.FieldDataWorkspace_refreshButton,
.FieldDataWorkspace_clearButton,
.FieldDataWorkspace_loadMore,
.FieldDataWorkspace_state button {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 36px;
  padding: 0 12px;
  border: 1px solid var(--opebix-border-strong);
  border-radius: 8px;
  background: #fff;
  color: var(--opebix-text-soft);
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}
.FieldDataWorkspace_refreshButton:hover,
.FieldDataWorkspace_clearButton:hover,
.FieldDataWorkspace_loadMore:hover,
.FieldDataWorkspace_state button:hover {
  background: var(--opebix-surface-soft);
  color: var(--opebix-text);
}
.FieldDataWorkspace_refreshButton:disabled {
  cursor: not-allowed;
  opacity: .55;
}
.FieldDataWorkspace_refreshButton svg {
  width: 15px;
  height: 15px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.FieldDataWorkspace_filters {
  display: grid;
  grid-template-columns: minmax(150px, 210px) minmax(160px, 195px) minmax(125px, 150px) minmax(125px, 150px) minmax(330px, 1fr) auto minmax(120px, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 58px;
  padding: 10px 22px;
  border-bottom: 1px solid var(--opebix-border);
  background: #fff;
}
.FieldDataWorkspace_filters > select,
.FieldDataWorkspace_dateRange input {
  width: 100%;
  height: 36px;
  min-height: 36px !important;
  padding: 0 32px 0 11px !important;
  border: 1px solid var(--opebix-border-strong) !important;
  border-radius: 8px !important;
  background-color: #fff !important;
  color: var(--opebix-text-soft) !important;
  font-size: 12px !important;
  font-weight: 650 !important;
  outline: 0;
}
.FieldDataWorkspace_filters > select:focus,
.FieldDataWorkspace_dateRange input:focus {
  border-color: var(--opebix-focus) !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .1) !important;
}
.FieldDataWorkspace_dateRange {
  display: grid;
  grid-template-columns: auto minmax(120px, 1fr) 1px auto minmax(120px, 1fr);
  align-items: center;
  gap: 8px;
  min-width: 0;
  height: 38px;
  padding: 0 8px;
  border: 1px solid var(--opebix-border);
  border-radius: 9px;
  background: #fff;
}
.FieldDataWorkspace_dateRange > span {
  color: var(--opebix-muted);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.FieldDataWorkspace_dateRange > i {
  width: 1px;
  height: 20px;
  background: var(--opebix-divider);
}
.FieldDataWorkspace_dateRange input {
  height: 32px;
  min-height: 32px !important;
  padding: 0 5px !important;
  border: 0 !important;
  box-shadow: none !important;
  font-weight: 650 !important;
}
.FieldDataWorkspace_clearButton {
  height: 36px;
}
.FieldDataWorkspace_resultCount {
  justify-self: end;
  color: var(--opebix-text-muted);
  font-size: 11px;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.FieldDataWorkspace_tableHead,
.FieldDataWorkspace_row {
  display: grid;
  grid-template-columns: minmax(150px, .9fr) minmax(95px, .58fr) minmax(280px, 2.2fr) minmax(180px, 1.25fr) minmax(125px, .75fr) minmax(155px, 1fr);
  align-items: center;
  column-gap: 16px;
}
.FieldDataWorkspace_tableHead {
  min-height: 38px;
  padding: 0 22px;
  border-bottom: 1px solid var(--opebix-border);
  background: var(--opebix-surface-soft);
  color: var(--opebix-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.FieldDataWorkspace_tableViewport {
  flex: 1;
  min-height: 320px;
  max-height: calc(100vh - 168px);
  overflow: auto;
  overscroll-behavior: contain;
}
.FieldDataWorkspace_row {
  appearance: none;
  width: 100%;
  min-height: 57px;
  padding: 7px 22px;
  border: 0;
  border-bottom: 1px solid var(--opebix-divider);
  background: #fff;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: background .12s, box-shadow .12s;
}
.FieldDataWorkspace_row:hover {
  background: #f8fbff;
}
.FieldDataWorkspace_rowSelected {
  background: #f0fdfa;
  box-shadow: inset 3px 0 0 var(--opebix-teal-dark);
}
.FieldDataWorkspace_cell {
  display: block;
  min-width: 0;
}
.FieldDataWorkspace_cell strong,
.FieldDataWorkspace_cell small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.FieldDataWorkspace_cell strong {
  color: var(--opebix-text);
  font-size: 12px;
  font-weight: 760;
  line-height: 1.35;
}
.FieldDataWorkspace_cell small {
  margin-top: 2px;
  color: var(--opebix-muted);
  font-size: 10px;
  line-height: 1.35;
}
.FieldDataWorkspace_numeric {
  font-variant-numeric: tabular-nums;
}
.FieldDataWorkspace_formIdentity,
.FieldDataWorkspace_person {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}
.FieldDataWorkspace_formIdentity > i {
  width: 7px;
  height: 7px;
  flex: 0 0 auto;
  border-radius: 50%;
}
.FieldDataWorkspace_person > i {
  display: grid;
  width: 27px;
  height: 27px;
  flex: 0 0 27px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  font-size: 8px;
  font-style: normal;
  font-weight: 850;
  letter-spacing: .02em;
}
.FieldDataWorkspace_person strong {
  min-width: 0;
}
.FieldDataWorkspace_bookingCell small {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}
.FieldDataWorkspace_bookingCell em {
  display: inline-flex;
  flex: 0 0 auto;
  padding: 1px 5px;
  border-radius: 5px;
  background: #eef1f5;
  color: #8993a4;
  font-size: 8px;
  font-style: normal;
  font-weight: 800;
  letter-spacing: .02em;
}
.FieldDataWorkspace_status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--opebix-text-soft);
  font-size: 11px;
  font-weight: 750;
  white-space: nowrap;
}
.FieldDataWorkspace_status > i {
  width: 4px;
  height: 15px;
  border-radius: 4px;
  background: currentColor;
}
.FieldDataWorkspace_status_submitted {
  color: #07825a;
}
.FieldDataWorkspace_status_draft {
  color: #d97706;
}
.FieldDataWorkspace_status_returned {
  color: #b54708;
}
.FieldDataWorkspace_state {
  display: grid;
  min-height: 260px;
  place-content: center;
  justify-items: center;
  gap: 7px;
  padding: 28px;
  color: var(--opebix-text-muted);
  text-align: center;
}
.FieldDataWorkspace_state strong {
  color: var(--opebix-text-soft);
  font-size: 14px;
}
.FieldDataWorkspace_state span {
  max-width: 460px;
  font-size: 12px;
  line-height: 1.5;
}
.FieldDataWorkspace_state button {
  margin-top: 5px;
}
.FieldDataWorkspace_errorState strong {
  color: var(--opebix-danger);
}
.FieldDataWorkspace_loadingMore {
  padding: 14px;
  color: var(--opebix-text-muted);
  font-size: 11px;
  font-weight: 700;
  text-align: center;
}
.FieldDataWorkspace_loadMore {
  display: flex;
  margin: 14px auto;
}
.FieldDataWorkspace_drawer {
  width: min(820px, 96vw);
}
.FieldDataWorkspace_drawerStatus {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-right: auto;
}
.FieldDataWorkspace_srOnly {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  clip-path: inset(50%);
}
@media (max-width: 1400px) {
  .FieldDataWorkspace_header {
    grid-template-columns: auto minmax(260px, 1fr) auto;
  }
  .FieldDataWorkspace_filters {
    grid-template-columns: repeat(4, minmax(130px, 1fr)) auto;
  }
  .FieldDataWorkspace_dateRange {
    grid-column: span 3;
  }
  .FieldDataWorkspace_resultCount {
    grid-column: -2/-1;
  }
  .FieldDataWorkspace_tableHead,
  .FieldDataWorkspace_row {
    grid-template-columns: minmax(130px, .85fr) minmax(90px, .55fr) minmax(230px, 1.8fr) minmax(155px, 1.15fr) minmax(115px, .72fr) minmax(145px, .95fr);
    column-gap: 12px;
  }
}
@media (max-width: 980px) {
  .FieldDataWorkspace_workspace {
    padding: 0;
  }
  .FieldDataWorkspace_register {
    min-height: 100vh;
    border-width: 0;
    border-radius: 0;
  }
  .FieldDataWorkspace_header {
    grid-template-columns: auto 1fr;
    gap: 12px;
  }
  .FieldDataWorkspace_search {
    grid-column: 1/-1;
    grid-row: 2;
  }
  .FieldDataWorkspace_filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 10px 16px;
  }
  .FieldDataWorkspace_dateRange {
    grid-column: 1/-1;
  }
  .FieldDataWorkspace_resultCount {
    grid-column: 2;
    grid-row: auto;
  }
  .FieldDataWorkspace_tableHead {
    display: none;
  }
  .FieldDataWorkspace_tableViewport {
    max-height: none;
    padding: 10px 12px;
    background: var(--opebix-surface-soft);
  }
  .FieldDataWorkspace_row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 16px;
    min-height: 0;
    margin-bottom: 10px;
    padding: 11px 14px;
    border: 1px solid var(--opebix-border);
    border-radius: 11px;
    box-shadow: var(--opebix-shadow-xs);
  }
  .FieldDataWorkspace_cell {
    display: grid;
    grid-template-columns: minmax(82px, .65fr) minmax(0, 1fr);
    align-items: start;
    gap: 9px;
    padding: 7px 0;
    border-bottom: 1px solid var(--opebix-divider);
  }
  .FieldDataWorkspace_cell::before {
    grid-column: 1;
    grid-row: 1/3;
    color: var(--opebix-muted);
    content: attr(data-label);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
  }
  .FieldDataWorkspace_cell > * {
    grid-column: 2;
  }
  .FieldDataWorkspace_bookingCell {
    grid-column: 1/-1;
  }
  .FieldDataWorkspace_cell:nth-last-child(-n+2) {
    border-bottom: 0;
  }
  .FieldDataWorkspace_person,
  .FieldDataWorkspace_formIdentity {
    align-self: center;
  }
  .FieldDataWorkspace_bookingCell small {
    display: block;
  }
  .FieldDataWorkspace_bookingCell em {
    width: max-content;
    margin-top: 4px;
  }
}
@media (max-width: 640px) {
  .FieldDataWorkspace_header {
    padding: 13px 16px;
  }
  .FieldDataWorkspace_heading h1 {
    font-size: 20px;
  }
  .FieldDataWorkspace_syncText {
    display: none;
  }
  .FieldDataWorkspace_headerActions {
    justify-self: end;
  }
  .FieldDataWorkspace_refreshButton,
  .FieldDataWorkspace_clearButton {
    min-height: 44px;
  }
  .FieldDataWorkspace_filters {
    grid-template-columns: 1fr;
  }
  .FieldDataWorkspace_filters > select {
    min-height: 44px !important;
    height: 44px;
  }
  .FieldDataWorkspace_dateRange {
    grid-column: 1;
    grid-template-columns: auto 1fr;
    gap: 5px;
    height: auto;
    padding: 7px 9px;
  }
  .FieldDataWorkspace_dateRange > i {
    display: none;
  }
  .FieldDataWorkspace_dateRange input {
    min-height: 38px !important;
  }
  .FieldDataWorkspace_clearButton {
    width: 100%;
  }
  .FieldDataWorkspace_resultCount {
    grid-column: 1;
    justify-self: start;
  }
  .FieldDataWorkspace_tableViewport {
    padding: 9px;
  }
  .FieldDataWorkspace_row {
    grid-template-columns: 1fr;
  }
  .FieldDataWorkspace_bookingCell {
    grid-column: auto;
  }
  .FieldDataWorkspace_cell:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--opebix-divider);
  }
  .FieldDataWorkspace_cell:last-child {
    border-bottom: 0;
  }
  .FieldDataWorkspace_drawerStatus {
    width: 100%;
    margin-bottom: 4px;
  }
}

/* src/styles/TimesheetsWorkspace.module.css */
.TimesheetsWorkspace_workspace {
  display: flex;
  flex: 1;
  min-width: 0;
  min-height: 0;
  padding: 4px 6px 8px;
  background: var(--opebix-canvas);
}
.TimesheetsWorkspace_register {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  min-height: calc(100vh - 12px);
  overflow: hidden;
  border: 1px solid var(--opebix-border);
  border-radius: 14px;
  background: var(--opebix-surface);
  box-shadow: var(--opebix-shadow-xs);
}
.TimesheetsWorkspace_header {
  display: grid;
  grid-template-columns: auto minmax(300px, 450px) minmax(240px, 1fr);
  align-items: center;
  gap: 24px;
  min-height: 62px;
  padding: 11px 22px;
  border-bottom: 1px solid var(--opebix-border);
}
.TimesheetsWorkspace_heading {
  display: grid;
  gap: 3px;
}
.TimesheetsWorkspace_heading span {
  color: var(--opebix-teal-dark);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.TimesheetsWorkspace_heading h1 {
  margin: 0;
  color: var(--opebix-text);
  font-size: 21px;
  font-weight: 850;
  letter-spacing: -.025em;
  line-height: 1.1;
}
.TimesheetsWorkspace_search {
  display: flex;
  align-items: center;
  gap: 9px;
  height: 38px;
  padding: 0 12px;
  border: 1px solid var(--opebix-border);
  border-radius: 9px;
  background: var(--opebix-surface-soft);
  color: var(--opebix-muted);
}
.TimesheetsWorkspace_search:focus-within {
  border-color: var(--opebix-focus);
  box-shadow: 0 0 0 3px rgba(15, 159, 150, .12);
}
.TimesheetsWorkspace_search svg {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
}
.TimesheetsWorkspace_search input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--opebix-text);
  font-size: 12px;
}
.TimesheetsWorkspace_search input::placeholder {
  color: var(--opebix-muted);
}
.TimesheetsWorkspace_headerActions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 11px;
}
.TimesheetsWorkspace_syncText {
  color: var(--opebix-muted);
  font-size: 11px;
  white-space: nowrap;
}
.TimesheetsWorkspace_button,
.TimesheetsWorkspace_clearButton,
.TimesheetsWorkspace_refreshButton,
.TimesheetsWorkspace_loadMore {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 36px;
  padding: 0 12px;
  border: 1px solid var(--opebix-border-strong);
  border-radius: 8px;
  background: #fff;
  color: var(--opebix-text-soft);
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}
.TimesheetsWorkspace_button:hover,
.TimesheetsWorkspace_clearButton:hover,
.TimesheetsWorkspace_refreshButton:hover,
.TimesheetsWorkspace_loadMore:hover {
  background: var(--opebix-surface-soft);
  color: var(--opebix-text);
}
.TimesheetsWorkspace_button:disabled,
.TimesheetsWorkspace_refreshButton:disabled {
  cursor: not-allowed;
  opacity: .5;
}
.TimesheetsWorkspace_refreshButton svg {
  width: 15px;
  height: 15px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.TimesheetsWorkspace_metrics {
  display: grid;
  grid-template-columns: 190px 240px 170px 150px minmax(300px, 1fr);
  min-height: 96px;
  border-bottom: 1px solid var(--opebix-border);
  background: var(--opebix-surface-soft);
}
.TimesheetsWorkspace_metric {
  display: grid;
  align-content: center;
  gap: 3px;
  padding: 14px 22px;
  border-right: 1px solid var(--opebix-border);
}
.TimesheetsWorkspace_metric:last-child {
  border-right: 0;
}
.TimesheetsWorkspace_metricValue {
  color: var(--opebix-text);
  font-size: 26px;
  font-weight: 850;
  letter-spacing: -.035em;
  line-height: 1;
}
.TimesheetsWorkspace_metricValue small {
  margin-left: 5px;
  color: var(--opebix-muted);
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0;
}
.TimesheetsWorkspace_metric[data-tone=warning] .TimesheetsWorkspace_metricValue {
  color: #b45309;
}
.TimesheetsWorkspace_metric[data-tone=danger] .TimesheetsWorkspace_metricValue {
  color: #b42318;
}
.TimesheetsWorkspace_metricLabel {
  color: var(--opebix-muted);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.TimesheetsWorkspace_approvalMetric {
  display: grid;
  align-content: center;
  gap: 9px;
  padding: 14px 30px;
}
.TimesheetsWorkspace_approvalCopy {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  color: var(--opebix-text-soft);
  font-size: 12px;
  font-weight: 800;
}
.TimesheetsWorkspace_approvalCopy span:last-child {
  color: var(--opebix-muted);
  font-weight: 700;
}
.TimesheetsWorkspace_progress {
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #e4e9f0;
}
.TimesheetsWorkspace_progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--opebix-teal-dark);
  transition: width .2s ease;
}
.TimesheetsWorkspace_filters {
  display: grid;
  grid-template-columns: minmax(300px, 1.35fr) auto minmax(135px, .65fr) minmax(170px, .9fr) minmax(130px, .65fr) minmax(330px, 1.35fr) auto minmax(145px, .7fr);
  align-items: center;
  gap: 10px;
  min-height: 66px;
  padding: 9px 22px;
  border-bottom: 1px solid var(--opebix-border);
  background: #fff;
}
.TimesheetsWorkspace_periodStepper {
  display: grid;
  grid-template-columns: 36px minmax(215px, 1fr) 36px;
  align-items: stretch;
  min-width: 0;
}
.TimesheetsWorkspace_periodStepper button {
  min-width: 36px;
  padding: 0;
  border: 1px solid var(--opebix-border-strong);
  background: #fff;
  color: var(--opebix-text-soft);
  font-size: 18px;
  cursor: pointer;
}
.TimesheetsWorkspace_periodStepper button:first-child {
  border-radius: 9px 0 0 9px;
}
.TimesheetsWorkspace_periodStepper button:last-child {
  border-radius: 0 9px 9px 0;
}
.TimesheetsWorkspace_periodLabel {
  display: grid;
  place-content: center;
  padding: 4px 10px;
  border-top: 1px solid var(--opebix-border-strong);
  border-bottom: 1px solid var(--opebix-border-strong);
  text-align: center;
}
.TimesheetsWorkspace_periodLabel small {
  color: var(--opebix-muted);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.TimesheetsWorkspace_periodLabel strong {
  color: var(--opebix-text);
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}
.TimesheetsWorkspace_currentButton {
  height: 38px;
}
.TimesheetsWorkspace_filters > select,
.TimesheetsWorkspace_dateRange input {
  width: 100%;
  height: 38px;
  min-height: 38px !important;
  padding: 0 32px 0 11px !important;
  border: 1px solid var(--opebix-border-strong) !important;
  border-radius: 8px !important;
  background-color: #fff !important;
  color: var(--opebix-text-soft) !important;
  font-size: 12px !important;
  font-weight: 650 !important;
  outline: 0;
}
.TimesheetsWorkspace_filters > select:focus,
.TimesheetsWorkspace_dateRange input:focus {
  border-color: var(--opebix-focus) !important;
  box-shadow: 0 0 0 3px rgba(15, 159, 150, .12) !important;
}
.TimesheetsWorkspace_dateRange {
  display: grid;
  grid-template-columns: auto minmax(112px, 1fr) 1px auto minmax(112px, 1fr);
  align-items: center;
  gap: 8px;
  min-width: 0;
  height: 38px;
  padding: 0 8px;
  border: 1px solid var(--opebix-border);
  border-radius: 9px;
  background: #fff;
}
.TimesheetsWorkspace_dateRange span {
  color: var(--opebix-muted);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.TimesheetsWorkspace_dateRange i {
  width: 1px;
  height: 20px;
  background: var(--opebix-divider);
}
.TimesheetsWorkspace_dateRange input {
  height: 32px;
  min-height: 32px !important;
  padding: 0 5px !important;
  border: 0 !important;
  box-shadow: none !important;
}
.TimesheetsWorkspace_resultCount {
  justify-self: end;
  color: var(--opebix-text-muted);
  font-size: 11px;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.TimesheetsWorkspace_selectionBar {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 48px;
  padding: 6px 22px;
  border-bottom: 1px solid #bfe9e4;
  background: #effcf9;
  color: var(--opebix-text-soft);
  font-size: 12px;
  font-weight: 750;
}
.TimesheetsWorkspace_selectionBar span {
  margin-right: auto;
}
.TimesheetsWorkspace_approveButton {
  border-color: #9fdbd2;
  background: var(--opebix-teal-dark);
  color: #fff;
}
.TimesheetsWorkspace_approveButton:hover {
  background: #087d76;
  color: #fff;
}
.TimesheetsWorkspace_queryButton {
  border-color: #f3b2aa;
  color: #b42318;
}
.TimesheetsWorkspace_queryButton:hover {
  background: #fff5f3;
  color: #912018;
}
.TimesheetsWorkspace_tableHead,
.TimesheetsWorkspace_row {
  display: grid;
  grid-template-columns: 34px minmax(210px, 1.2fr) minmax(145px, .82fr) minmax(330px, 2.15fr) minmax(190px, 1fr) minmax(125px, .72fr) minmax(190px, 1.12fr);
  align-items: center;
  column-gap: 16px;
}
.TimesheetsWorkspace_tableHead {
  min-height: 40px;
  padding: 0 22px;
  border-bottom: 1px solid var(--opebix-border);
  background: var(--opebix-surface-soft);
  color: var(--opebix-muted);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.TimesheetsWorkspace_tableViewport {
  flex: 1;
  min-height: 320px;
  max-height: calc(100vh - 270px);
  overflow: auto;
  overscroll-behavior: contain;
}
.TimesheetsWorkspace_dateGroup {
  border: 0;
}
.TimesheetsWorkspace_dateHeader {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 20px;
  min-height: 42px;
  padding: 0 30px;
  border-bottom: 1px solid var(--opebix-border);
  background: #f5f7fa;
  color: var(--opebix-text-soft);
}
.TimesheetsWorkspace_dateHeader div {
  display: flex;
  align-items: baseline;
  gap: 12px;
}
.TimesheetsWorkspace_dateHeader strong {
  font-size: 12px;
  font-weight: 850;
}
.TimesheetsWorkspace_dateHeader span {
  color: var(--opebix-muted);
  font-size: 11px;
}
.TimesheetsWorkspace_dateHeader > strong {
  font-variant-numeric: tabular-nums;
}
.TimesheetsWorkspace_row {
  position: relative;
  width: 100%;
  min-height: 64px;
  padding: 7px 22px;
  border: 0;
  border-bottom: 1px solid var(--opebix-divider);
  background: #fff;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: background .12s, box-shadow .12s;
}
.TimesheetsWorkspace_row:hover {
  background: #f8fbff;
}
.TimesheetsWorkspace_rowSelected {
  background: #f0fdfa;
  box-shadow: inset 3px 0 0 var(--opebix-teal-dark);
}
.TimesheetsWorkspace_checkbox {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--opebix-teal-dark);
  cursor: pointer;
}
.TimesheetsWorkspace_cell {
  display: block;
  min-width: 0;
}
.TimesheetsWorkspace_cell strong,
.TimesheetsWorkspace_cell small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.TimesheetsWorkspace_cell strong {
  color: var(--opebix-text);
  font-size: 12px;
  font-weight: 780;
  line-height: 1.35;
}
.TimesheetsWorkspace_cell small {
  margin-top: 2px;
  color: var(--opebix-muted);
  font-size: 10px;
  line-height: 1.35;
}
.TimesheetsWorkspace_numeric {
  font-variant-numeric: tabular-nums;
}
.TimesheetsWorkspace_person {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.TimesheetsWorkspace_avatar {
  display: grid;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  font-size: 9px;
  font-style: normal;
  font-weight: 850;
  letter-spacing: .02em;
}
.TimesheetsWorkspace_hours {
  display: grid;
  grid-template-columns: 48px minmax(60px, 1fr);
  align-items: center;
  gap: 10px;
}
.TimesheetsWorkspace_hoursTrack {
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: #e7ebf0;
}
.TimesheetsWorkspace_hoursTrack i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--opebix-teal-dark);
}
.TimesheetsWorkspace_source {
  display: inline-flex;
  width: max-content;
  padding: 4px 9px;
  border-radius: 999px;
  background: #f1f3f6;
  color: #667085;
  font-size: 10px;
  font-weight: 800;
}
.TimesheetsWorkspace_status {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}
.TimesheetsWorkspace_status > i {
  width: 5px;
  height: 18px;
  flex: 0 0 5px;
  border-radius: 4px;
  background: currentColor;
}
.TimesheetsWorkspace_status span {
  min-width: 0;
}
.TimesheetsWorkspace_status_draft {
  color: #d97706;
}
.TimesheetsWorkspace_status_submitted {
  color: #64748b;
}
.TimesheetsWorkspace_status_approved {
  color: #079669;
}
.TimesheetsWorkspace_status_queried {
  color: #e33b32;
}
.TimesheetsWorkspace_status strong {
  color: currentColor;
}
.TimesheetsWorkspace_state {
  display: grid;
  min-height: 260px;
  place-content: center;
  justify-items: center;
  gap: 7px;
  padding: 28px;
  color: var(--opebix-text-muted);
  text-align: center;
}
.TimesheetsWorkspace_state strong {
  color: var(--opebix-text-soft);
  font-size: 14px;
}
.TimesheetsWorkspace_state span {
  max-width: 460px;
  font-size: 12px;
  line-height: 1.5;
}
.TimesheetsWorkspace_errorState strong {
  color: var(--opebix-danger);
}
.TimesheetsWorkspace_loadingMore {
  padding: 14px;
  color: var(--opebix-text-muted);
  font-size: 11px;
  font-weight: 700;
  text-align: center;
}
.TimesheetsWorkspace_loadMore {
  display: flex;
  margin: 14px auto;
}
.TimesheetsWorkspace_srOnly {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  clip-path: inset(50%);
}
.TimesheetsWorkspace_detailModal {
  width: min(900px, 100%);
}
.TimesheetsWorkspace_detailStatus {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
}
.TimesheetsWorkspace_detailGrid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--opebix-border);
  border-radius: 12px;
  background: #fff;
}
.TimesheetsWorkspace_detailItem {
  min-width: 0;
  padding: 14px;
  border-right: 1px solid var(--opebix-divider);
  border-bottom: 1px solid var(--opebix-divider);
}
.TimesheetsWorkspace_detailItem:nth-child(4n) {
  border-right: 0;
}
.TimesheetsWorkspace_detailItem:nth-last-child(-n+4) {
  border-bottom: 0;
}
.TimesheetsWorkspace_detailItem small {
  display: block;
  margin-bottom: 5px;
  color: var(--opebix-muted);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.TimesheetsWorkspace_detailItem strong {
  display: block;
  overflow-wrap: anywhere;
  color: var(--opebix-text);
  font-size: 13px;
  line-height: 1.45;
}
.TimesheetsWorkspace_notes,
.TimesheetsWorkspace_reviewNote {
  margin-top: 14px;
  padding: 15px;
  border: 1px solid var(--opebix-border);
  border-radius: 12px;
  background: var(--opebix-surface-soft);
}
.TimesheetsWorkspace_notes small,
.TimesheetsWorkspace_reviewNote small {
  display: block;
  margin-bottom: 6px;
  color: var(--opebix-muted);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.TimesheetsWorkspace_notes p,
.TimesheetsWorkspace_reviewNote p {
  margin: 0;
  color: var(--opebix-text-soft);
  font-size: 12px;
  line-height: 1.55;
  white-space: pre-wrap;
}
.TimesheetsWorkspace_reviewNote {
  border-color: #fecaca;
  background: #fff7f6;
}
.TimesheetsWorkspace_reviewNote p {
  color: #9f241d;
}
.TimesheetsWorkspace_reviewMeta {
  margin-top: 6px !important;
  color: var(--opebix-muted) !important;
  font-size: 10px !important;
}
.TimesheetsWorkspace_modalActions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}
.TimesheetsWorkspace_deleteButton {
  border-color: #fecaca;
  color: #b42318;
}
.TimesheetsWorkspace_reviewForm {
  display: grid;
  gap: 13px;
}
.TimesheetsWorkspace_reviewForm p {
  margin: 0;
  color: var(--opebix-text-soft);
  font-size: 13px;
  line-height: 1.55;
}
.TimesheetsWorkspace_reviewForm label {
  display: grid;
  gap: 6px;
  color: var(--opebix-text-soft);
  font-size: 11px;
  font-weight: 800;
}
.TimesheetsWorkspace_reviewForm textarea {
  min-height: 110px;
  padding: 10px 11px;
  border: 1px solid var(--opebix-border-strong);
  border-radius: 9px;
  color: var(--opebix-text);
  font: inherit;
  font-size: 12px;
  resize: vertical;
}
.TimesheetsWorkspace_reviewForm textarea:focus {
  border-color: var(--opebix-focus);
  outline: 0;
  box-shadow: 0 0 0 3px rgba(15, 159, 150, .12);
}
.TimesheetsWorkspace_inlineError {
  padding: 9px 10px;
  border-radius: 8px;
  background: #fff1f0;
  color: #b42318;
  font-size: 11px;
  font-weight: 700;
}
@media (max-width: 1450px) {
  .TimesheetsWorkspace_header {
    grid-template-columns: auto minmax(260px, 1fr) auto;
  }
  .TimesheetsWorkspace_metrics {
    grid-template-columns: repeat(4, minmax(130px, 1fr)) minmax(270px, 1.5fr);
  }
  .TimesheetsWorkspace_filters {
    grid-template-columns: minmax(300px, 1.4fr) auto repeat(3, minmax(130px, 1fr));
  }
  .TimesheetsWorkspace_dateRange {
    grid-column: 1/4;
  }
  .TimesheetsWorkspace_resultCount {
    grid-column: 5;
  }
  .TimesheetsWorkspace_tableHead,
  .TimesheetsWorkspace_row {
    grid-template-columns: 30px minmax(180px, 1.15fr) minmax(130px, .8fr) minmax(260px, 1.8fr) minmax(165px, .9fr) minmax(110px, .65fr) minmax(170px, 1fr);
    column-gap: 12px;
  }
}
@media (max-width: 1050px) {
  .TimesheetsWorkspace_workspace {
    padding: 0;
  }
  .TimesheetsWorkspace_register {
    min-height: 100vh;
    border-width: 0;
    border-radius: 0;
  }
  .TimesheetsWorkspace_metrics {
    grid-template-columns: repeat(4, 1fr);
  }
  .TimesheetsWorkspace_approvalMetric {
    grid-column: 1/-1;
    border-top: 1px solid var(--opebix-border);
  }
  .TimesheetsWorkspace_filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 10px 16px;
  }
  .TimesheetsWorkspace_periodStepper {
    grid-column: 1/-1;
  }
  .TimesheetsWorkspace_dateRange {
    grid-column: 1/-1;
  }
  .TimesheetsWorkspace_resultCount {
    grid-column: 2;
  }
  .TimesheetsWorkspace_tableHead {
    display: none;
  }
  .TimesheetsWorkspace_tableViewport {
    max-height: none;
    padding: 10px 12px;
    background: var(--opebix-surface-soft);
  }
  .TimesheetsWorkspace_dateHeader {
    margin-top: 8px;
    border: 1px solid var(--opebix-border);
    border-radius: 10px 10px 0 0;
  }
  .TimesheetsWorkspace_row {
    grid-template-columns: 34px repeat(2, minmax(0, 1fr));
    gap: 0 16px;
    min-height: 0;
    padding: 10px 14px;
    border: 1px solid var(--opebix-border);
    border-top: 0;
  }
  .TimesheetsWorkspace_row:last-child {
    border-radius: 0 0 10px 10px;
  }
  .TimesheetsWorkspace_cell {
    display: grid;
    grid-template-columns: minmax(80px, .6fr) minmax(0, 1fr);
    align-items: start;
    gap: 9px;
    padding: 7px 0;
    border-bottom: 1px solid var(--opebix-divider);
  }
  .TimesheetsWorkspace_cell::before {
    grid-column: 1;
    grid-row: 1/3;
    color: var(--opebix-muted);
    content: attr(data-label);
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
  }
  .TimesheetsWorkspace_cell > * {
    grid-column: 2;
  }
  .TimesheetsWorkspace_person {
    align-self: center;
  }
  .TimesheetsWorkspace_cell:nth-child(2),
  .TimesheetsWorkspace_cell:nth-child(4) {
    grid-column: 2/-1;
  }
  .TimesheetsWorkspace_cell:nth-last-child(-n+2) {
    border-bottom: 0;
  }
  .TimesheetsWorkspace_hours {
    grid-template-columns: 48px minmax(50px, 1fr);
  }
  .TimesheetsWorkspace_detailGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .TimesheetsWorkspace_detailItem:nth-child(4n) {
    border-right: 1px solid var(--opebix-divider);
  }
  .TimesheetsWorkspace_detailItem:nth-child(2n) {
    border-right: 0;
  }
  .TimesheetsWorkspace_detailItem:nth-last-child(-n+4) {
    border-bottom: 1px solid var(--opebix-divider);
  }
  .TimesheetsWorkspace_detailItem:nth-last-child(-n+2) {
    border-bottom: 0;
  }
}
@media (max-width: 640px) {
  .TimesheetsWorkspace_header {
    grid-template-columns: 1fr auto;
    gap: 10px;
    padding: 13px 16px;
  }
  .TimesheetsWorkspace_heading h1 {
    font-size: 20px;
  }
  .TimesheetsWorkspace_search {
    grid-column: 1/-1;
    grid-row: 2;
  }
  .TimesheetsWorkspace_syncText {
    display: none;
  }
  .TimesheetsWorkspace_refreshButton,
  .TimesheetsWorkspace_button,
  .TimesheetsWorkspace_clearButton {
    min-height: 44px;
  }
  .TimesheetsWorkspace_metrics {
    grid-template-columns: repeat(2, 1fr);
  }
  .TimesheetsWorkspace_metric {
    min-height: 80px;
    padding: 12px 16px;
  }
  .TimesheetsWorkspace_metric:nth-child(2n) {
    border-right: 0;
  }
  .TimesheetsWorkspace_metricValue {
    font-size: 22px;
  }
  .TimesheetsWorkspace_approvalMetric {
    grid-column: 1/-1;
    padding: 14px 16px;
  }
  .TimesheetsWorkspace_filters {
    grid-template-columns: 1fr;
  }
  .TimesheetsWorkspace_periodStepper,
  .TimesheetsWorkspace_dateRange,
  .TimesheetsWorkspace_resultCount {
    grid-column: 1;
  }
  .TimesheetsWorkspace_filters > select {
    min-height: 44px !important;
    height: 44px;
  }
  .TimesheetsWorkspace_currentButton,
  .TimesheetsWorkspace_clearButton {
    width: 100%;
    height: 44px;
  }
  .TimesheetsWorkspace_dateRange {
    grid-template-columns: auto 1fr;
    gap: 5px;
    height: auto;
    padding: 7px 9px;
  }
  .TimesheetsWorkspace_dateRange i {
    display: none;
  }
  .TimesheetsWorkspace_dateRange input {
    min-height: 38px !important;
  }
  .TimesheetsWorkspace_resultCount {
    justify-self: start;
  }
  .TimesheetsWorkspace_selectionBar {
    position: sticky;
    top: 0;
    z-index: 3;
    flex-wrap: wrap;
    padding: 8px 12px;
  }
  .TimesheetsWorkspace_selectionBar span {
    width: 100%;
  }
  .TimesheetsWorkspace_selectionBar .TimesheetsWorkspace_button {
    flex: 1;
  }
  .TimesheetsWorkspace_tableViewport {
    padding: 8px;
  }
  .TimesheetsWorkspace_dateHeader {
    padding: 0 12px;
  }
  .TimesheetsWorkspace_row {
    grid-template-columns: 28px minmax(0, 1fr);
    padding: 9px 12px;
  }
  .TimesheetsWorkspace_cell,
  .TimesheetsWorkspace_cell:nth-child(2),
  .TimesheetsWorkspace_cell:nth-child(4) {
    grid-column: 2;
  }
  .TimesheetsWorkspace_cell {
    grid-template-columns: minmax(76px, .55fr) minmax(0, 1fr);
  }
  .TimesheetsWorkspace_cell:last-child {
    border-bottom: 0;
  }
  .TimesheetsWorkspace_detailGrid {
    grid-template-columns: 1fr;
  }
  .TimesheetsWorkspace_detailItem,
  .TimesheetsWorkspace_detailItem:nth-child(2n),
  .TimesheetsWorkspace_detailItem:nth-child(4n),
  .TimesheetsWorkspace_detailItem:nth-last-child(-n+2) {
    border-right: 0;
    border-bottom: 1px solid var(--opebix-divider);
  }
  .TimesheetsWorkspace_detailItem:last-child {
    border-bottom: 0;
  }
  .TimesheetsWorkspace_modalActions {
    width: 100%;
  }
  .TimesheetsWorkspace_modalActions .TimesheetsWorkspace_button {
    flex: 1;
  }
  .TimesheetsWorkspace_hours {
    grid-template-columns: 48px minmax(55px, 1fr);
  }
}

/* src/styles/OpebixUI.module.css */
.OpebixUI_pageHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 24px 16px;
  border-bottom: 1px solid var(--opebix-border);
  background: var(--opebix-surface);
}
.OpebixUI_pageHeaderCompact {
  padding-top: 16px;
  padding-bottom: 13px;
}
.OpebixUI_pageHeaderCopy {
  min-width: 0;
}
.OpebixUI_pageHeader h1 {
  margin: 0;
  color: var(--opebix-text);
  font-size: 24px;
  font-weight: 800;
  letter-spacing: -.025em;
  line-height: 1.2;
}
.OpebixUI_pageHeader p {
  max-width: 900px;
  margin: 5px 0 0;
  color: var(--opebix-text-muted);
  font-size: 13px;
  line-height: 1.5;
}
.OpebixUI_eyebrow,
.OpebixUI_metricLabel,
.OpebixUI_formLabel {
  color: var(--opebix-text-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .075em;
  text-transform: uppercase;
}
.OpebixUI_pageHeaderActions,
.OpebixUI_panelActions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}
.OpebixUI_pageBody {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 20px 24px 28px;
  box-sizing: border-box;
}
.OpebixUI_pageBodyWide {
  max-width: 1600px;
}
.admin-shell .OpebixUI_pageBodyWide {
  max-width: none;
}
.OpebixUI_pageBodyFlush {
  max-width: none;
  padding: 0;
}
.OpebixUI_tabs {
  display: flex;
  gap: 3px;
  min-width: 0;
  padding: 4px;
  border: 1px solid var(--opebix-border);
  border-radius: 12px;
  background: var(--opebix-surface);
  box-shadow: var(--opebix-shadow-xs);
  overflow-x: auto;
  scrollbar-width: none;
}
.OpebixUI_tabs::-webkit-scrollbar {
  display: none;
}
.OpebixUI_tab {
  appearance: none;
  flex: 0 0 auto;
  min-height: 34px;
  padding: 0 12px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--opebix-text-soft);
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  white-space: nowrap;
  cursor: pointer;
}
.OpebixUI_tab:hover {
  background: var(--opebix-surface-soft);
  color: var(--opebix-text);
}
.OpebixUI_tabActive {
  background: var(--opebix-navy);
  color: #fff;
  box-shadow: var(--opebix-shadow-xs);
}
.OpebixUI_tabActive:hover {
  background: var(--opebix-navy);
  color: #fff;
}
.OpebixUI_tabsUnderline {
  padding: 0 4px;
  border-width: 0 0 1px;
  border-radius: 0;
  box-shadow: none;
}
.OpebixUI_tabsUnderline .OpebixUI_tab {
  min-height: 42px;
  border-radius: 0;
  border-bottom: 2px solid transparent;
}
.OpebixUI_tabsUnderline .OpebixUI_tabActive {
  border-bottom-color: var(--opebix-teal-dark);
  background: transparent;
  color: var(--opebix-text);
  box-shadow: none;
}
.OpebixUI_toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid var(--opebix-border);
  border-radius: 12px;
  background: var(--opebix-surface);
  box-shadow: var(--opebix-shadow-xs);
}
.OpebixUI_toolbarCompact {
  padding: 7px 8px;
}
.OpebixUI_toolbarLeading,
.OpebixUI_toolbarTrailing {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.OpebixUI_toolbarTrailing {
  margin-left: auto;
}
.OpebixUI_metricStrip {
  display: grid;
  grid-template-columns: repeat(var(--metric-columns,4), minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--opebix-border);
  border-radius: 12px;
  background: var(--opebix-surface);
  box-shadow: var(--opebix-shadow-xs);
}
.OpebixUI_metric {
  appearance: none;
  position: relative;
  display: grid;
  align-content: start;
  gap: 5px;
  min-width: 0;
  padding: 16px 18px;
  border: 0;
  border-right: 1px solid var(--opebix-border);
  background: var(--opebix-surface);
  color: inherit;
  font: inherit;
  text-align: left;
}
.OpebixUI_metric:last-child {
  border-right: 0;
}
button.OpebixUI_metric {
  cursor: pointer;
}
.OpebixUI_metric:hover {
  background: var(--opebix-surface-soft);
}
.OpebixUI_metricIcon {
  color: var(--opebix-text-muted);
}
.OpebixUI_metricValue {
  overflow: hidden;
  color: var(--opebix-text);
  font-size: 25px;
  font-weight: 850;
  letter-spacing: -.025em;
  line-height: 1.05;
  text-overflow: ellipsis;
  font-variant-numeric: tabular-nums;
}
.OpebixUI_metricNote {
  color: var(--opebix-text-muted);
  font-size: 11px;
  line-height: 1.35;
}
.OpebixUI_metric_success .OpebixUI_metricValue {
  color: var(--opebix-success);
}
.OpebixUI_metric_warning .OpebixUI_metricValue {
  color: var(--opebix-warning);
}
.OpebixUI_metric_danger .OpebixUI_metricValue {
  color: var(--opebix-danger);
}
.OpebixUI_metric_info .OpebixUI_metricValue {
  color: var(--opebix-info);
}
.OpebixUI_panel {
  overflow: hidden;
  border: 1px solid var(--opebix-border);
  border-radius: 12px;
  background: var(--opebix-surface);
  box-shadow: var(--opebix-shadow-xs);
}
.OpebixUI_panelHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 17px 20px;
  border-bottom: 1px solid var(--opebix-border);
}
.OpebixUI_panelHeader h2 {
  margin: 0;
  color: var(--opebix-text);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: -.012em;
  line-height: 1.3;
}
.OpebixUI_panelHeader p {
  margin: 4px 0 0;
  color: var(--opebix-text-muted);
  font-size: 12px;
  line-height: 1.5;
}
.OpebixUI_panelBody {
  padding: 18px 20px;
}
.OpebixUI_panelFlush .OpebixUI_panelHeader {
  padding-left: 20px;
  padding-right: 20px;
}
.OpebixUI_panelBodyFlush {
  padding: 0;
}
.OpebixUI_button {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid transparent;
  border-radius: 8px;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  transition:
    background .15s,
    border-color .15s,
    color .15s,
    box-shadow .15s,
    transform .15s;
}
.OpebixUI_button:active {
  transform: translateY(1px);
}
.OpebixUI_button:disabled {
  cursor: not-allowed;
  opacity: .5;
  transform: none;
}
.OpebixUI_button_primary {
  border-color: var(--opebix-navy);
  background: var(--opebix-navy);
  color: #fff;
  box-shadow: var(--opebix-shadow-xs);
}
.OpebixUI_button_primary:hover {
  background: var(--opebix-navy-soft);
}
.OpebixUI_button_accent {
  border-color: var(--opebix-teal-dark);
  background: var(--opebix-teal-dark);
  color: #fff;
}
.OpebixUI_button_accent:hover {
  background: #0b7f78;
}
.OpebixUI_button_secondary {
  border-color: var(--opebix-border-strong);
  background: #fff;
  color: var(--opebix-text-soft);
}
.OpebixUI_button_secondary:hover,
.OpebixUI_button_tertiary:hover {
  background: var(--opebix-surface-soft);
  color: var(--opebix-text);
}
.OpebixUI_button_tertiary {
  border-color: transparent;
  background: transparent;
  color: var(--opebix-text-soft);
}
.OpebixUI_button_danger {
  border-color: var(--opebix-danger-border);
  background: var(--opebix-danger-bg);
  color: var(--opebix-danger);
}
.OpebixUI_button_text {
  min-height: 34px;
  padding: 0 7px;
  background: transparent;
  color: var(--opebix-info);
}
.OpebixUI_button_small {
  min-height: 34px;
  padding: 0 10px;
  font-size: 11px;
}
.OpebixUI_button_large {
  min-height: 44px;
  padding: 0 17px;
  font-size: 13px;
}
.OpebixUI_buttonIcon {
  display: grid;
  place-items: center;
}
.OpebixUI_buttonIcon svg {
  width: 16px;
  height: 16px;
}
.OpebixUI_iconOnly {
  width: 40px;
  padding: 0;
}
.OpebixUI_statusBadge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 24px;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
}
.OpebixUI_statusBadge:before {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  content: "";
}
.OpebixUI_status_neutral {
  background: var(--opebix-neutral-bg);
  color: var(--opebix-text-muted);
}
.OpebixUI_status_success {
  background: var(--opebix-success-bg);
  color: var(--opebix-success);
}
.OpebixUI_status_warning {
  background: var(--opebix-warning-bg);
  color: var(--opebix-warning);
}
.OpebixUI_status_danger {
  background: var(--opebix-danger-bg);
  color: var(--opebix-danger);
}
.OpebixUI_status_info {
  background: var(--opebix-info-bg);
  color: var(--opebix-info);
}
.OpebixUI_formField {
  display: grid;
  gap: 6px;
  min-width: 0;
}
.OpebixUI_formLabel b {
  margin-left: 3px;
  color: var(--opebix-danger);
}
.OpebixUI_formField :is(input, select, textarea) {
  width: 100%;
  box-sizing: border-box;
  min-height: 40px;
  border: 1px solid var(--opebix-border-strong);
  border-radius: 8px;
  background: #fff;
  padding: 8px 11px;
  color: var(--opebix-text);
  font: inherit;
  font-size: 13px;
  outline: none;
}
.OpebixUI_formField input[type=time] {
  display: block;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  inline-size: 100%;
  min-inline-size: 0;
  max-inline-size: 100%;
  box-sizing: border-box;
  -webkit-appearance: none;
  appearance: none;
}
.OpebixUI_formField input[type=time]::-webkit-date-and-time-value {
  width: 100%;
  min-width: 0;
  min-inline-size: 0;
  max-inline-size: 100%;
}
.OpebixUI_formField textarea {
  min-height: 90px;
  resize: vertical;
}
.OpebixUI_formField :is(input, select, textarea):focus {
  border-color: var(--opebix-focus);
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .12);
}
.OpebixUI_formFieldError :is(input, select, textarea) {
  border-color: var(--opebix-danger-border);
}
.OpebixUI_formHint,
.OpebixUI_formError {
  font-size: 11px;
  line-height: 1.4;
}
.OpebixUI_formHint {
  color: var(--opebix-text-muted);
}
.OpebixUI_formError {
  color: var(--opebix-danger);
}
.OpebixUI_emptyState {
  display: grid;
  justify-items: center;
  gap: 6px;
  padding: 32px 20px;
  color: var(--opebix-text-muted);
  text-align: center;
}
.OpebixUI_emptyState strong {
  color: var(--opebix-text-soft);
  font-size: 14px;
}
.OpebixUI_emptyState p {
  max-width: 520px;
  margin: 0;
  font-size: 12px;
  line-height: 1.55;
}
.OpebixUI_emptyIcon {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: var(--opebix-surface-soft);
  color: var(--opebix-text-muted);
}
.OpebixUI_emptyAction {
  margin-top: 6px;
}
.OpebixUI_skeleton {
  display: block;
  max-width: 100%;
  border-radius: 999px;
  background:
    linear-gradient(
      90deg,
      #e8edf3 0%,
      #f5f7fa 50%,
      #e8edf3 100%);
  background-size: 200% 100%;
  animation: OpebixUI_careShimmer 1.4s linear infinite;
}
@keyframes OpebixUI_careShimmer {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
.OpebixUI_tableScroll {
  overflow: auto;
}
.OpebixUI_responsiveTable table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
}
.OpebixUI_responsiveTable th {
  padding: 9px 14px;
  border-bottom: 1px solid var(--opebix-border);
  background: var(--opebix-surface-soft);
  color: var(--opebix-text-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .07em;
  text-align: left;
  text-transform: uppercase;
  white-space: nowrap;
}
.OpebixUI_responsiveTable td {
  padding: 11px 14px;
  border-bottom: 1px solid var(--opebix-divider);
  color: var(--opebix-text-soft);
  vertical-align: middle;
}
.OpebixUI_responsiveTable tbody tr:last-child td {
  border-bottom: 0;
}
.OpebixUI_clickableRow {
  cursor: pointer;
}
.OpebixUI_clickableRow:hover td {
  background: #f8fbff;
}
.OpebixUI_mobileRows {
  display: none;
}
.OpebixUI_overlay {
  position: fixed;
  inset: 0;
  z-index: 1400;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  overflow: auto;
  padding: max(24px, env(safe-area-inset-top)) 20px max(24px, env(safe-area-inset-bottom));
  background: rgba(15, 23, 42, .54);
  backdrop-filter: blur(2px);
}
.OpebixUI_modal,
.OpebixUI_drawer {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  max-height: calc(100dvh - 48px);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 28px 80px rgba(15, 23, 42, .26);
}
.OpebixUI_modal_small {
  width: min(520px, 100%);
}
.OpebixUI_modal_medium {
  width: min(760px, 100%);
}
.OpebixUI_modal_large {
  width: min(960px, 100%);
}
.OpebixUI_modal_extra-large {
  width: min(1180px, 100%);
}
.OpebixUI_drawer {
  width: min(760px, 96vw);
  height: calc(100dvh - 48px);
  margin-left: auto;
}
.OpebixUI_modalHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px 16px;
  border-bottom: 1px solid var(--opebix-border);
  background: #fff;
}
.OpebixUI_modalHeader h2 {
  margin: 0;
  color: var(--opebix-text);
  font-size: 20px;
  font-weight: 800;
  letter-spacing: -.02em;
}
.OpebixUI_modalHeader p {
  margin: 4px 0 0;
  color: var(--opebix-text-muted);
  font-size: 12px;
  line-height: 1.5;
}
.OpebixUI_modalBody {
  overflow: auto;
  padding: 20px;
}
.OpebixUI_modalFooter {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding: 12px 20px max(12px, env(safe-area-inset-bottom));
  border-top: 1px solid var(--opebix-border);
  background: #fff;
}
@media (max-width: 1099px) {
  .OpebixUI_metricStrip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .OpebixUI_metric:nth-child(2n) {
    border-right: 0;
  }
  .OpebixUI_metric:nth-child(n+3) {
    border-top: 1px solid var(--opebix-border);
  }
}
@media (max-width: 767px) {
  .OpebixUI_pageHeader {
    display: block;
    padding: 17px 16px 14px;
  }
  .OpebixUI_pageHeader h1 {
    font-size: 20px;
  }
  .OpebixUI_pageHeaderActions {
    justify-content: flex-start;
    margin-top: 13px;
  }
  .OpebixUI_pageBody {
    padding: 14px 16px 24px;
  }
  .OpebixUI_tabs {
    width: 100%;
    box-sizing: border-box;
  }
  .OpebixUI_tab {
    min-height: 38px;
  }
  .OpebixUI_toolbar {
    align-items: stretch;
    flex-direction: column;
  }
  .OpebixUI_toolbarLeading,
  .OpebixUI_toolbarTrailing {
    width: 100%;
  }
  .OpebixUI_toolbarTrailing {
    margin-left: 0;
  }
  .OpebixUI_metricStrip {
    grid-template-columns: 1fr;
  }
  .OpebixUI_metric,
  .OpebixUI_metric:nth-child(2n) {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    border-right: 0;
    border-bottom: 1px solid var(--opebix-border);
  }
  .OpebixUI_metric:nth-child(n+3) {
    border-top: 0;
  }
  .OpebixUI_metric:last-child {
    border-bottom: 0;
  }
  .OpebixUI_metricValue {
    grid-column: 2;
    grid-row: 1/3;
    font-size: 22px;
  }
  .OpebixUI_metricNote {
    grid-column: 1;
  }
  .OpebixUI_panelHeader {
    padding: 15px 16px;
  }
  .OpebixUI_panelBody {
    padding: 16px;
  }
  .OpebixUI_responsiveTable:has(.OpebixUI_mobileRows) .OpebixUI_tableScroll {
    display: none;
  }
  .OpebixUI_mobileRows {
    display: grid;
  }
  .OpebixUI_overlay {
    align-items: stretch;
    padding: 0;
  }
  .OpebixUI_modal,
  .OpebixUI_drawer {
    width: 100%;
    max-height: none;
    height: 100dvh;
    border: 0;
    border-radius: 0;
  }
  .OpebixUI_modalHeader {
    padding: 15px 16px 13px;
  }
  .OpebixUI_modalBody {
    padding: 16px;
  }
  .OpebixUI_modalFooter {
    padding: 11px 16px max(11px, env(safe-area-inset-bottom));
  }
  .OpebixUI_modalFooter .OpebixUI_button {
    min-height: 46px;
    flex: 1;
  }
}
@media (max-width: 390px) {
  .OpebixUI_pageHeader,
  .OpebixUI_pageBody {
    padding-left: 12px;
    padding-right: 12px;
  }
  .OpebixUI_panelHeader,
  .OpebixUI_panelBody {
    padding-left: 14px;
    padding-right: 14px;
  }
}

/* src/styles/BookingEditor.module.css */
.BookingEditor_overlay {
  position: fixed;
  z-index: 1200;
  inset: 0;
  display: grid;
  place-items: center;
  padding: max(16px, env(safe-area-inset-top)) 18px max(16px, env(safe-area-inset-bottom));
  background: rgba(16, 24, 40, .58);
}
.BookingEditor_editor {
  display: grid;
  width: min(1180px, 96vw);
  height: min(800px, 92vh);
  overflow: hidden;
  grid-template-rows: auto minmax(0, 1fr) auto;
  border: 1px solid #e2e5ec;
  border-radius: 14px;
  background: #fff;
  color: #101828;
  box-shadow: 0 24px 64px rgba(16, 24, 40, .28);
  font-size: 13px;
}
.BookingEditor_header {
  display: flex;
  min-height: 105px;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 20px 24px;
  border-bottom: 1px solid #e2e5ec;
}
.BookingEditor_heading {
  min-width: 0;
}
.BookingEditor_heading > span,
.BookingEditor_controlLabel,
.BookingEditor_field > span,
.BookingEditor_wideField > span,
.BookingEditor_internal > span {
  display: block;
  margin-bottom: 7px;
  color: #667085;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.BookingEditor_heading > span {
  margin-bottom: 4px;
  color: #0f9f96;
}
.BookingEditor_heading h2 {
  overflow: hidden;
  margin: 0;
  color: #101828;
  font-size: 25px;
  font-weight: 800;
  letter-spacing: -.025em;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.BookingEditor_heading h2.BookingEditor_placeholder {
  color: #98a2b3;
}
.BookingEditor_heading p {
  overflow: hidden;
  margin: 5px 0 0;
  color: #667085;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.BookingEditor_headerActions {
  display: flex;
  align-items: center;
  gap: 12px;
}
.BookingEditor_status {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 3px 10px;
  border: 1px solid #e2e5ec;
  border-radius: 999px;
  background: #fafbfc;
}
.BookingEditor_status i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #f59e0b;
}
.BookingEditor_status select {
  min-height: 34px;
  padding: 0 24px 0 0;
  border: 0;
  background: transparent;
  color: #344054;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
}
.BookingEditor_statusConfirmed i {
  background: #0f9f96;
}
.BookingEditor_statusInprogress i {
  background: #3b82f6;
}
.BookingEditor_statusCompleted i {
  background: #22c55e;
}
.BookingEditor_statusInvoiced i {
  background: #8b5cf6;
}
.BookingEditor_statusCancelled i {
  background: #98a2b3;
}
.BookingEditor_close {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border: 1px solid #e2e5ec;
  border-radius: 10px;
  background: #fff;
  color: #667085;
  font-size: 22px;
  cursor: pointer;
}
.BookingEditor_body {
  display: grid;
  min-width: 0;
  min-height: 0;
  grid-template-columns: minmax(0, 1fr) 352px;
}
.BookingEditor_mainColumn {
  display: grid;
  min-width: 0;
  min-height: 0;
  grid-template-rows: 53px minmax(0, 1fr);
}
.BookingEditor_tabs {
  display: flex;
  gap: 28px;
  padding: 0 26px;
  border-bottom: 1px solid #e2e5ec;
}
.BookingEditor_tabs button {
  position: relative;
  padding: 0 1px;
  border: 0;
  background: transparent;
  color: #667085;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  cursor: pointer;
}
.BookingEditor_tabs .BookingEditor_activeTab {
  color: #101828;
}
.BookingEditor_tabs .BookingEditor_activeTab::after {
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  height: 3px;
  border-radius: 3px 3px 0 0;
  background: #0f9f96;
  content: "";
}
.BookingEditor_formScroll {
  min-height: 0;
  overflow-y: auto;
  padding: 0 26px 32px;
}
.BookingEditor_formSection {
  padding: 23px 0;
  border-bottom: 1px solid #e2e5ec;
}
.BookingEditor_formSection:last-child {
  border: 0;
}
.BookingEditor_formSection h3,
.BookingEditor_workingTitle h3 {
  margin: 0 0 17px;
  color: #101828;
  font-size: 14px;
  font-weight: 800;
}
.BookingEditor_formGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.BookingEditor_field,
.BookingEditor_wideField {
  display: block;
  min-width: 0;
}
.BookingEditor_wideField {
  grid-column: 1/-1;
}
.BookingEditor_field input,
.BookingEditor_field select,
.BookingEditor_wideField input,
.BookingEditor_wideField select,
.BookingEditor_internal textarea,
.BookingEditor_notesGrid textarea,
.BookingEditor_crewRow > select,
.BookingEditor_crewRow > input {
  box-sizing: border-box;
  width: 100%;
  min-height: 41px;
  padding: 9px 11px;
  border: 1px solid #e2e5ec;
  border-radius: 10px;
  background: #fff;
  color: #101828;
  font: inherit;
  font-size: 13.5px;
  outline: 0;
}
.BookingEditor_field input:focus,
.BookingEditor_field select:focus,
.BookingEditor_wideField input:focus,
.BookingEditor_wideField select:focus,
textarea:focus {
  border-color: #0f9f96;
  box-shadow: 0 0 0 3px rgba(15, 159, 150, .12);
}
.BookingEditor_field small {
  display: block;
  margin-top: 6px;
  color: #667085;
  font-size: 11px;
  line-height: 1.4;
}
.BookingEditor_commercialControls {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 18px;
}
.BookingEditor_commercialControls > div {
  min-width: 260px;
}
.BookingEditor_segment {
  display: inline-flex;
  padding: 3px;
  border: 1px solid #e2e5ec;
  border-radius: 10px;
  background: #f2f4f7;
}
.BookingEditor_segment button {
  min-height: 33px;
  padding: 6px 12px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #667085;
  font: inherit;
  font-size: 11.5px;
  font-weight: 700;
  cursor: pointer;
}
.BookingEditor_segment .BookingEditor_segmentActive {
  background: #fff;
  color: #0f9f96;
  box-shadow: 0 1px 3px rgba(16, 24, 40, .12);
}
.BookingEditor_threeGrid {
  display: grid;
  grid-template-columns: 1fr 1fr 1.1fr;
  gap: 14px;
}
.BookingEditor_mono {
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    monospace !important;
}
.BookingEditor_lines {
  margin-top: 20px;
  border-top: 1px solid #e2e5ec;
}
.BookingEditor_lineHead,
.BookingEditor_lineRow {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) 70px 105px 105px 30px;
  gap: 8px;
  align-items: center;
}
.BookingEditor_lineHead {
  padding: 12px 7px 6px;
  color: #667085;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.BookingEditor_lineRow {
  padding: 4px 0;
  border-bottom: 1px solid #f0f2f5;
}
.BookingEditor_lineRow input {
  min-width: 0;
  padding: 8px 7px;
  border: 1px solid transparent;
  border-radius: 7px;
  background: transparent;
  font: inherit;
}
.BookingEditor_lineRow input:hover,
.BookingEditor_lineRow input:focus {
  border-color: #e2e5ec;
  background: #fff;
}
.BookingEditor_lineRow strong {
  text-align: right;
  font-size: 12px;
}
.BookingEditor_lineRow button,
.BookingEditor_remove {
  border: 0;
  background: transparent;
  color: #98a2b3;
  font-size: 18px;
  cursor: pointer;
}
.BookingEditor_lineFooter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 10px;
}
.BookingEditor_lineFooter button,
.BookingEditor_addPicker > button {
  border: 0;
  background: transparent;
  color: #0f9f96;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}
.BookingEditor_lineFooter span {
  color: #667085;
  font-size: 12px;
}
.BookingEditor_lineFooter strong {
  margin-left: 10px;
  color: #101828;
}
.BookingEditor_crewTable {
  border: 1px solid #e2e5ec;
  border-radius: 11px;
}
.BookingEditor_crewHead,
.BookingEditor_crewRow {
  display: grid;
  grid-template-columns: minmax(180px, 1.25fr) minmax(150px, 1fr) minmax(145px, .8fr) 28px;
  gap: 10px;
  align-items: center;
  padding: 9px 11px;
}
.BookingEditor_crewHead {
  border-bottom: 1px solid #e2e5ec;
  background: #fafbfc;
  color: #667085;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.BookingEditor_crewRow {
  border-bottom: 1px solid #edf0f4;
}
.BookingEditor_crewRow:last-child {
  border: 0;
}
.BookingEditor_person {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 9px;
}
.BookingEditor_person > i {
  display: grid;
  width: 30px;
  height: 30px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 50%;
  background: #e7f8f6;
  color: #087f78;
  font-size: 10px;
  font-style: normal;
  font-weight: 850;
}
.BookingEditor_person b {
  display: grid;
  min-width: 0;
  font-size: 12px;
}
.BookingEditor_person small {
  overflow: hidden;
  margin-top: 2px;
  color: #667085;
  font-size: 10px;
  font-weight: 500;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.BookingEditor_crewRow > select,
.BookingEditor_crewRow > input {
  min-height: 36px;
  padding: 6px 8px;
  font-size: 12px;
}
.BookingEditor_crewRow > span:nth-child(3) {
  display: flex;
  align-items: center;
  gap: 5px;
  border: 1px solid transparent;
  border-radius: 9px;
}
.BookingEditor_crewRow > span:nth-child(3) input,
.BookingEditor_dayCrewEdit input,
.BookingEditor_groupTime input {
  min-width: 118px;
  min-height: 36px;
  padding: 6px 8px;
  border: 1px solid #e2e5ec;
  border-radius: 8px;
  font: inherit;
}
.BookingEditor_crewRow .BookingEditor_changedTime {
  padding: 2px;
  border-color: #0f9f96;
}
.BookingEditor_changedTime button,
.BookingEditor_dayCrewEdit button {
  border: 0;
  background: transparent;
  color: #0f9f96;
  font-size: 10px;
  font-weight: 750;
  cursor: pointer;
}
.BookingEditor_addPicker {
  position: relative;
  margin-top: 10px;
}
.BookingEditor_addPicker > div {
  position: absolute;
  z-index: 2;
  top: 30px;
  left: 0;
  display: grid;
  min-width: 240px;
  padding: 6px;
  border: 1px solid #e2e5ec;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(16, 24, 40, .14);
}
.BookingEditor_addPicker > div button {
  padding: 9px;
  border: 0;
  border-radius: 7px;
  background: #fff;
  text-align: left;
  cursor: pointer;
}
.BookingEditor_addPicker > div button:hover {
  background: #f0fcfb;
}
.BookingEditor_addPicker small {
  color: #667085;
}
.BookingEditor_dayCrewGroups {
  display: grid;
  gap: 10px;
}
.BookingEditor_dayCrewGroups article,
.BookingEditor_scheduleGroup {
  overflow: hidden;
  border: 1px solid #e2e5ec;
  border-radius: 11px;
}
.BookingEditor_groupHeader {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 12px;
  border: 0;
  background: #fafbfc;
  color: #344054;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.BookingEditor_groupHeader span {
  display: grid;
  gap: 3px;
}
.BookingEditor_groupHeader b {
  font-size: 12px;
}
.BookingEditor_groupHeader small {
  color: #667085;
  font-size: 10px;
}
.BookingEditor_groupHeader strong {
  color: #667085;
  font-size: 10px;
}
.BookingEditor_dayCrewRow {
  padding: 11px 12px;
  border-top: 1px solid #edf0f4;
}
.BookingEditor_dayCrewSummary {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}
.BookingEditor_dayCrewSummary > span {
  display: grid;
}
.BookingEditor_dayCrewSummary small {
  margin-top: 2px;
  color: #667085;
  font-size: 10px;
}
.BookingEditor_dayCrewSummary > div {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.BookingEditor_dayCrewSummary i {
  padding: 4px 7px;
  border-radius: 999px;
  background: #f2f4f7;
  color: #475467;
  font-size: 9.5px;
  font-style: normal;
}
.BookingEditor_dayCrewSummary > button,
.BookingEditor_dayCrewEdit > button,
.BookingEditor_addDayPeople button {
  border: 0;
  background: transparent;
  color: #0f9f96;
  font: inherit;
  font-size: 10px;
  font-weight: 750;
  cursor: pointer;
}
.BookingEditor_dayCrewEdit {
  display: grid;
  gap: 6px;
  margin-top: 10px;
  padding: 10px;
  border-radius: 9px;
  background: #fafbfc;
}
.BookingEditor_dayCrewEdit > div {
  display: grid;
  grid-template-columns: 1fr 130px 55px 58px;
  gap: 7px;
  align-items: center;
}
.BookingEditor_addDayPeople {
  display: flex !important;
  grid-template-columns: none !important;
  flex-wrap: wrap;
}
.BookingEditor_notesGrid {
  display: grid;
  gap: 18px;
}
.BookingEditor_notesGrid textarea,
.BookingEditor_internal textarea {
  min-height: 115px;
  resize: vertical;
}
.BookingEditor_internal {
  display: block;
  padding: 14px;
  border-radius: 11px;
  background: #fff8e8;
}
.BookingEditor_internal textarea {
  background: #fffdf7;
}
.BookingEditor_assignmentDays {
  display: grid;
  gap: 12px;
}
.BookingEditor_assignmentDay {
  overflow: hidden;
  border: 1px solid #e2e5ec;
  border-radius: 11px;
  background: #fff;
}
.BookingEditor_assignmentDayHead {
  display: grid;
  grid-template-columns: minmax(155px, .8fr) minmax(180px, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px 12px;
  border-bottom: 1px solid #e2e5ec;
  background: #fafbfc;
}
.BookingEditor_assignmentDayHead > label {
  display: flex;
  align-items: center;
  gap: 9px;
  cursor: pointer;
}
.BookingEditor_assignmentDayHead > label span {
  display: grid;
  gap: 2px;
}
.BookingEditor_assignmentDayHead b {
  font-size: 12px;
}
.BookingEditor_assignmentDayHead small {
  color: #667085;
  font-size: 10px;
}
.BookingEditor_assignmentDayHead > select,
.BookingEditor_assignmentFooter select {
  box-sizing: border-box;
  width: 100%;
  min-height: 38px;
  padding: 7px 9px;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  color: #344054;
  font: inherit;
  font-size: 11px;
}
.BookingEditor_assignmentDayHead > div {
  display: flex;
  justify-content: flex-end;
  gap: 6px;
}
.BookingEditor_assignmentDayHead button,
.BookingEditor_assignmentSummary > button,
.BookingEditor_assignmentActions button {
  min-height: 36px;
  padding: 6px 9px;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  color: #475467;
  font: inherit;
  font-size: 10px;
  font-weight: 750;
  cursor: pointer;
}
.BookingEditor_assignmentDayHead button:disabled,
.BookingEditor_assignmentSummary > button:disabled {
  cursor: not-allowed;
  opacity: .45;
}
.BookingEditor_assignmentList {
  display: grid;
}
.BookingEditor_assignmentRow {
  border-bottom: 1px solid #edf0f4;
}
.BookingEditor_assignmentSummary {
  display: grid;
  min-height: 52px;
  grid-template-columns: minmax(170px, .8fr) minmax(0, 1.5fr) auto;
  gap: 12px;
  align-items: center;
  padding: 7px 12px;
}
.BookingEditor_assignmentSummary > span:nth-child(2) {
  display: grid;
  min-width: 0;
  gap: 3px;
}
.BookingEditor_assignmentSummary > span:nth-child(2) > b {
  overflow: hidden;
  color: #344054;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.BookingEditor_assignmentSummary > span:nth-child(2) > small {
  overflow: hidden;
  color: #667085;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.BookingEditor_assignmentEdit {
  display: grid;
  grid-template-columns: 1fr 1fr 120px 120px;
  gap: 10px;
  padding: 12px;
  border-top: 1px solid #edf0f4;
  background: #fafbfc;
}
.BookingEditor_assignmentEdit textarea {
  box-sizing: border-box;
  width: 100%;
  min-height: 72px;
  padding: 9px 11px;
  resize: vertical;
  border: 1px solid #e2e5ec;
  border-radius: 10px;
  background: #fff;
  color: #101828;
  font: inherit;
  font-size: 13px;
}
.BookingEditor_assignmentActions {
  display: flex;
  grid-column: 1/-1;
  justify-content: flex-end;
  gap: 7px;
}
.BookingEditor_assignmentActions .BookingEditor_assignmentRemove {
  border-color: #fecdca;
  color: #b42318;
}
.BookingEditor_assignmentFooter {
  padding: 9px 12px;
  background: #fafbfc;
}
.BookingEditor_assignmentFooter select {
  max-width: 260px;
}
.BookingEditor_rail {
  display: grid;
  min-height: 0;
  grid-template-rows: auto minmax(0, 1fr) auto;
  border-left: 1px solid #e2e5ec;
  background: #fafbfc;
}
.BookingEditor_railTop {
  display: grid;
  gap: 13px;
  padding: 18px;
  border-bottom: 1px solid #e2e5ec;
}
.BookingEditor_railTop > div:first-child {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 800;
}
.BookingEditor_switch,
.BookingEditor_switchOn {
  position: relative;
  width: 38px;
  height: 22px;
  padding: 2px;
  border: 0;
  border-radius: 999px;
  background: #d0d5dd;
  cursor: pointer;
}
.BookingEditor_switch i,
.BookingEditor_switchOn i {
  display: block;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(16, 24, 40, .25);
  transition: .15s;
}
.BookingEditor_switchOn {
  background: #0f9f96;
}
.BookingEditor_switchOn i {
  transform: translateX(16px);
}
.BookingEditor_dateGrid {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
}
.BookingEditor_rail input[type=time] {
  min-width: 118px;
}
.BookingEditor_checks {
  display: grid !important;
  justify-content: start !important;
  gap: 8px;
}
.BookingEditor_checks label {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #475467;
  font-size: 11px;
}
.BookingEditor_working {
  min-height: 0;
  overflow-y: auto;
  padding: 16px;
}
.BookingEditor_workingTitle {
  display: grid;
  gap: 10px;
}
.BookingEditor_workingTitle h3 {
  margin-bottom: 0;
}
.BookingEditor_workingTitle h3 span {
  display: inline-grid;
  min-width: 21px;
  height: 21px;
  place-items: center;
  margin-left: 5px;
  border-radius: 999px;
  background: #e7f8f6;
  color: #087f78;
  font-size: 10px;
}
.BookingEditor_workingTitle .BookingEditor_segment {
  width: 100%;
}
.BookingEditor_workingTitle .BookingEditor_segment button {
  flex: 1;
}
.BookingEditor_scheduleList {
  display: grid;
  gap: 9px;
  margin-top: 13px;
}
.BookingEditor_scheduleGroup > div {
  background: #fff;
}
.BookingEditor_groupTime {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 9px 10px;
  border-top: 1px solid #edf0f4;
  color: #667085;
  font-size: 10px;
}
.BookingEditor_dayCard {
  border-top: 1px solid #edf0f4;
}
.BookingEditor_scheduleGroup > div > .BookingEditor_dayCard:first-child {
  border-top: 0;
}
.BookingEditor_dayCard > button {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 10px;
  border: 0;
  background: #fff;
  color: #344054;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.BookingEditor_dayCard > button span {
  display: grid;
  gap: 2px;
}
.BookingEditor_dayCard b {
  font-size: 11px;
}
.BookingEditor_dayCard small {
  color: #667085;
  font-size: 9.5px;
}
.BookingEditor_dayCard strong {
  font-size: 12px;
}
.BookingEditor_dayCard > div {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 10px 10px;
}
.BookingEditor_dayCard > div input {
  min-height: 36px;
  padding: 6px;
  border: 1px solid #0f9f96;
  border-radius: 8px;
}
.BookingEditor_dayCard > div button {
  border: 0;
  background: transparent;
  color: #0f9f96;
  font-size: 10px;
  font-weight: 750;
  cursor: pointer;
}
.BookingEditor_valueSummary {
  display: grid;
  gap: 3px;
  padding: 15px 18px;
  border-top: 1px solid #e2e5ec;
  background: #fff;
}
.BookingEditor_valueSummary span {
  color: #667085;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.BookingEditor_valueSummary strong {
  font-size: 20px;
}
.BookingEditor_valueSummary small {
  color: #667085;
}
.BookingEditor_footer {
  display: flex;
  min-height: 70px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 13px 20px;
  border-top: 1px solid #e2e5ec;
  background: #fff;
}
.BookingEditor_footer > span {
  color: #667085;
  font-size: 11px;
}
.BookingEditor_footer > span.BookingEditor_dirty {
  color: #b54708;
}
.BookingEditor_footer > span.BookingEditor_dirty::before {
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 7px;
  border-radius: 50%;
  background: #f79009;
  content: "";
}
.BookingEditor_footer > div {
  display: flex;
  gap: 9px;
}
.BookingEditor_footer button {
  min-height: 40px;
  padding: 8px 14px;
  border: 1px solid #e2e5ec;
  border-radius: 10px;
  background: #fff;
  color: #344054;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}
.BookingEditor_footer .BookingEditor_primary {
  border-color: #0f9f96;
  background: #0f9f96;
  color: #fff;
}
.BookingEditor_footer .BookingEditor_primary:disabled {
  border-color: #d0d5dd;
  background: #d0d5dd;
  cursor: not-allowed;
}
.BookingEditor_editor button:focus-visible,
.BookingEditor_editor input:focus-visible,
.BookingEditor_editor select:focus-visible,
.BookingEditor_editor textarea:focus-visible {
  outline: 2px solid #0f9f96;
  outline-offset: 2px;
}
@media (max-width: 900px) {
  .BookingEditor_body {
    grid-template-columns: minmax(0, 1fr) 320px;
  }
  .BookingEditor_editor {
    width: 96vw;
  }
  .BookingEditor_threeGrid {
    grid-template-columns: 1fr 1fr;
  }
  .BookingEditor_threeGrid > *:last-child {
    grid-column: 1/-1;
  }
  .BookingEditor_crewHead,
  .BookingEditor_crewRow {
    grid-template-columns: minmax(150px, 1fr) minmax(135px, .8fr) 135px 25px;
  }
  .BookingEditor_dayCrewSummary {
    grid-template-columns: 100px 1fr;
  }
  .BookingEditor_dayCrewSummary > button {
    grid-column: 2;
  }
}
@media (max-width: 700px) {
  .BookingEditor_editor {
    height: 94vh;
  }
  .BookingEditor_header {
    min-height: 92px;
    padding: 15px;
  }
  .BookingEditor_heading h2 {
    font-size: 20px;
  }
  .BookingEditor_heading p {
    max-width: 62vw;
  }
  .BookingEditor_body {
    display: block;
    overflow-y: auto;
  }
  .BookingEditor_mainColumn {
    min-height: 580px;
  }
  .BookingEditor_formScroll {
    overflow: visible;
    padding: 0 16px 24px;
  }
  .BookingEditor_tabs {
    position: sticky;
    z-index: 3;
    top: 0;
    background: #fff;
  }
  .BookingEditor_rail {
    min-height: 620px;
    border-top: 1px solid #e2e5ec;
    border-left: 0;
  }
  .BookingEditor_formGrid,
  .BookingEditor_threeGrid {
    grid-template-columns: 1fr;
  }
  .BookingEditor_threeGrid > *:last-child {
    grid-column: auto;
  }
  .BookingEditor_crewTable {
    overflow-x: auto;
  }
  .BookingEditor_crewHead,
  .BookingEditor_crewRow {
    min-width: 660px;
  }
  .BookingEditor_footer {
    position: sticky;
    bottom: 0;
  }
  .BookingEditor_footer > span,
  .BookingEditor_footer button:first-child {
    display: none;
  }
}
.BookingEditor_crewHead,
.BookingEditor_crewRow {
  grid-template-columns: minmax(160px, 1.2fr) minmax(135px, 1fr) 112px 112px 28px;
}
.BookingEditor_crewRow > span:nth-child(4) {
  display: flex;
  align-items: center;
  border: 1px solid transparent;
  border-radius: 9px;
}
.BookingEditor_crewRow > span:nth-child(4) input {
  box-sizing: border-box;
  width: 100%;
  min-width: 96px;
  min-height: 36px;
  padding: 6px 8px;
  border: 1px solid #e2e5ec;
  border-radius: 8px;
  font: inherit;
}
.BookingEditor_dayCrewEdit > div {
  grid-template-columns: minmax(120px, 1fr) 118px 118px 52px 58px;
}
.BookingEditor_scheduleActions {
  display: flex;
  gap: 6px;
}
.BookingEditor_scheduleActions button,
.BookingEditor_daySelectSummary > button,
.BookingEditor_dayTimeEdit > button {
  min-height: 36px;
  padding: 6px 9px;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  color: #475467;
  font: inherit;
  font-size: 10px;
  font-weight: 750;
  cursor: pointer;
}
.BookingEditor_scheduleWarning {
  margin: 10px 0;
  padding: 9px 10px;
  border: 1px solid #fedf89;
  border-radius: 9px;
  background: #fffaeb;
  color: #b54708;
  font-size: 11px;
  font-weight: 700;
}
.BookingEditor_daySelectCard {
  overflow: hidden;
  min-height: 44px;
  border: 1px solid #e2e5ec;
  border-radius: 10px;
  background: #f5f6f7;
}
.BookingEditor_daySelected {
  border-color: #84e1d8;
  background: #fff;
}
.BookingEditor_daySelectSummary {
  display: flex;
  min-height: 44px;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 5px 8px;
}
.BookingEditor_daySelectSummary label {
  display: flex;
  min-width: 0;
  flex: 1;
  align-items: center;
  gap: 9px;
  cursor: pointer;
}
.BookingEditor_daySelectSummary label span {
  display: grid;
  gap: 2px;
}
.BookingEditor_daySelectSummary b {
  font-size: 11px;
}
.BookingEditor_daySelectSummary small {
  color: #667085;
  font-size: 9px;
}
.BookingEditor_daySelectSummary > button {
  border: 0;
  color: #087f78;
}
.BookingEditor_dayTimeEdit {
  display: grid;
  grid-template-columns: 1fr 1fr auto;
  gap: 8px;
  align-items: end;
  padding: 9px;
  border-top: 1px solid #e2e5ec;
  background: #fff;
}
.BookingEditor_overnight {
  color: #b54708;
  font-size: 10px;
  font-weight: 700;
}
.BookingEditor_selectedCount {
  color: #087f78;
  font-size: 13px;
}
@media (max-width: 900px) {
  .BookingEditor_crewHead,
  .BookingEditor_crewRow {
    grid-template-columns: minmax(145px, 1fr) minmax(125px, .9fr) 105px 105px 25px;
  }
}
@media (max-width: 700px) {
  .BookingEditor_crewTable {
    overflow: visible;
  }
  .BookingEditor_crewHead {
    display: none;
  }
  .BookingEditor_crewRow {
    position: relative;
    min-width: 0;
    grid-template-columns: 1fr 1fr;
    padding: 12px;
  }
  .BookingEditor_crewRow > .BookingEditor_person {
    grid-column: 1/-1;
  }
  .BookingEditor_crewRow > select,
  .BookingEditor_crewRow > input {
    grid-column: 1/-1;
  }
  .BookingEditor_crewRow > .BookingEditor_remove {
    position: absolute;
    right: 12px;
  }
  .BookingEditor_crewRow > span:nth-child(3),
  .BookingEditor_crewRow > span:nth-child(4) {
    display: grid;
    min-width: 0;
  }
  .BookingEditor_crewRow > span:nth-child(3)::before {
    content: "Start";
  }
  .BookingEditor_crewRow > span:nth-child(4)::before {
    content: "Finish";
  }
  .BookingEditor_crewRow > span:nth-child(3)::before,
  .BookingEditor_crewRow > span:nth-child(4)::before {
    color: #667085;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
  }
  .BookingEditor_crewRow > span:nth-child(3) input,
  .BookingEditor_crewRow > span:nth-child(4) input {
    min-width: 0;
    width: 100%;
  }
  .BookingEditor_dayCrewEdit > div {
    grid-template-columns: 1fr 1fr;
  }
  .BookingEditor_dayCrewEdit > div > *:first-child {
    grid-column: 1/-1;
  }
  .BookingEditor_scheduleActions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .BookingEditor_dayTimeEdit {
    grid-template-columns: 1fr 1fr;
  }
  .BookingEditor_dayTimeEdit > button {
    grid-column: 1/-1;
  }
  .BookingEditor_daySelectSummary {
    min-height: 52px;
  }
}
@media (max-width: 700px) {
  .BookingEditor_assignmentDayHead {
    grid-template-columns: 1fr;
  }
  .BookingEditor_assignmentDayHead > div {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .BookingEditor_assignmentDayHead button {
    min-height: 44px;
  }
  .BookingEditor_assignmentSummary {
    grid-template-columns: 1fr auto;
  }
  .BookingEditor_assignmentSummary > span:nth-child(2) {
    grid-column: 1/-1;
    grid-row: 2;
  }
  .BookingEditor_assignmentSummary > button {
    grid-column: 2;
    grid-row: 1;
    min-height: 44px;
  }
  .BookingEditor_assignmentEdit {
    grid-template-columns: 1fr 1fr;
  }
  .BookingEditor_assignmentActions {
    display: grid;
    grid-template-columns: 1fr;
  }
  .BookingEditor_assignmentActions button,
  .BookingEditor_assignmentFooter select {
    max-width: none;
    min-height: 44px;
  }
  .BookingEditor_assignmentFooter select {
    width: 100%;
  }
}

/* src/styles/Dashboard.module.css */
.Dashboard_root {
  display: grid;
  gap: 16px;
}
.Dashboard_redesignRoot {
  display: grid;
  gap: 16px;
  color: #263755;
}
.Dashboard_redesignHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 52px;
}
.Dashboard_greeting h1 {
  margin: 0;
  color: #263755;
  font-size: 22px;
  font-weight: 900;
  letter-spacing: -0.02em;
  line-height: 1.2;
}
.Dashboard_greeting p {
  margin: 5px 0 0;
  color: #9aa7ba;
  font-size: 13px;
  font-weight: 700;
}
.Dashboard_headerActions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}
.Dashboard_popoverAnchor {
  position: relative;
}
.Dashboard_weatherPill,
.Dashboard_notificationButton {
  border: 1px solid #e4e9f1;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
  color: #334155;
  cursor: pointer;
  font-family: inherit;
}
.Dashboard_weatherPill {
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border-radius: 999px;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 800;
}
.Dashboard_weatherPill:hover,
.Dashboard_notificationButton:hover {
  border-color: #c4cfdc;
}
.Dashboard_weatherPill strong {
  color: #263755;
  font-size: 14px;
  font-weight: 900;
}
.Dashboard_weatherPill em {
  border-radius: 999px;
  padding: 3px 8px;
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  white-space: nowrap;
}
.Dashboard_weatherPill b {
  color: #94a3b8;
  font-size: 10px;
}
.Dashboard_weatherPill .Dashboard_icon {
  width: 16px;
  height: 16px;
  color: #64748b;
}
.Dashboard_notificationButton {
  position: relative;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  padding: 0;
}
.Dashboard_notificationButton .Dashboard_icon {
  width: 17px;
  height: 17px;
  color: #64748b;
}
.Dashboard_notificationButton > span:last-child {
  position: absolute;
  top: -6px;
  right: -6px;
  min-width: 16px;
  height: 16px;
  display: grid;
  place-items: center;
  box-sizing: border-box;
  border: 2px solid #fff;
  border-radius: 999px;
  background: #ef4444;
  color: #fff;
  padding: 0 3px;
  font-size: 9px;
  font-weight: 900;
  line-height: 1;
}
.Dashboard_weatherPopover,
.Dashboard_notificationDropdown {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 80;
  overflow: hidden;
  border: 1px solid #e4e9f1;
  background: #fff;
  box-shadow: 0 20px 60px rgba(15, 23, 42, 0.18);
  animation: Dashboard_redesignPopover 0.15s ease;
}
.Dashboard_weatherPopover {
  width: 300px;
  border-radius: 16px;
}
.Dashboard_notificationDropdown {
  width: 340px;
  border-radius: 14px;
}
@keyframes Dashboard_redesignPopover {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.Dashboard_weatherTop {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px 12px;
}
.Dashboard_weatherIdentity {
  display: flex;
  align-items: center;
  gap: 10px;
}
.Dashboard_weatherIdentity .Dashboard_weatherSvgSmall {
  width: 44px;
  height: 36px;
}
.Dashboard_weatherIdentity div {
  display: grid;
  gap: 3px;
}
.Dashboard_weatherIdentity strong {
  color: #263755;
  font-size: 28px;
  font-weight: 900;
  line-height: 1;
}
.Dashboard_weatherIdentity span {
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
}
.Dashboard_weatherTop > em {
  border-radius: 999px;
  padding: 4px 9px;
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
}
.Dashboard_redesignWeatherStats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid #e4e9f1;
  border-bottom: 1px solid #e4e9f1;
}
.Dashboard_redesignWeatherStats div {
  display: grid;
  justify-items: center;
  gap: 3px;
  padding: 12px 8px;
  border-right: 1px solid #e4e9f1;
}
.Dashboard_redesignWeatherStats div:last-child {
  border-right: 0;
}
.Dashboard_redesignWeatherStats strong {
  color: #263755;
  font-size: 13px;
  font-weight: 900;
}
.Dashboard_redesignWeatherStats span {
  color: #a7b3c5;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.Dashboard_redesignForecast {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  padding: 12px 14px;
}
.Dashboard_redesignForecast > div {
  min-width: 0;
  display: grid;
  justify-items: center;
  gap: 3px;
  padding: 5px 2px;
  border-radius: 8px;
}
.Dashboard_redesignForecast > div:hover {
  background: #f8fafc;
}
.Dashboard_redesignForecast b {
  color: #263755;
  font-size: 10px;
  font-weight: 900;
}
.Dashboard_redesignForecast .Dashboard_rainyDay b {
  color: #3b82f6;
}
.Dashboard_redesignForecast .Dashboard_weatherSvgSmall {
  width: 27px;
  height: 22px;
}
.Dashboard_redesignForecast span,
.Dashboard_redesignForecast em {
  color: #64748b;
  font-size: 9px;
  font-style: normal;
  font-weight: 700;
  white-space: nowrap;
}
.Dashboard_redesignForecast em {
  color: #94a3b8;
}
.Dashboard_weatherFooter {
  border-top: 1px solid #f1f5f9;
  color: #9aa7ba;
  padding: 8px 14px 11px;
  font-size: 10px;
  font-weight: 700;
  text-align: center;
}
.Dashboard_notificationHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 13px 16px 10px;
  border-bottom: 1px solid #e4e9f1;
}
.Dashboard_notificationHeader > strong {
  color: #263755;
  font-size: 13px;
  font-weight: 900;
}
.Dashboard_notificationHeader button {
  width: 24px;
  height: 24px;
  border: 1px solid #e4e9f1;
  border-radius: 6px;
  background: transparent;
  color: #64748b;
  cursor: pointer;
}
.Dashboard_notificationItem {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
  padding: 12px 16px;
  border-bottom: 1px solid #e4e9f1;
}
.Dashboard_notificationItem:last-child {
  border-bottom: 0;
}
.Dashboard_notificationWarning {
  background: #fffbeb;
}
.Dashboard_notificationDanger {
  background: #fef2f2;
}
.Dashboard_notificationIcon {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border: 1px solid #fde68a;
  border-radius: 8px;
  color: #b45309;
}
.Dashboard_notificationDanger .Dashboard_notificationIcon {
  border-color: #fecaca;
  color: #b91c1c;
}
.Dashboard_notificationIcon .Dashboard_icon {
  width: 16px;
  height: 16px;
}
.Dashboard_notificationItem > div:nth-child(2) {
  min-width: 0;
}
.Dashboard_notificationItem strong {
  color: #263755;
  font-size: 12px;
  font-weight: 900;
}
.Dashboard_notificationItem p {
  margin: 3px 0 0;
  color: #64748b;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.4;
}
.Dashboard_notificationItem > button {
  align-self: center;
  border: 1px solid currentColor;
  border-radius: 6px;
  background: transparent;
  color: #b45309;
  cursor: pointer;
  padding: 4px 9px;
  font-size: 10px;
  font-weight: 800;
}
.Dashboard_notificationDanger > button {
  color: #b91c1c;
}
.Dashboard_redesignCard,
.Dashboard_kpiStrip {
  border: 1px solid #e4e9f1;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}
.Dashboard_redesignCard {
  border-radius: 12px;
  padding: 18px 20px;
}
.Dashboard_weekCard {
  min-width: 0;
}
.Dashboard_kpiStrip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border-radius: 14px;
}
.Dashboard_kpiStat {
  position: relative;
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 7px;
  border: 0;
  border-right: 1px solid #e4e9f1;
  background: #fff;
  color: inherit;
  padding: 22px 26px;
  text-align: left;
  font-family: inherit;
}
.Dashboard_kpiStat:last-child {
  border-right: 0;
}
button.Dashboard_kpiStat {
  cursor: pointer;
}
button.Dashboard_kpiStat:hover {
  background: #f8fafc;
}
.Dashboard_kpiLabel {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #a7b3c5;
  font-size: 10.5px;
  font-weight: 900;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}
.Dashboard_kpiLabel .Dashboard_icon {
  width: 13px;
  height: 13px;
  color: currentColor;
}
.Dashboard_kpiLabel .Dashboard_icon svg {
  width: 13px;
  height: 13px;
  stroke-width: 2;
}
.Dashboard_kpiValue {
  min-width: 0;
  overflow: hidden;
  color: #263755;
  font-size: clamp(25px, 2.35vw, 34px);
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.Dashboard_kpiTeal {
  color: #0f9f96;
}
.Dashboard_kpiRed {
  color: #dc2626;
}
.Dashboard_kpiSub {
  color: #334155;
  font-size: 12.5px;
  font-weight: 700;
}
.Dashboard_kpiNote {
  color: #9aa7ba;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
}
.Dashboard_kpiArrow {
  position: absolute;
  top: 22px;
  right: 16px;
  color: #c4cfdc;
  font-size: 11px;
  opacity: 0;
  transition: opacity 0.12s ease;
}
button.Dashboard_kpiStat:hover .Dashboard_kpiArrow {
  opacity: 1;
}
.Dashboard_redesignSectionHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}
.Dashboard_redesignSectionHeader > div:first-child {
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 5px;
}
.Dashboard_redesignSectionHeader strong {
  color: #263755;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  white-space: nowrap;
}
.Dashboard_redesignSectionHeader span {
  min-width: 0;
  overflow: hidden;
  color: #9aa7ba;
  font-size: 11px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.Dashboard_redesignPeriodNav {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}
.Dashboard_redesignPeriodNav button {
  min-width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border: 1px solid #dbe3ef;
  border-radius: 7px;
  background: #fff;
  color: #334155;
  cursor: pointer;
  padding: 0 8px;
  font-family: inherit;
  font-size: 11px;
  font-weight: 800;
}
.Dashboard_redesignPeriodNav button:hover {
  background: #f8fafc;
}
.Dashboard_unassignedAlert {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  margin-bottom: 10px;
  border: 1px dashed #fde68a;
  border-radius: 8px;
  background: #fffbeb;
  color: #92400e;
  padding: 8px 12px;
  font-size: 11px;
  font-weight: 700;
}
.Dashboard_unassignedAlert > span:first-child {
  width: 17px;
  height: 17px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: #f59e0b;
  color: #fff;
  font-size: 10px;
  font-weight: 900;
  flex-shrink: 0;
}
.Dashboard_unassignedAlert > span:last-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.Dashboard_weekScroll {
  overflow-x: auto;
  padding-bottom: 3px;
}
.Dashboard_redesignWeekGrid {
  min-width: 820px;
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}
.Dashboard_dayColumn {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.Dashboard_dayHeader {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 4px 6px 8px;
}
.Dashboard_dayHeader span {
  color: #64748b;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}
.Dashboard_dayHeader strong {
  color: #334155;
  font-size: 18px;
  font-weight: 900;
  line-height: 1;
}
.Dashboard_todayColumn .Dashboard_dayHeader {
  border-bottom: 2px solid #16c7b7;
}
.Dashboard_todayColumn .Dashboard_dayHeader span,
.Dashboard_todayColumn .Dashboard_dayHeader strong {
  color: #0f9f96;
}
.Dashboard_weekendColumn .Dashboard_dayHeader {
  border-bottom: 1px solid #f1f5f9;
}
.Dashboard_weekendColumn .Dashboard_dayHeader span,
.Dashboard_weekendColumn .Dashboard_dayHeader strong {
  color: #c4cfdc;
}
.Dashboard_emptyDay {
  color: #c4cfdc;
  padding: 4px 6px;
  font-size: 10px;
  font-weight: 700;
}
.Dashboard_jobChip {
  position: relative;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
  overflow: hidden;
  border: 1px solid #e4e9f1;
  border-radius: 8px;
  background: #f8fafc;
  color: inherit;
  cursor: pointer;
  padding: 6px 8px 6px 12px;
  text-align: left;
  font-family: inherit;
  transition:
    background 0.1s,
    border-color 0.1s,
    box-shadow 0.1s;
}
.Dashboard_jobChip::before {
  content: "";
  position: absolute;
  top: -1px;
  bottom: -1px;
  left: -1px;
  width: 3.5px;
  border-radius: 8px 0 0 8px;
  background: var(--chip-accent, #94a3b8);
}
.Dashboard_jobChip:hover:not(:disabled) {
  border-color: #d1d9e3;
  background: #fff;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.09);
}
.Dashboard_jobChip:disabled {
  cursor: default;
}
.Dashboard_jobClient,
.Dashboard_jobActivity {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.Dashboard_jobClient {
  color: #263755;
  font-size: 11px;
  font-weight: 800;
}
.Dashboard_jobActivity {
  color: #64748b;
  font-size: 9.5px;
  font-weight: 600;
}
.Dashboard_jobFooter {
  min-height: 16px;
  display: flex;
  align-items: center;
  gap: 3px;
  margin-top: 1px;
}
.Dashboard_jobFooter i {
  width: 16px;
  height: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border-radius: 50%;
  box-shadow: 0 0 0 1.5px #fff;
  color: #fff;
  font-size: 6.5px;
  font-style: normal;
  font-weight: 800;
}
.Dashboard_jobFooter .Dashboard_moreCrew {
  background: #64748b;
  font-size: 7px;
}
.Dashboard_jobFooter em {
  border-radius: 4px;
  background: #fffbeb;
  color: #b45309;
  padding: 1px 5px;
  font-size: 9px;
  font-style: normal;
  font-weight: 800;
}
.Dashboard_jobFooter b {
  margin-left: auto;
  color: #9aa7ba;
  font-size: 9px;
  font-style: italic;
  font-weight: 700;
}
.Dashboard_redesignBottomGrid {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 14px;
  align-items: start;
}
.Dashboard_redesignClientList {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}
.Dashboard_redesignClientRow {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
  padding: 0;
  text-align: left;
  font-family: inherit;
}
.Dashboard_redesignClientRow:disabled {
  cursor: default;
}
.Dashboard_redesignClientAvatar {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 7px;
  color: #fff;
  font-size: 10px;
  font-weight: 900;
}
.Dashboard_redesignClientAvatar img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  background: #fff;
}
.Dashboard_redesignClientInfo {
  min-width: 0;
  display: grid;
  gap: 2px;
}
.Dashboard_redesignClientInfo strong {
  overflow: hidden;
  color: #263755;
  font-size: 13px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.Dashboard_redesignClientInfo span {
  color: #9aa7ba;
  font-size: 11px;
  font-weight: 600;
}
.Dashboard_redesignClientValue {
  color: #263755;
  font-size: 14px;
  font-weight: 900;
  white-space: nowrap;
}
.Dashboard_redesignClientProgress {
  grid-column: 1 / -1;
  height: 3px;
  overflow: hidden;
  margin-top: -4px;
  border-radius: 999px;
  background: #f1f5f9;
}
.Dashboard_redesignClientProgress div {
  height: 100%;
  border-radius: inherit;
  background: rgba(8, 117, 209, 0.5);
}
.Dashboard_redesignHoursHero {
  display: flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
  margin: 10px 0 6px;
}
.Dashboard_redesignHoursHero strong {
  color: #263755;
  font-size: 30px;
  font-weight: 900;
  letter-spacing: -0.02em;
  line-height: 1;
}
.Dashboard_redesignHoursHero span {
  color: #9aa7ba;
  font-size: 12px;
  font-weight: 700;
}
.Dashboard_redesignHoursTrend {
  min-height: 96px;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
  align-items: end;
  margin-top: 8px;
}
.Dashboard_redesignHoursColumn {
  min-width: 0;
  display: grid;
  grid-template-rows: auto 64px auto;
  gap: 4px;
}
.Dashboard_redesignHoursColumn > span,
.Dashboard_redesignHoursColumn > b {
  overflow: hidden;
  color: #64748b;
  font-size: 9px;
  font-weight: 900;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.Dashboard_redesignHoursColumn > b {
  color: #9aa7ba;
  font-size: 9.5px;
}
.Dashboard_redesignHoursColumn > div {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  overflow: hidden;
  border-radius: 6px;
  background: #f1f5f9;
  padding: 4px;
}
.Dashboard_redesignHoursColumn i {
  width: 100%;
  min-height: 4px;
  display: block;
  border-radius: 5px 5px 2px 2px;
  background: #c8d9eb;
}
.Dashboard_currentHours i {
  background: #0f9f96;
}
.Dashboard_redesignEmpty {
  min-height: 126px;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 7px;
  border: 1px dashed #dbe3ef;
  border-radius: 9px;
  background: #fbfdff;
  color: #94a3b8;
  padding: 16px;
  text-align: center;
}
.Dashboard_redesignEmpty strong {
  color: #263755;
  font-size: 14px;
  font-weight: 900;
}
.Dashboard_redesignEmpty span {
  font-size: 12px;
  font-weight: 700;
}
.Dashboard_redesignRoot button:focus-visible {
  outline: 3px solid rgba(22, 199, 183, 0.3);
  outline-offset: 2px;
}
@media (max-width: 1100px) {
  .Dashboard_kpiStrip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .Dashboard_kpiStat:nth-child(2) {
    border-right: 0;
  }
  .Dashboard_kpiStat:nth-child(-n+2) {
    border-bottom: 1px solid #e4e9f1;
  }
}
@media (max-width: 820px) {
  .Dashboard_redesignBottomGrid {
    grid-template-columns: 1fr;
  }
  .Dashboard_weatherPill > span {
    max-width: 150px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}
@media (max-width: 640px) {
  .Dashboard_redesignRoot {
    gap: 12px;
  }
  .Dashboard_redesignHeader {
    align-items: flex-start;
    flex-direction: column;
  }
  .Dashboard_greeting h1 {
    font-size: 20px;
  }
  .Dashboard_headerActions {
    width: 100%;
  }
  .Dashboard_headerActions .Dashboard_popoverAnchor:first-child {
    min-width: 0;
    flex: 1;
  }
  .Dashboard_weatherPill {
    width: 100%;
    justify-content: flex-start;
  }
  .Dashboard_weatherPill > span {
    min-width: 0;
    flex: 1;
    text-align: left;
  }
  .Dashboard_weatherPopover,
  .Dashboard_notificationDropdown {
    position: fixed;
    top: 108px;
    right: 14px;
    left: 14px;
    width: auto;
    max-height: calc(100vh - 130px);
    overflow-y: auto;
  }
  .Dashboard_kpiStrip {
    grid-template-columns: 1fr;
  }
  .Dashboard_kpiStat,
  .Dashboard_kpiStat:nth-child(2) {
    border-right: 0;
    border-bottom: 1px solid #e4e9f1;
    padding: 19px 20px;
  }
  .Dashboard_kpiStat:last-child {
    border-bottom: 0;
  }
  .Dashboard_kpiValue {
    font-size: 30px;
  }
  .Dashboard_redesignCard {
    padding: 16px;
  }
  .Dashboard_unassignedAlert {
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .Dashboard_unassignedAlert > span:last-child {
    width: 100%;
    white-space: normal;
  }
  .Dashboard_redesignWeekGrid {
    min-width: 760px;
  }
  .Dashboard_redesignSectionHeader {
    align-items: flex-start;
  }
  .Dashboard_redesignSectionHeader > div:first-child {
    align-items: flex-start;
    flex-direction: column;
  }
}
.Dashboard_grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 14px;
}
.Dashboard_dashboardLowerGrid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 14px;
  align-items: start;
}
.Dashboard_workloadArea {
  grid-column: span 8;
  min-width: 0;
}
.Dashboard_weatherArea {
  grid-column: span 4;
  min-width: 0;
}
.Dashboard_hoursArea,
.Dashboard_clientsArea {
  grid-column: span 6;
  min-width: 0;
}
.Dashboard_card {
  background: #fff;
  border: 1px solid #e4e9f1;
  border-radius: 10px;
  padding: 18px 20px;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}
.Dashboard_rangeCard {
  padding: 10px 12px;
}
.Dashboard_mini {
  grid-column: span 3;
  display: grid;
  gap: 8px;
  align-content: start;
  min-height: 116px;
}
.Dashboard_large {
  grid-column: span 8;
}
.Dashboard_medium {
  grid-column: span 4;
}
.Dashboard_eyebrow {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  color: #a7b3c5;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.Dashboard_icon {
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #b8c2cf;
}
.Dashboard_icon svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.Dashboard_mainValue {
  color: #263755;
  font-size: 28px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
}
.Dashboard_graphValue {
  color: #263755;
  font-size: 26px;
  font-weight: 900;
  line-height: 1;
}
.Dashboard_delta {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  padding: 3px 8px;
  border-radius: 6px;
  background: #edf8f2;
  color: #15803d;
  font-size: 12px;
  font-weight: 800;
}
.Dashboard_negative {
  background: #fef2f2;
  color: #b91c1c;
}
.Dashboard_note {
  color: #9aa7ba;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.35;
}
.Dashboard_metricHeader {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 8px;
}
.Dashboard_controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.Dashboard_rangeTitle {
  color: #263755;
  font-size: 15px;
  font-weight: 900;
}
.Dashboard_rangeSub {
  margin-top: 3px;
  color: #a7b3c5;
  font-size: 12px;
  font-weight: 800;
}
.Dashboard_controlCluster {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: nowrap;
  min-width: 0;
}
.Dashboard_navButton {
  width: 32px;
  height: 32px;
  border: 1px solid #dfe5ed;
  border-radius: 8px;
  background: #fff;
  color: #64748b;
  font-size: 13px;
  font-weight: 900;
  cursor: pointer;
}
.Dashboard_chipGroup {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  padding: 3px;
  border: 1px solid #e4e9f1;
  border-radius: 9px;
  background: #f8fafc;
}
.Dashboard_chip {
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #7d8ba0;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
  padding: 7px 14px;
}
.Dashboard_chipActive {
  background: #fff;
  color: #263755;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08);
}
.Dashboard_rangePicker {
  position: relative;
  width: min(360px, calc(100vw - 96px));
  max-width: 100%;
  min-width: 0;
}
.Dashboard_rangeButton {
  width: 100%;
  min-height: 38px;
  border: 1px solid #dbe3ef;
  border-radius: 10px;
  background: #fff;
  color: #0f172a;
  cursor: pointer;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 14px;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  text-align: left;
  font-family: inherit;
}
.Dashboard_rangeButton span {
  font-size: 12px;
  font-weight: 900;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.Dashboard_rangeButton strong {
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}
.Dashboard_rangeButton em {
  color: #0875d1;
  font-style: normal;
  font-weight: 900;
  text-align: right;
}
.Dashboard_rangeMenu {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  z-index: 60;
  width: min(398px, calc(100vw - 40px));
  overflow: hidden;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(15, 23, 42, 0.18);
}
.Dashboard_rangeMenuItem {
  width: 100%;
  border: 0;
  border-left: 3px solid transparent;
  background: #fff;
  cursor: pointer;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 20px;
  align-items: center;
  padding: 12px 18px;
  text-align: left;
  font-family: inherit;
}
.Dashboard_rangeMenuItem + .Dashboard_rangeMenuItem {
  border-top: 1px solid #eef2f7;
}
.Dashboard_rangeMenuItem span {
  color: #0f172a;
  font-size: 14px;
  font-weight: 800;
}
.Dashboard_rangeMenuItem strong {
  color: #64748b;
  font-size: 14px;
  font-weight: 700;
  white-space: nowrap;
}
.Dashboard_rangeMenuItemActive {
  border-left-color: #0875d1;
  background: #f8fafc;
}
.Dashboard_rangeMenuItemActive span {
  color: #0875d1;
  font-weight: 900;
}
@media (max-width: 560px) {
  .Dashboard_controls {
    align-items: stretch;
  }
  .Dashboard_controlCluster {
    width: 100%;
  }
  .Dashboard_rangePicker {
    flex: 1 1 auto;
    width: auto;
  }
  .Dashboard_rangeButton {
    grid-template-columns: minmax(0, 1fr) 14px;
  }
  .Dashboard_rangeButton strong {
    grid-column: 1 / -1;
    white-space: normal;
  }
  .Dashboard_rangeMenuItem {
    grid-template-columns: 1fr;
    gap: 4px;
  }
  .Dashboard_rangeMenuItem strong {
    white-space: normal;
  }
}
.Dashboard_salesChart {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 10px;
  margin-top: 22px;
  min-height: 290px;
}
.Dashboard_axis {
  display: grid;
  grid-template-rows: repeat(5, 1fr);
  padding: 0 0 28px;
}
.Dashboard_axisLabel {
  color: #a7b3c5;
  font-size: 13px;
  font-weight: 700;
  transform: translateY(-8px);
}
.Dashboard_plot {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: end;
  gap: 26px;
  padding: 0 0 28px;
  border-bottom: 1px solid #d5dde8;
  background:
    linear-gradient(
      to bottom,
      #edf1f6 1px,
      transparent 1px);
  background-size: 100% 25%;
}
.Dashboard_monthGroup {
  display: grid;
  align-items: end;
  grid-template-columns: repeat(3, minmax(10px, 34px));
  justify-content: center;
  gap: 7px;
  height: 248px;
  position: relative;
}
.Dashboard_barTrack {
  height: 100%;
  display: flex;
  align-items: flex-end;
}
.Dashboard_salesBar {
  width: 100%;
  min-height: 5px;
  border-radius: 5px 5px 2px 2px;
  cursor: pointer;
  transition: opacity 0.15s ease, transform 0.15s ease;
}
.Dashboard_salesBar:hover,
.Dashboard_weekBar:hover,
.Dashboard_statusRow:hover,
.Dashboard_clientRow:hover {
  opacity: 0.9;
}
.Dashboard_booked {
  background:
    linear-gradient(
      180deg,
      #5b9bd3 0%,
      #3f82b9 100%);
}
.Dashboard_pending {
  background: #c8e0f2;
}
.Dashboard_invoiced {
  background:
    linear-gradient(
      180deg,
      #263755 0%,
      #1f2d49 100%);
}
.Dashboard_mutedBar {
  background: #eef2f6;
}
.Dashboard_monthLabel {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -26px;
  color: #9aa7ba;
  font-size: 15px;
  font-weight: 700;
  text-align: center;
}
.Dashboard_legend {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
  margin-top: 22px;
}
.Dashboard_legendItem {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #8d9bae;
  font-size: 13px;
  font-weight: 700;
}
.Dashboard_legendDot {
  width: 9px;
  height: 9px;
  border-radius: 3px;
}
.Dashboard_weekBars {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 10px;
  align-items: end;
  height: 130px;
  margin-top: 16px;
}
.Dashboard_weekCol {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  min-width: 0;
}
.Dashboard_weekTrack {
  width: min(26px, 100%);
  height: 102px;
  display: flex;
  align-items: flex-end;
  border-radius: 5px;
  background: #f1f3f7;
}
.Dashboard_weekBar {
  width: 100%;
  min-height: 6px;
  border-radius: 5px;
  background:
    linear-gradient(
      180deg,
      #4f90c7 0%,
      #263755 100%);
  cursor: pointer;
}
.Dashboard_weekValue {
  min-height: 14px;
  color: #5b9bd3;
  font-size: 10px;
  font-weight: 900;
}
.Dashboard_weekLabel {
  color: #a7b3c5;
  font-size: 9px;
  font-weight: 800;
}
.Dashboard_donutShell {
  display: grid;
  grid-template-columns: 136px 1fr;
  gap: 22px;
  align-items: center;
  margin-top: 24px;
}
.Dashboard_donut {
  width: 118px;
  height: 118px;
  border-radius: 50%;
  position: relative;
  margin: 0 auto;
}
.Dashboard_donut::after {
  content: "";
  position: absolute;
  inset: 18px;
  background: #fff;
  border-radius: 50%;
}
.Dashboard_donutCenter {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.Dashboard_donutCenter strong {
  color: #263755;
  font-size: 22px;
  line-height: 1;
}
.Dashboard_donutCenter span {
  margin-top: 5px;
  color: #9aa7ba;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.Dashboard_statusList {
  display: grid;
  gap: 10px;
}
.Dashboard_statusRow {
  display: grid;
  grid-template-columns: 12px minmax(0, 1fr) auto auto;
  gap: 10px;
  align-items: center;
  cursor: pointer;
}
.Dashboard_statusDot {
  width: 9px;
  height: 9px;
  border-radius: 3px;
}
.Dashboard_statusName {
  color: #263755;
  font-size: 14px;
  font-weight: 700;
}
.Dashboard_statusCount,
.Dashboard_statusPct {
  color: #9aa7ba;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}
.Dashboard_statusPct {
  color: #263755;
  font-weight: 900;
}
.Dashboard_clientList {
  display: grid;
  gap: 12px;
  margin-top: 12px;
}
.Dashboard_clientRow {
  display: grid;
  grid-template-columns: 24px 28px minmax(0, 1fr) auto auto;
  gap: 10px;
  align-items: center;
  cursor: pointer;
}
.Dashboard_clientAvatar {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #4f90c7;
  border: 1px solid #dbe3ef;
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  overflow: hidden;
  padding: 2px;
  box-sizing: border-box;
}
.Dashboard_clientAvatar img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
.Dashboard_clientName {
  min-width: 0;
  color: #263755;
  font-size: 14px;
  font-weight: 800;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.Dashboard_clientBookings {
  color: #a7b3c5;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}
.Dashboard_clientValue {
  color: #263755;
  font-size: 14px;
  font-weight: 900;
  white-space: nowrap;
}
.Dashboard_clientProgress {
  grid-column: 3 / -1;
  height: 4px;
  border-radius: 99px;
  overflow: hidden;
  background: #edf1f5;
}
.Dashboard_clientProgressFill {
  height: 100%;
  border-radius: inherit;
  background: #5b9bd3;
}
.Dashboard_emptyNote {
  color: #9aa7ba;
  font-size: 13px;
  font-weight: 700;
}
.Dashboard_commandBar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px;
}
.Dashboard_commandControls {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.Dashboard_segmented {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px;
  border: 1px solid #dfe5ed;
  border-radius: 10px;
  background: #f8fafc;
}
.Dashboard_segmentButton,
.Dashboard_todayButton {
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #64748b;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  min-height: 32px;
  padding: 7px 12px;
}
.Dashboard_segmentButtonActive {
  background: #fff;
  color: #0f172a;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08);
}
.Dashboard_todayButton {
  border: 1px solid #dfe5ed;
  background: #fff;
}
.Dashboard_warningStrip {
  border-color: #fed7aa;
  background: #fff7ed;
  color: #9a3412;
  font-size: 13px;
  font-weight: 800;
  padding: 12px 16px;
}
.Dashboard_kpiGrid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
}
.Dashboard_kpiCard {
  display: grid;
  align-content: start;
  gap: 8px;
  min-height: 112px;
  text-align: left;
  font: inherit;
}
button.Dashboard_kpiCard,
button.Dashboard_clientRow {
  cursor: pointer;
}
button.Dashboard_kpiCard,
button.Dashboard_clientRow {
  font: inherit;
}
button.Dashboard_clientRow {
  width: 100%;
  border: 0;
  background: transparent;
  padding: 0;
  text-align: left;
}
button.Dashboard_kpiCard:hover {
  border-color: #b8c7d9;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
}
button.Dashboard_clientRow:hover .Dashboard_clientName {
  color: #0875d1;
}
.Dashboard_warningCard {
  border-color: #f7c99d;
  background: #fffaf5;
}
.Dashboard_panelHeader {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  margin-bottom: 14px;
}
.Dashboard_workloadHeatmap {
  display: grid;
  gap: 7px;
}
.Dashboard_workloadStrip {
  grid-template-columns: repeat(7, minmax(0, 1fr));
}
.Dashboard_workloadMonth {
  grid-template-columns: repeat(7, minmax(0, 1fr));
}
.Dashboard_workloadTile {
  position: relative;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  color: #263755;
  cursor: pointer;
  display: grid;
  gap: 3px;
  min-height: 90px;
  overflow: hidden;
  padding: 9px;
  text-align: left;
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease,
    transform 0.15s ease;
}
.Dashboard_workloadTile:hover {
  border-color: #8fb6d8;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.1);
  transform: translateY(-1px);
}
.Dashboard_workloadMuted {
  opacity: 0.46;
}
.Dashboard_workloadFocus {
  box-shadow: inset 0 0 0 2px #0875d1;
}
.Dashboard_workloadToday::after {
  content: "";
  position: absolute;
  right: 8px;
  top: 8px;
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #ef4444;
}
.Dashboard_workloadDow {
  color: #64748b;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.Dashboard_workloadTile strong {
  color: #0f172a;
  font-size: 20px;
  font-weight: 900;
  line-height: 1;
}
.Dashboard_workloadMeta {
  color: #263755;
  font-size: 12px;
  font-weight: 900;
}
.Dashboard_workloadSub {
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.25;
}
.Dashboard_weatherRiskDot {
  position: absolute;
  bottom: 8px;
  right: 8px;
  width: 9px;
  height: 9px;
  border-radius: 999px;
  border: 2px solid #fff;
}
.Dashboard_heat0 {
  background: #f8fafc;
}
.Dashboard_heat1 {
  background: #eaf6ef;
}
.Dashboard_heat2 {
  background: #d4eedf;
}
.Dashboard_heat3 {
  background: #a9dcc7;
}
.Dashboard_heat4 {
  background: #72b7ad;
}
.Dashboard_heatLegend {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 12px;
  color: #94a3b8;
  font-size: 11px;
  font-weight: 900;
  justify-content: flex-end;
}
.Dashboard_heatLegend i {
  width: 18px;
  height: 8px;
  border-radius: 999px;
  display: block;
}
.Dashboard_riskPill {
  border-radius: 999px;
  display: inline-flex;
  justify-content: center;
  min-width: 0;
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.2;
  text-align: center;
  white-space: normal;
}
.Dashboard_riskLow {
  background: #ecfdf5;
  color: #047857;
}
.Dashboard_riskWatch {
  background: #fffbeb;
  color: #b45309;
}
.Dashboard_riskMedium {
  background: #fff7ed;
  color: #c2410c;
}
.Dashboard_riskHigh {
  background: #fef2f2;
  color: #b91c1c;
}
.Dashboard_weatherStack {
  display: grid;
  gap: 9px;
  margin-top: 10px;
}
.Dashboard_weatherHero {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  justify-items: start;
  text-align: left;
}
.Dashboard_weatherCenter {
  display: grid;
  justify-items: start;
  gap: 3px;
  min-width: 0;
}
.Dashboard_weatherMain {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.Dashboard_weatherSvg {
  width: 64px;
  height: 50px;
  display: block;
}
.Dashboard_weatherSvgSmall {
  width: 26px;
  height: 20px;
  display: block;
}
.Dashboard_weatherTemp {
  color: #263755;
  font-size: 32px;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1;
}
.Dashboard_weatherCondition {
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
  margin: 0 0 4px;
}
.Dashboard_weatherUpdated,
.Dashboard_weatherSiteNote {
  color: #94a3b8;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.35;
  text-align: left;
}
.Dashboard_weatherSiteNote {
  color: #64748b;
}
.Dashboard_weatherStats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}
.Dashboard_weatherStats span {
  border: 1px solid #e4e9f1;
  border-radius: 8px;
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
  padding: 7px 5px;
  text-align: center;
}
.Dashboard_weatherDays {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 5px;
}
.Dashboard_weatherDay {
  display: grid;
  justify-items: center;
  gap: 3px;
  align-items: start;
  border: 1px solid #edf1f5;
  border-radius: 8px;
  color: #64748b;
  font-size: 10px;
  font-weight: 800;
  min-width: 0;
  padding: 5px 3px;
}
.Dashboard_weatherDay strong {
  color: #263755;
}
.Dashboard_weatherDay em {
  color: #94a3b8;
  font-style: normal;
  display: none;
}
.Dashboard_cardHeader {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}
.Dashboard_cardNav {
  display: flex;
  gap: 6px;
  flex-shrink: 0;
}
.Dashboard_cardPeriodTabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 4px;
  margin: 14px 0;
  padding: 3px;
  border: 1px solid #e4e9f1;
  border-radius: 9px;
  background: #f8fafc;
}
.Dashboard_periodTab {
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #64748b;
  cursor: pointer;
  font: inherit;
  font-size: 11px;
  font-weight: 900;
  min-height: 30px;
  padding: 6px 7px;
}
.Dashboard_periodTabActive {
  background: #fff;
  color: #263755;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08);
}
.Dashboard_clientRank {
  width: 24px;
  height: 24px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #eef6fb;
  color: #0875d1;
  font-size: 12px;
  font-weight: 900;
}
.Dashboard_emptyClientRow {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-height: 42px;
  color: #94a3b8;
  font-size: 13px;
  font-weight: 800;
}
.Dashboard_clientEmptyState {
  display: grid;
  justify-items: center;
  gap: 7px;
  min-height: 144px;
  align-content: center;
  border: 1px dashed #dbe3ef;
  border-radius: 9px;
  background: #fbfdff;
  color: #94a3b8;
  text-align: center;
  padding: 18px;
}
.Dashboard_clientEmptyState strong {
  color: #263755;
  font-size: 14px;
  font-weight: 900;
}
.Dashboard_clientEmptyState span {
  color: #8da0b8;
  font-size: 12px;
  font-weight: 800;
}
.Dashboard_clientEmptyIcon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: #eef6fb;
  color: #0875d1;
  font-size: 16px;
  font-weight: 900;
}
.Dashboard_cardFootnote {
  margin-top: 12px;
  color: #94a3b8;
  font-size: 12px;
  font-weight: 800;
}
.Dashboard_hoursHero {
  display: grid;
  gap: 6px;
  margin: 8px 0 12px;
}
.Dashboard_hoursTrend {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
  align-items: end;
  min-height: 112px;
}
.Dashboard_hoursTrendCol {
  display: grid;
  grid-template-rows: auto 72px auto;
  gap: 6px;
  min-width: 0;
}
.Dashboard_hoursTrendCol span {
  color: #64748b;
  font-size: 10px;
  font-weight: 900;
  text-align: center;
  white-space: nowrap;
}
.Dashboard_hoursTrendCol div {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  border-radius: 7px;
  background: #f1f5f9;
  overflow: hidden;
  padding: 5px;
}
.Dashboard_hoursTrendCol i {
  display: block;
  width: 100%;
  border-radius: 6px 6px 3px 3px;
  background: #5b9bd3;
}
.Dashboard_hoursTrendCol b {
  color: #94a3b8;
  font-size: 10px;
  font-weight: 900;
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.Dashboard_tooltip {
  position: fixed;
  z-index: 1400;
  pointer-events: none;
  transform: translate(-50%, -110%);
  min-width: 140px;
  padding: 10px 12px;
  border-radius: 12px;
  background: #111827;
  color: #fff;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.22);
}
.Dashboard_tooltipLabel {
  margin-bottom: 4px;
  color: #cbd5e1;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.Dashboard_tooltipValue {
  color: #fff;
  font-size: 14px;
  font-weight: 900;
}
.Dashboard_tooltipSub {
  margin-top: 3px;
  color: #cbd5e1;
  font-size: 11px;
}
@media (max-width: 1100px) {
  .Dashboard_dashboardLowerGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .Dashboard_workloadArea {
    grid-column: span 2;
  }
  .Dashboard_weatherArea,
  .Dashboard_hoursArea {
    grid-column: span 1;
  }
  .Dashboard_clientsArea {
    grid-column: span 2;
  }
  .Dashboard_kpiGrid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .Dashboard_mini {
    grid-column: span 6;
  }
  .Dashboard_large,
  .Dashboard_medium {
    grid-column: span 12;
  }
}
@media (max-width: 900px) {
  .Dashboard_dashboardLowerGrid {
    grid-template-columns: 1fr;
  }
  .Dashboard_workloadArea,
  .Dashboard_weatherArea,
  .Dashboard_hoursArea,
  .Dashboard_clientsArea {
    grid-column: 1;
  }
  .Dashboard_commandBar,
  .Dashboard_weatherMain,
  .Dashboard_cardHeader {
    align-items: stretch;
    flex-direction: column;
  }
  .Dashboard_commandControls {
    justify-content: flex-start;
  }
  .Dashboard_donutShell {
    grid-template-columns: 1fr;
  }
  .Dashboard_workloadTile {
    min-height: 92px;
    padding: 8px;
  }
  .Dashboard_workloadTile strong {
    font-size: 18px;
  }
}
@media (max-width: 640px) {
  .Dashboard_card {
    padding: 18px;
  }
  .Dashboard_kpiGrid {
    grid-template-columns: 1fr;
  }
  .Dashboard_segmented {
    width: 100%;
  }
  .Dashboard_segmentButton {
    flex: 1 1 0;
  }
  .Dashboard_commandControls {
    width: 100%;
  }
  .Dashboard_mini {
    grid-column: span 12;
  }
  .Dashboard_salesChart {
    grid-template-columns: 44px minmax(0, 1fr);
    min-height: 240px;
  }
  .Dashboard_plot {
    gap: 12px;
  }
  .Dashboard_monthGroup {
    grid-template-columns: repeat(3, minmax(6px, 18px));
    gap: 4px;
    height: 210px;
  }
  .Dashboard_axisLabel,
  .Dashboard_monthLabel {
    font-size: 11px;
  }
  .Dashboard_clientRow {
    grid-template-columns: 24px 28px minmax(0, 1fr) auto;
  }
  .Dashboard_clientBookings {
    display: none;
  }
  .Dashboard_weatherStats {
    grid-template-columns: 1fr;
  }
  .Dashboard_weatherHero {
    grid-template-columns: 58px minmax(0, 1fr);
  }
  .Dashboard_weatherSvg {
    width: 58px;
    height: 46px;
  }
  .Dashboard_weatherDay {
    grid-template-columns: 1fr;
  }
  .Dashboard_weatherDay em {
    display: none;
  }
  .Dashboard_hoursTrend {
    gap: 5px;
  }
  .Dashboard_hoursTrendCol span {
    display: none;
  }
}

/* src/styles/SalesForms.module.css */
.SalesForms_salesFormOverlay {
  position: fixed;
  inset: 0;
  z-index: 1100;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 20px;
  background: rgba(15, 23, 42, .54);
  backdrop-filter: blur(2px);
}
.SalesForms_salesFormCard {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  width: min(680px, 100%);
  max-height: min(90vh, 920px);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .4);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 28px 80px rgba(15, 23, 42, .28);
}
.SalesForms_salesFormCardMedium {
  width: min(680px, 100%);
}
.SalesForms_salesFormCardLarge {
  width: min(900px, 100%);
}
.SalesForms_salesFormCardExtraLarge {
  width: min(1080px, 100%);
}
.SalesForms_salesFormHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px 16px;
  border-bottom: 1px solid #eaecf0;
  background: #fff;
}
.SalesForms_salesFormHeading {
  min-width: 0;
}
.SalesForms_salesFormTitle {
  margin: 0;
  color: #172033;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: -.01em;
}
.SalesForms_salesFormSubtitle {
  margin: 5px 0 0;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}
.SalesForms_salesFormClose {
  appearance: none;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 8px;
  background: #f2f4f7;
  color: #475467;
  cursor: pointer;
}
.SalesForms_salesFormClose:hover {
  border-color: #d0d5dd;
  background: #fff;
  color: #172033;
}
.SalesForms_salesFormClose:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
}
.SalesForms_salesFormClose > span {
  width: 17px;
  height: 17px;
}
.SalesForms_salesFormBody {
  min-height: 0;
  overflow-y: auto;
  padding: 18px 20px 22px;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}
.SalesForms_salesFormFooter {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-height: 64px;
  padding: 12px 20px;
  border-top: 1px solid #eaecf0;
  background: #f8fafc;
}
.SalesForms_salesFormFooter button {
  min-width: 92px;
}
.SalesForms_salesForm {
  display: grid;
  gap: 18px;
}
.SalesForms_salesFormSection {
  display: grid;
  gap: 12px;
}
.SalesForms_salesFormSection + .SalesForms_salesFormSection {
  padding-top: 17px;
  border-top: 1px solid #eaecf0;
}
.SalesForms_salesFormSectionHead {
  display: grid;
  gap: 3px;
}
.SalesForms_salesFormSectionTitle {
  margin: 0;
  color: #344054;
  font-size: 13px;
  font-weight: 800;
}
.SalesForms_salesFormSectionDescription {
  margin: 0;
  color: #667085;
  font-size: 11px;
  line-height: 1.45;
}
.SalesForms_salesFormGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 14px;
}
.SalesForms_salesFormGridThree {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.SalesForms_salesFormFull {
  grid-column: 1/-1;
}
.SalesForms_salesFormField {
  display: grid;
  align-content: start;
  gap: 6px;
  min-width: 0;
}
.SalesForms_salesFormLabel {
  display: flex;
  align-items: baseline;
  gap: 4px;
  color: #344054;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
}
.SalesForms_salesFormRequired {
  color: #d92d20;
}
.SalesForms_salesFormHint {
  color: #667085;
  font-size: 10px;
  line-height: 1.4;
}
.SalesForms_salesFormError {
  color: #b42318;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.4;
}
.SalesForms_salesFormField input:not([type=checkbox]),
.SalesForms_salesFormField select,
.SalesForms_salesFormField textarea,
.SalesForms_salesQuoteLine input,
.SalesForms_salesContactSearch {
  appearance: none;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  color: #172033;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .03);
  font: inherit;
  font-size: 13px;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.SalesForms_salesFormField input:not([type=checkbox]),
.SalesForms_salesFormField select,
.SalesForms_salesContactSearch {
  height: 38px;
  padding: 0 11px;
}
.SalesForms_salesFormField select {
  padding-right: 32px;
  background-image:
    linear-gradient(
      45deg,
      transparent 50%,
      #667085 50%),
    linear-gradient(
      135deg,
      #667085 50%,
      transparent 50%);
  background-position: calc(100% - 15px) 16px, calc(100% - 10px) 16px;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}
.SalesForms_salesFormField textarea {
  min-height: 92px;
  padding: 10px 11px;
  line-height: 1.45;
  resize: vertical;
}
.SalesForms_salesFormField input:focus,
.SalesForms_salesFormField select:focus,
.SalesForms_salesFormField textarea:focus,
.SalesForms_salesQuoteLine input:focus,
.SalesForms_salesContactSearch:focus {
  outline: 0;
  border-color: #528bff;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .12);
}
.SalesForms_salesFieldInvalid input,
.SalesForms_salesFieldInvalid select,
.SalesForms_salesFieldInvalid textarea {
  border-color: #f04438;
}
.SalesForms_salesFieldInvalid input:focus,
.SalesForms_salesFieldInvalid select:focus,
.SalesForms_salesFieldInvalid textarea:focus {
  box-shadow: 0 0 0 3px rgba(240, 68, 56, .12);
}
.SalesForms_salesInputAffix {
  position: relative;
}
.SalesForms_salesInputAffix > span {
  position: absolute;
  z-index: 1;
  top: 50%;
  transform: translateY(-50%);
  color: #667085;
  font-size: 12px;
  pointer-events: none;
}
.SalesForms_salesInputAffix > span:first-child {
  left: 11px;
}
.SalesForms_salesInputAffix > span:last-child {
  right: 11px;
}
.SalesForms_salesInputAffix > span:first-child + input {
  padding-left: 27px;
}
.SalesForms_salesInputAffix input:first-child {
  padding-right: 30px;
}
.SalesForms_salesFormNotice {
  display: flex;
  gap: 9px;
  padding: 11px 12px;
  border: 1px solid #b9e6fe;
  border-radius: 9px;
  background: #f0f9ff;
  color: #175cd3;
  font-size: 12px;
  line-height: 1.45;
}
.SalesForms_salesFormSubmitError {
  padding: 10px 12px;
  border: 1px solid #fecdca;
  border-radius: 9px;
  background: #fef3f2;
  color: #b42318;
  font-size: 12px;
  font-weight: 650;
}
.SalesForms_salesCheckbox {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  padding: 11px 12px;
  border: 1px solid #d0d5dd;
  border-radius: 9px;
  background: #fff;
  color: #344054;
  font-size: 12px;
  line-height: 1.4;
  cursor: pointer;
}
.SalesForms_salesCheckbox input {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  margin: 1px 0 0;
  accent-color: #2563eb;
}
.SalesForms_salesContactPicker {
  position: relative;
}
.SalesForms_salesContactControl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  min-height: 42px;
  padding: 5px 8px;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  cursor: text;
}
.SalesForms_salesContactControl:focus-within {
  border-color: #528bff;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .12);
}
.SalesForms_salesContactChip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  max-width: 210px;
  padding: 4px 5px 4px 8px;
  border-radius: 999px;
  background: #eff6ff;
  color: #175cd3;
  font-size: 11px;
  font-weight: 650;
}
.SalesForms_salesContactChip > span:first-child {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesForms_salesContactChip button {
  display: grid;
  place-items: center;
  width: 18px;
  height: 18px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #175cd3;
  cursor: pointer;
}
.SalesForms_salesContactChip button:hover {
  background: #dbeafe;
}
.SalesForms_salesContactChip button > span {
  width: 11px;
  height: 11px;
}
.SalesForms_salesContactSearch {
  flex: 1 1 150px !important;
  height: 28px !important;
  padding: 0 4px !important;
  border: 0 !important;
  box-shadow: none !important;
}
.SalesForms_salesContactOptions {
  position: absolute;
  z-index: 40;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  max-height: 230px;
  overflow: auto;
  padding: 6px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 16px 35px rgba(15, 23, 42, .16);
}
.SalesForms_salesContactOption {
  display: flex;
  align-items: center;
  gap: 9px;
  width: 100%;
  padding: 8px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #344054;
  font: inherit;
  font-size: 12px;
  text-align: left;
  cursor: pointer;
}
.SalesForms_salesContactOption:hover,
.SalesForms_salesContactOptionSelected {
  background: #eff6ff;
  color: #175cd3;
}
.SalesForms_salesContactOption input {
  width: 15px;
  height: 15px;
  accent-color: #2563eb;
}
.SalesForms_salesContactEmpty {
  padding: 14px;
  color: #667085;
  font-size: 11px;
  text-align: center;
}
.SalesForms_salesCompanyPicker {
  position: relative;
}
.SalesForms_salesCompanyControl {
  position: relative;
}
.SalesForms_salesCompanyControl > input {
  padding-right: 38px !important;
}
.SalesForms_salesCompanyClear {
  position: absolute;
  top: 50%;
  right: 7px;
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  padding: 0;
  transform: translateY(-50%);
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #667085;
  cursor: pointer;
}
.SalesForms_salesCompanyClear:hover {
  background: #f2f4f7;
  color: #172033;
}
.SalesForms_salesCompanyClear > span {
  width: 14px;
  height: 14px;
}
.SalesForms_salesCompanyOptions {
  position: absolute;
  z-index: 45;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  max-height: 230px;
  overflow: auto;
  padding: 6px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 16px 35px rgba(15, 23, 42, .16);
}
.SalesForms_salesCompanyOption {
  display: block;
  width: 100%;
  padding: 9px 10px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #344054;
  font: inherit;
  font-size: 12px;
  text-align: left;
  cursor: pointer;
}
.SalesForms_salesCompanyOption:hover,
.SalesForms_salesCompanyOptionSelected {
  background: #eff6ff;
  color: #175cd3;
}
.SalesForms_salesFieldActions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 7px;
}
.SalesForms_salesFieldActions button {
  appearance: none;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 28px;
  padding: 4px 8px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #175cd3;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}
.SalesForms_salesFieldActions button:hover:not(:disabled) {
  background: #eff6ff;
}
.SalesForms_salesFieldActions button:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 1px;
}
.SalesForms_salesFieldActions button:disabled {
  color: #98a2b3;
  cursor: not-allowed;
}
.SalesForms_salesFieldActions button > span {
  width: 13px;
  height: 13px;
}
.SalesForms_salesInlineWarning {
  display: grid;
  gap: 8px;
  margin-top: 8px;
  padding: 9px 10px;
  border: 1px solid #fedf89;
  border-radius: 8px;
  background: #fffaeb;
  color: #7a2e0e;
  font-size: 11px;
  line-height: 1.4;
}
.SalesForms_salesInlineWarning > div {
  display: flex;
  justify-content: flex-end;
  gap: 6px;
}
.SalesForms_salesInlineWarning button {
  appearance: none;
  padding: 5px 8px;
  border: 1px solid #fdb022;
  border-radius: 6px;
  background: #fff;
  color: #7a2e0e;
  font: inherit;
  font-size: 10px;
  font-weight: 750;
  cursor: pointer;
}
.SalesForms_salesInlineWarning button:last-child {
  background: #b54708;
  color: #fff;
}
.SalesForms_salesQuoteLines {
  display: grid;
  gap: 8px;
}
.SalesForms_salesQuoteLineHeader,
.SalesForms_salesQuoteLine {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) 82px 110px 112px 36px;
  gap: 8px;
  align-items: center;
}
.SalesForms_salesQuoteLineHeader {
  padding: 0 2px;
  color: #667085;
  font-size: 10px;
  font-weight: 750;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.SalesForms_salesQuoteLineHeader span:nth-child(4) {
  text-align: right;
}
.SalesForms_salesQuoteLine {
  padding: 9px;
  border: 1px solid #e4e7ec;
  border-radius: 10px;
  background: #f8fafc;
}
.SalesForms_salesQuoteLine input {
  height: 36px;
  padding: 0 9px;
}
.SalesForms_salesQuoteLineAmount {
  text-align: right;
  color: #344054;
  font-size: 12px;
  font-weight: 750;
  font-variant-numeric: tabular-nums;
}
.SalesForms_salesQuoteRemove {
  appearance: none;
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 7px;
  background: transparent;
  color: #b42318;
  cursor: pointer;
}
.SalesForms_salesQuoteRemove:hover {
  border-color: #fecdca;
  background: #fef3f2;
}
.SalesForms_salesQuoteRemove > span {
  width: 15px;
  height: 15px;
}
.SalesForms_salesQuoteAdd {
  justify-self: start;
}
.SalesForms_salesQuoteSummary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 220px;
  gap: 20px;
  align-items: start;
  padding: 14px;
  border: 1px solid #e4e7ec;
  border-radius: 11px;
  background: #f8fafc;
}
.SalesForms_salesQuoteTotals {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px 20px;
  color: #475467;
  font-size: 12px;
}
.SalesForms_salesQuoteTotals strong {
  text-align: right;
  color: #172033;
  font-variant-numeric: tabular-nums;
}
.SalesForms_salesQuoteGrandTotal {
  padding-top: 9px;
  border-top: 1px solid #d0d5dd;
  font-size: 14px;
  font-weight: 800;
}
.SalesForms_salesQuoteHero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 14px;
  border: 1px solid #e4e7ec;
  border-radius: 11px;
  background: #f8fafc;
}
.SalesForms_salesQuoteHeroValue {
  color: #172033;
  font-size: 24px;
  font-weight: 850;
  font-variant-numeric: tabular-nums;
}
.SalesForms_salesQuoteScope {
  margin: 0;
  white-space: pre-wrap;
  color: #344054;
  font-size: 12px;
  line-height: 1.55;
}
.SalesForms_salesQuoteHistory {
  color: #667085;
  font-size: 11px;
}
.SalesForms_salesKpiDrilldown {
  display: grid;
  gap: 16px;
}
.SalesForms_salesKpiSummary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid #e4e7ec;
  border-radius: 11px;
  background: #fff;
}
.SalesForms_salesKpiSummary > span {
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 12px 14px;
  border-right: 1px solid #eaecf0;
}
.SalesForms_salesKpiSummary > span:last-child {
  border-right: 0;
}
.SalesForms_salesKpiSummary small {
  overflow: hidden;
  color: #667085;
  font-size: 10px;
  font-weight: 750;
  text-overflow: ellipsis;
  text-transform: uppercase;
  letter-spacing: .035em;
  white-space: nowrap;
}
.SalesForms_salesKpiSummary strong {
  color: #172033;
  font-size: 17px;
  font-weight: 850;
  font-variant-numeric: tabular-nums;
}
.SalesForms_salesKpiSummary em {
  overflow: hidden;
  color: #98a2b3;
  font-size: 9px;
  font-style: normal;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesForms_salesKpiPositive {
  color: #067647 !important;
}
.SalesForms_salesKpiNegative {
  color: #b42318 !important;
}
.SalesForms_salesKpiMonth {
  overflow: hidden;
  border: 1px solid #e4e7ec;
  border-radius: 11px;
  background: #fff;
}
.SalesForms_salesKpiMonth > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 48px;
  padding: 8px 12px;
  border-bottom: 1px solid #e4e7ec;
  background: #f8fafc;
}
.SalesForms_salesKpiMonth > header > div {
  display: grid;
  gap: 2px;
}
.SalesForms_salesKpiMonth > header > div:first-child strong {
  color: #344054;
  font-size: 12px;
}
.SalesForms_salesKpiMonth > header > div:first-child span {
  color: #667085;
  font-size: 10px;
}
.SalesForms_salesKpiMonth > header > div:last-child {
  display: flex;
  align-items: center;
  gap: 14px;
  color: #667085;
  font-size: 10px;
  font-variant-numeric: tabular-nums;
}
.SalesForms_salesKpiMonth > header > div:last-child strong {
  color: #172033;
  font-size: 14px;
}
.SalesForms_salesKpiTableWrap {
  width: 100%;
  overflow-x: auto;
}
.SalesForms_salesKpiTable {
  width: 100%;
  min-width: 760px;
  border-collapse: collapse;
  table-layout: fixed;
}
.SalesForms_salesKpiTable th {
  height: 32px;
  padding: 6px 10px;
  border-bottom: 1px solid #eaecf0;
  background: #fff;
  color: #667085;
  font-size: 10px;
  font-weight: 750;
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .035em;
}
.SalesForms_salesKpiTable th:nth-child(1) {
  width: 96px;
}
.SalesForms_salesKpiTable th:nth-child(2) {
  width: 230px;
}
.SalesForms_salesKpiTable th:nth-child(4) {
  width: 140px;
  text-align: right;
}
.SalesForms_salesKpiTable td {
  height: 42px;
  padding: 6px 10px;
  border-bottom: 1px solid #f0f2f5;
  color: #344054;
  font-size: 12px;
  vertical-align: middle;
}
.SalesForms_salesKpiTable tr:last-child td {
  border-bottom: 0;
}
.SalesForms_salesKpiTable td:last-child {
  text-align: right;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}
.SalesForms_salesKpiRecord,
.SalesForms_salesKpiRecordButton {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  color: #344054;
  text-align: left;
}
.SalesForms_salesKpiRecord > span:first-child,
.SalesForms_salesKpiRecordButton > span:first-child {
  flex: 0 0 auto;
  width: 17px;
  height: 17px;
  color: #667085;
}
.SalesForms_salesKpiRecord > span:last-child,
.SalesForms_salesKpiRecordButton > span:last-child {
  display: grid;
  gap: 1px;
  min-width: 0;
}
.SalesForms_salesKpiRecord strong,
.SalesForms_salesKpiRecord small,
.SalesForms_salesKpiRecordButton strong,
.SalesForms_salesKpiRecordButton small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesForms_salesKpiRecord strong,
.SalesForms_salesKpiRecordButton strong {
  font-size: 11px;
  font-weight: 750;
}
.SalesForms_salesKpiRecord small,
.SalesForms_salesKpiRecordButton small {
  color: #98a2b3;
  font-size: 9px;
}
.SalesForms_salesKpiRecordButton {
  appearance: none;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  font: inherit;
  cursor: pointer;
}
.SalesForms_salesKpiRecordButton:hover strong {
  color: #175cd3;
  text-decoration: underline;
}
.SalesForms_salesKpiRecordButton:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 3px;
  border-radius: 4px;
}
.SalesForms_salesKpiRecordButton > span:first-child {
  color: #2563eb;
}
.SalesForms_salesKpiDetails {
  display: block;
  overflow: hidden;
  color: #667085;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.SalesForms_salesKpiAdjustment {
  background: #fffcf5;
}
.SalesForms_salesKpiAdjustment .SalesForms_salesKpiRecord > span:first-child {
  color: #b54708;
}
.SalesForms_salesKpiLoading {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 260px;
  color: #667085;
  font-size: 12px;
}
.SalesForms_salesKpiLoading > span {
  width: 20px;
  height: 20px;
  border: 2px solid #d0d5dd;
  border-top-color: #2563eb;
  border-radius: 50%;
  animation: SalesForms_salesKpiSpin .7s linear infinite;
}
.SalesForms_salesKpiError {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 90px;
  padding: 14px;
  border: 1px solid #fecdca;
  border-radius: 10px;
  background: #fef3f2;
}
.SalesForms_salesKpiError > div {
  display: grid;
  gap: 3px;
}
.SalesForms_salesKpiError strong {
  color: #b42318;
  font-size: 12px;
}
.SalesForms_salesKpiError span {
  color: #7a271a;
  font-size: 11px;
}
.SalesForms_salesKpiEmpty {
  display: grid;
  place-items: center;
  gap: 5px;
  min-height: 220px;
  padding: 24px;
  color: #667085;
  text-align: center;
}
.SalesForms_salesKpiEmpty strong {
  color: #344054;
  font-size: 13px;
}
.SalesForms_salesKpiEmpty span {
  font-size: 11px;
}
.SalesForms_salesKpiFooterTotal {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-right: auto;
  color: #344054;
}
.SalesForms_salesKpiFooterTotal > span:first-child {
  width: 18px;
  height: 18px;
  color: #2563eb;
}
.SalesForms_salesKpiFooterTotal > span:last-child {
  display: grid;
  gap: 1px;
}
.SalesForms_salesKpiFooterTotal small {
  color: #667085;
  font-size: 9px;
  font-weight: 750;
  text-transform: uppercase;
  letter-spacing: .035em;
}
.SalesForms_salesKpiFooterTotal strong {
  font-size: 16px;
  font-weight: 850;
  font-variant-numeric: tabular-nums;
}
@keyframes SalesForms_salesKpiSpin {
  to {
    transform: rotate(360deg);
  }
}
.SalesForms_salesDrawer {
  position: fixed;
  inset: 0;
  z-index: 1100;
  background: rgba(15, 23, 42, .46);
}
.SalesForms_salesDrawerCard {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  width: min(760px, 96vw);
  height: 100%;
  margin-left: auto;
  background: #fff;
  box-shadow: -24px 0 55px rgba(15, 23, 42, .22);
}
.SalesForms_salesDrawerBody {
  min-height: 0;
  overflow-y: auto;
  padding: 18px 20px;
}
.SalesForms_salesDrawerFooter {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding: 12px 20px;
  border-top: 1px solid #eaecf0;
  background: #f8fafc;
}
.SalesForms_salesDiscardBackdrop {
  position: absolute;
  inset: 0;
  z-index: 3;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(15, 23, 42, .32);
}
.SalesForms_salesDiscardCard {
  width: min(390px, 100%);
  padding: 18px;
  border: 1px solid #e4e7ec;
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 20px 50px rgba(15, 23, 42, .24);
}
.SalesForms_salesDiscardCard h3 {
  margin: 0;
  color: #172033;
  font-size: 16px;
}
.SalesForms_salesDiscardCard p {
  margin: 7px 0 16px;
  color: #667085;
  font-size: 12px;
  line-height: 1.5;
}
.SalesForms_salesDiscardActions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}
@media (max-width: 900px) {
  .SalesForms_salesKpiSummary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .SalesForms_salesKpiSummary > span {
    border-bottom: 1px solid #eaecf0;
  }
  .SalesForms_salesKpiSummary > span:nth-child(3) {
    border-right: 0;
  }
  .SalesForms_salesKpiSummary > span:nth-last-child(-n+2) {
    border-bottom: 0;
  }
}
@media (max-width: 760px) {
  .SalesForms_salesFormOverlay {
    align-items: stretch;
    padding: 10px;
  }
  .SalesForms_salesFormCard {
    width: 100%;
    max-height: none;
    height: calc(100dvh - 20px);
    border-radius: 13px;
  }
  .SalesForms_salesFormHeader {
    padding: 15px 16px 13px;
  }
  .SalesForms_salesFormBody {
    padding: 16px;
  }
  .SalesForms_salesFormFooter {
    padding: 11px 16px max(11px, env(safe-area-inset-bottom));
  }
  .SalesForms_salesFormGrid,
  .SalesForms_salesFormGridThree {
    grid-template-columns: 1fr;
  }
  .SalesForms_salesFormFull {
    grid-column: auto;
  }
  .SalesForms_salesQuoteLineHeader {
    display: none;
  }
  .SalesForms_salesQuoteLine {
    grid-template-columns: 1fr 1fr 42px;
    padding: 10px;
  }
  .SalesForms_salesQuoteLine input:first-child {
    grid-column: 1/-1;
  }
  .SalesForms_salesQuoteLineAmount {
    align-self: center;
  }
  .SalesForms_salesQuoteSummary {
    grid-template-columns: 1fr;
  }
  .SalesForms_salesQuoteHero {
    display: grid;
  }
  .SalesForms_salesKpiMonth > header {
    align-items: flex-start;
  }
  .SalesForms_salesKpiMonth > header > div:last-child {
    display: grid;
    justify-items: end;
    gap: 2px;
  }
  .SalesForms_salesKpiTable {
    min-width: 0;
  }
  .SalesForms_salesKpiTable thead {
    display: none;
  }
  .SalesForms_salesKpiTable,
  .SalesForms_salesKpiTable tbody,
  .SalesForms_salesKpiTable tr,
  .SalesForms_salesKpiTable td {
    display: block;
    width: 100%;
    box-sizing: border-box;
  }
  .SalesForms_salesKpiTable tr {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr) 120px;
    padding: 9px 10px;
    border-bottom: 1px solid #eaecf0;
  }
  .SalesForms_salesKpiTable tr:last-child {
    border-bottom: 0;
  }
  .SalesForms_salesKpiTable td {
    height: auto;
    padding: 2px 4px;
    border: 0;
  }
  .SalesForms_salesKpiTable td:nth-child(1) {
    grid-column: 1;
  }
  .SalesForms_salesKpiTable td:nth-child(2) {
    grid-column: 2;
  }
  .SalesForms_salesKpiTable td:nth-child(3) {
    grid-column: 1/3;
    padding-top: 6px;
  }
  .SalesForms_salesKpiTable td:nth-child(4) {
    grid-column: 3;
    grid-row: 1/3;
    align-self: center;
  }
  .SalesForms_salesKpiDetails {
    white-space: normal;
  }
  .SalesForms_salesDrawerCard {
    width: 100vw;
  }
  .SalesForms_salesDrawerFooter {
    padding-bottom: max(12px, env(safe-area-inset-bottom));
  }
}
@media (max-width: 480px) {
  .SalesForms_salesFormFooter {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .SalesForms_salesFormFooter button {
    width: 100%;
    min-width: 0;
  }
  .SalesForms_salesFormFooter button:only-child {
    grid-column: 1/-1;
  }
  .SalesForms_salesKpiFooterTotal {
    grid-column: 1/-1;
    margin: 0 0 4px;
  }
  .SalesForms_salesKpiSummary {
    grid-template-columns: 1fr 1fr;
  }
  .SalesForms_salesKpiSummary > span {
    border-right: 1px solid #eaecf0;
    border-bottom: 1px solid #eaecf0;
  }
  .SalesForms_salesKpiSummary > span:nth-child(2n) {
    border-right: 0;
  }
  .SalesForms_salesKpiSummary > span:nth-child(3) {
    border-right: 1px solid #eaecf0;
  }
  .SalesForms_salesKpiSummary > span:last-child {
    grid-column: 1/-1;
    border: 0;
  }
  .SalesForms_salesKpiMonth > header > div:last-child span {
    display: none;
  }
  .SalesForms_salesKpiTable tr {
    grid-template-columns: 82px minmax(0, 1fr) 96px;
  }
  .SalesForms_salesQuoteLine {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 34px;
  }
  .SalesForms_salesDiscardActions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .SalesForms_salesDiscardActions button {
    width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .SalesForms_salesFormField input,
  .SalesForms_salesFormField select,
  .SalesForms_salesFormField textarea {
    transition: none;
  }
}
.SalesForms_salesKpiTargetGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px 14px;
}
.SalesForms_salesKpiTargetTotal {
  display: grid;
  gap: 1px;
  margin-right: auto;
  text-align: left;
}
.SalesForms_salesKpiTargetTotal small {
  color: #667085;
  font-size: 9px;
  font-weight: 750;
  text-transform: uppercase;
  letter-spacing: .035em;
}
.SalesForms_salesKpiTargetTotal strong {
  color: #172033;
  font-size: 16px;
  font-weight: 850;
  font-variant-numeric: tabular-nums;
}
@media (max-width: 760px) {
  .SalesForms_salesKpiTargetGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 480px) {
  .SalesForms_salesKpiTargetGrid {
    grid-template-columns: 1fr;
  }
  .SalesForms_salesKpiTargetTotal {
    grid-column: 1/-1;
  }
}

/* src/domains/sales/DealStagePicker.module.css */
.DealStagePicker_wrapper {
  display: block;
  min-width: 0;
  width: 100%;
}
.DealStagePicker_wrapper .DealStagePicker_trigger,
.DealStagePicker_menu .DealStagePicker_option {
  appearance: none;
  display: flex;
  align-items: center;
  gap: 8px;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 30px;
  border: 1px solid var(--opebix-border-strong);
  border-radius: 7px;
  background: color-mix(in srgb, var(--stage-color) 7%, var(--opebix-surface));
  color: var(--opebix-text-soft);
  font: inherit;
  font-size: 12px;
  font-weight: 650;
  text-align: left;
  cursor: pointer;
  padding: 5px 8px;
}
.DealStagePicker_trigger > i,
.DealStagePicker_option > i {
  flex: 0 0 8px;
  width: 8px;
  height: 8px;
  border-radius: 2px;
  background: var(--stage-color);
}
.DealStagePicker_trigger > span,
.DealStagePicker_option > span {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.DealStagePicker_trigger > svg,
.DealStagePicker_option > svg {
  flex-shrink: 0;
  color: var(--opebix-text-muted);
}
.DealStagePicker_trigger:hover,
.DealStagePicker_option:hover {
  border-color: var(--stage-color);
  background: color-mix(in srgb, var(--stage-color) 12%, var(--opebix-surface));
}
.DealStagePicker_trigger:disabled,
.DealStagePicker_option:disabled {
  opacity: .6;
  cursor: not-allowed;
}
.DealStagePicker_menu {
  position: fixed;
  z-index: 125;
  box-sizing: border-box;
  padding: 5px;
  display: grid;
  gap: 4px;
  overflow: auto;
  border: 1px solid var(--opebix-border);
  border-radius: 10px;
  background: var(--opebix-surface);
  box-shadow: var(--opebix-shadow-sm);
}
.DealStagePicker_option {
  min-height: 34px;
  border-color: transparent;
}
.DealStagePicker_option[aria-selected=true] {
  border-color: var(--stage-color);
}
.DealStagePicker_trigger:focus-visible,
.DealStagePicker_option:focus-visible {
  outline: 2px solid var(--opebix-focus);
  outline-offset: 1px;
}
.DealStagePicker_error {
  display: block;
  font-size: 11px;
  color: var(--opebix-danger);
  white-space: normal;
}
@media (pointer: coarse) {
  .DealStagePicker_menu .DealStagePicker_option {
    min-height: 44px;
  }
}

/* src/domains/sales/DealsRefresh.module.css */
.DealsRefresh_workspace {
  gap: 0;
  overflow: visible;
  color: var(--opebix-text);
  background: var(--opebix-surface);
  border-radius: var(--opebix-radius-panel);
  min-width: 0;
}
.DealsRefresh_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 22px 24px;
  background: var(--opebix-surface);
  border-bottom: 1px solid var(--opebix-border);
}
.DealsRefresh_eyebrow,
.DealsRefresh_filterHeading {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--opebix-text-muted);
}
.DealsRefresh_eyebrow {
  color: var(--opebix-teal-dark);
}
.DealsRefresh_header h2 {
  font-size: 28px;
  line-height: 1.2;
  letter-spacing: -.035em;
  margin: 6px 0 0;
  color: var(--opebix-text);
}
.DealsRefresh_actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.DealsRefresh_actions > button {
  min-height: 40px;
}
.DealsRefresh_metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-bottom: 1px solid var(--opebix-border);
}
.DealsRefresh_metrics > span {
  display: flex;
  flex-direction: column;
  gap: 7px;
  padding: 20px 24px;
  border-right: 1px solid var(--opebix-border);
  min-width: 0;
}
.DealsRefresh_metrics > span:last-child {
  border-right: 0;
}
.DealsRefresh_metrics small {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .065em;
  text-transform: uppercase;
  color: var(--opebix-text-muted);
}
.DealsRefresh_metrics b {
  font-size: 28px;
  line-height: 1.15;
  letter-spacing: -.035em;
  font-variant-numeric: tabular-nums;
  color: var(--opebix-text);
}
.DealsRefresh_metrics em {
  font-size: 12px;
  line-height: 1.4;
  font-style: normal;
  color: var(--opebix-text-muted);
}
.DealsRefresh_metrics .DealsRefresh_won b {
  color: var(--opebix-success,#168045);
}
.DealsRefresh_metrics .DealsRefresh_overdue b {
  color: var(--opebix-danger);
}
.DealsRefresh_primaryFilters,
.DealsRefresh_secondaryFilters {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px 16px;
  align-items: end;
}
.DealsRefresh_primaryFilters {
  padding: 20px 24px 16px;
}
.DealsRefresh_supplementary {
  padding: 0 24px 16px;
}
.DealsRefresh_secondaryFilters {
  margin-top: 10px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.DealsRefresh_primaryFilters label,
.DealsRefresh_secondaryFilters label {
  display: grid;
  gap: 7px;
  min-width: 0;
}
.DealsRefresh_primaryFilters label > span,
.DealsRefresh_secondaryFilters label > span {
  color: var(--opebix-text-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .065em;
  text-transform: uppercase;
}
.DealsRefresh_primaryFilters select,
.DealsRefresh_primaryFilters input,
.DealsRefresh_secondaryFilters select,
.DealsRefresh_secondaryFilters input,
.DealsRefresh_viewToolbar > input {
  width: 100%;
  min-width: 0;
  min-height: 40px;
  box-sizing: border-box;
  padding: 8px 11px;
  border: 1px solid var(--opebix-border-strong);
  border-radius: var(--opebix-radius-control);
  background: var(--opebix-surface);
  color: var(--opebix-text-soft);
  font: inherit;
  font-size: 12px;
}
.DealsRefresh_viewToolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 0 24px 16px;
}
.DealsRefresh_viewToolbar > input {
  max-width: 340px;
}
.DealsRefresh_viewToolbar > div {
  flex-shrink: 0;
  background: var(--opebix-surface-soft);
}
.DealsRefresh_chips {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  padding: 12px 24px;
  border-top: 1px solid var(--opebix-border);
  border-bottom: 1px solid var(--opebix-border);
  background: var(--opebix-surface);
}
.DealsRefresh_chips > button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 11px;
  border: 1px solid color-mix(in srgb, var(--opebix-teal-dark) 22%, var(--opebix-surface));
  border-radius: 999px;
  background: color-mix(in srgb, var(--opebix-teal-dark) 7%, var(--opebix-surface));
  color: var(--opebix-teal-dark);
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}
.DealsRefresh_chips > button.DealsRefresh_clear {
  background: var(--opebix-surface);
  border-color: var(--opebix-border);
  color: var(--opebix-text-soft);
}
.DealsRefresh_result {
  margin-left: auto;
  color: var(--opebix-text-muted);
  font-size: 12px;
}
.DealsRefresh_content {
  padding: 18px 24px;
  background: var(--opebix-surface-soft);
  min-width: 0;
}
.DealsRefresh_content .DealsRefresh_group {
  background: var(--opebix-surface);
  border-color: var(--opebix-border);
  border-radius: 14px;
  box-shadow: var(--opebix-shadow-xs);
}
.DealsRefresh_groupHead {
  padding: 14px 16px;
  background: var(--opebix-surface);
  color: var(--opebix-text);
  min-height: 54px;
}
.DealsRefresh_groupHead strong {
  font-size: 14px;
}
.DealsRefresh_groupHead .DealsRefresh_count {
  background: var(--opebix-surface-soft);
  padding: 3px 8px;
  border-radius: 999px;
  color: var(--opebix-text-muted);
  font-size: 11px;
}
.DealsRefresh_groupHead b {
  font-size: 16px;
  font-variant-numeric: tabular-nums;
}
.DealsRefresh_groupHead .DealsRefresh_groupLabel {
  margin-right: 14px;
  color: var(--opebix-text-muted);
  font-size: 11px;
  font-weight: 400;
}
.DealsRefresh_table {
  font-size: 13px;
}
.DealsRefresh_table th {
  padding: 11px 12px;
  height: auto;
  background: var(--opebix-surface-soft);
  color: var(--opebix-text-muted);
  border-color: var(--opebix-border);
}
.DealsRefresh_table td {
  height: 48px;
  max-height: 48px;
  padding: 6px 10px;
  background: var(--opebix-surface);
  color: var(--opebix-text-soft);
  border-color: var(--opebix-divider);
  vertical-align: middle;
}
.DealsRefresh_table td[data-column=deal] {
  color: var(--opebix-text);
  font-weight: 700;
}
.DealsRefresh_table td[data-column=deal] > span > span {
  display: flex;
  flex-wrap: wrap;
  min-width: 0;
}
.DealsRefresh_company {
  flex-basis: 100%;
  display: block;
  margin-top: 2px;
  color: var(--opebix-text-muted);
  font-size: 11px;
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
}
.DealsRefresh_table td[data-column=quote] {
  color: var(--opebix-teal-dark);
  font-weight: 700;
}
.DealsRefresh_table td[data-column=nextAction] button {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  max-height: 32px;
  overflow: hidden;
  white-space: normal;
  line-height: 16px;
  text-align: left;
}
.DealsRefresh_table td[data-column=stage] > button {
  background: var(--opebix-surface) !important;
  border: 1px solid var(--opebix-border-strong);
  border-left: 4px solid var(--deal-stage-color,var(--opebix-text-muted));
  border-radius: 7px;
  padding: 8px;
  color: var(--opebix-text-soft);
}
.DealsRefresh_table td[data-column=value] {
  font-weight: 750;
  font-variant-numeric: tabular-nums;
}
.DealsRefresh_owner {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.DealsRefresh_avatar {
  display: grid;
  place-items: center;
  flex: 0 0 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--opebix-surface-soft);
  color: var(--opebix-text-muted);
  font-size: 10px;
  font-weight: 700;
}
.DealsRefresh_owner > button {
  min-width: 0;
}
.DealsRefresh_workspace :is(button, input, select):focus-visible {
  outline: 2px solid var(--opebix-focus);
  outline-offset: 3px;
}
.DealsRefresh_workspace button:disabled {
  cursor: not-allowed;
  opacity: .55;
}
@media (max-width: 1100px) {
  .DealsRefresh_primaryFilters,
  .DealsRefresh_secondaryFilters {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .DealsRefresh_metrics > span {
    padding: 18px 16px;
  }
  .DealsRefresh_metrics b {
    font-size: 24px;
  }
}
@media (max-width: 700px) {
  .DealsRefresh_header {
    align-items: flex-start;
    flex-direction: column;
    padding: 18px 14px;
  }
  .DealsRefresh_actions {
    width: 100%;
    gap: 8px;
  }
  .DealsRefresh_metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .DealsRefresh_metrics > span:nth-child(2) {
    border-right: 0;
  }
  .DealsRefresh_metrics > span:nth-child(-n+2) {
    border-bottom: 1px solid var(--opebix-border);
  }
  .DealsRefresh_primaryFilters,
  .DealsRefresh_secondaryFilters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
  .DealsRefresh_primaryFilters {
    padding: 16px 14px;
  }
  .DealsRefresh_supplementary {
    padding: 0 14px 16px;
  }
  .DealsRefresh_viewToolbar {
    padding: 0 14px 16px;
    flex-wrap: wrap;
  }
  .DealsRefresh_viewToolbar > input {
    max-width: none;
  }
  .DealsRefresh_chips {
    padding: 12px 14px;
  }
  .DealsRefresh_result {
    flex-basis: 100%;
    margin: 4px 0 0;
  }
  .DealsRefresh_content {
    padding: 14px 10px;
  }
  .DealsRefresh_groupHead {
    gap: 8px;
    padding: 12px 10px;
    flex-wrap: wrap;
  }
  .DealsRefresh_groupHead .DealsRefresh_groupLabel {
    display: none;
  }
  .DealsRefresh_groupHead b {
    font-size: 13px;
  }
}
.DealsRefresh_workspace .DealsRefresh_content .DealsRefresh_group {
  border: 1px solid var(--opebix-border);
  border-radius: 14px;
  overflow: visible;
  margin-bottom: 16px;
}
.DealsRefresh_workspace .DealsRefresh_groupHead {
  border-radius: 13px 13px 0 0;
  background: var(--opebix-surface);
  border-bottom-color: var(--opebix-border);
}
.DealsRefresh_workspace .DealsRefresh_groupHead strong {
  color: var(--opebix-text);
}
.DealsRefresh_workspace .DealsRefresh_table th[data-column] {
  padding: 0 12px;
  height: 38px;
  font-size: 11px;
  letter-spacing: .045em;
}
.DealsRefresh_workspace .DealsRefresh_table th button {
  display: flex;
  align-items: center;
  min-height: 38px;
  font-size: 11px;
  text-transform: uppercase;
}
.DealsRefresh_workspace .DealsRefresh_table td[data-column=stage] > button {
  text-align: left;
  position: relative;
  padding-right: 25px;
}
.DealsRefresh_workspace .DealsRefresh_table td[data-column=stage] > button::after {
  content: "";
  position: absolute;
  right: 10px;
  top: 12px;
  width: 5px;
  height: 5px;
  border-right: 1.5px solid var(--opebix-text-muted);
  border-bottom: 1.5px solid var(--opebix-text-muted);
  transform: rotate(45deg);
}
@media (max-width: 700px) {
  .DealsRefresh_actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .DealsRefresh_actions > button:last-child {
    grid-column: 1/-1;
    width: 100%;
  }
  .DealsRefresh_actions > div {
    min-width: 0;
  }
  .DealsRefresh_workspace .DealsRefresh_content .DealsRefresh_group {
    margin-bottom: 12px;
  }
}
.DealsRefresh_workspace .DealsRefresh_table tr[aria-selected=true] td {
  background: var(--opebix-info-bg);
}
.DealsRefresh_workspace .DealsRefresh_table tbody tr:hover td {
  background: var(--opebix-surface-soft);
}
.DealsRefresh_workspace .DealsRefresh_actions > button:first-child {
  background: var(--opebix-surface);
  color: var(--opebix-text-soft);
}
.DealsRefresh_workspace .DealsRefresh_viewToolbar button {
  color: var(--opebix-text-soft);
}
.DealsRefresh_workspace .DealsRefresh_viewToolbar button[aria-pressed=true] {
  background: var(--opebix-surface);
  color: var(--opebix-teal-dark);
}
.DealsRefresh_workspace .DealsRefresh_table .DealsRefresh_overdueCell button {
  color: var(--opebix-danger) !important;
}
.DealsRefresh_workspace > [role=status] {
  padding: 12px 24px;
}
.DealsRefresh_workspace > [role=status]:not([class*=Error]) {
  color: var(--opebix-text-muted);
}
.DealsRefresh_workspace .DealsRefresh_table {
  min-width: 0;
  table-layout: fixed;
}
.DealsRefresh_workspace .DealsRefresh_table :is(th, td)[data-column] {
  width: auto;
  box-sizing: border-box;
}
.DealsRefresh_workspace .DealsRefresh_table :is(th, td)[data-column=quote] {
  left: var(--deal-pinned-width,320px);
}
.DealsRefresh_workspace .DealsRefresh_table td {
  font-size: 12px;
  line-height: 14px;
}
.DealsRefresh_workspace .DealsRefresh_table td :is(input, select) {
  height: 30px;
  min-height: 30px;
}
.DealsRefresh_workspace .DealsRefresh_table td[data-column=deal] button {
  line-height: 14px;
}
.DealsRefresh_workspace .DealsRefresh_table th[data-column] {
  position: relative;
  padding-right: 18px;
}
.DealsRefresh_workspace .DealsRefresh_table th[data-column=deal],
.DealsRefresh_workspace .DealsRefresh_table th[data-column=quote] {
  position: sticky;
}
.DealsRefresh_workspace .DealsRefresh_table th > button {
  white-space: nowrap;
  overflow: hidden;
  min-width: 0;
}
.DealsRefresh_workspace .DealsRefresh_table th > button > span:first-child {
  overflow: hidden;
  text-overflow: ellipsis;
}
.DealsRefresh_resizeHandle {
  position: absolute;
  inset: 0 -3px 0 auto;
  width: 9px;
  z-index: 6;
  cursor: col-resize;
  touch-action: none;
  user-select: none;
}
.DealsRefresh_resizeHandle::after {
  content: "";
  position: absolute;
  inset: 8px 4px;
  width: 1px;
  background: var(--opebix-border-strong);
}
.DealsRefresh_resizeHandle:hover::after,
.DealsRefresh_resizeHandle:focus-visible::after {
  background: var(--opebix-teal-dark);
  width: 2px;
}
.DealsRefresh_resizeHandle:focus-visible {
  outline: 2px solid var(--opebix-focus);
  outline-offset: -2px;
}
.DealsRefresh_moreFilters {
  appearance: none;
  display: flex;
  align-items: center;
  gap: 7px;
  min-height: 34px;
  margin-left: auto;
  padding: 6px 11px;
  border: 1px solid var(--opebix-border);
  border-radius: 8px;
  background: var(--opebix-surface);
  color: var(--opebix-text-soft);
  font: inherit;
  font-size: 12px;
  cursor: pointer;
  white-space: nowrap;
}
.DealsRefresh_moreFilters > span:not(:last-child) {
  display: grid;
  place-items: center;
  min-width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--opebix-surface-soft);
  color: var(--opebix-teal-dark);
  font-size: 10px;
  font-weight: 700;
}
.DealsRefresh_moreFilters[aria-expanded=true] {
  border-color: var(--opebix-teal-dark);
}
.DealsRefresh_secondaryFilters {
  margin-top: 8px;
}
.DealsRefresh_supplementary {
  border-top: 1px solid var(--opebix-border);
  padding-top: 12px;
  background: var(--opebix-surface-soft);
}
@media (max-width: 700px) {
  .DealsRefresh_moreFilters {
    margin-left: 0;
  }
  .DealsRefresh_viewToolbar > div {
    margin-left: auto;
  }
  .DealsRefresh_resizeHandle {
    width: 14px;
  }
}
.DealsRefresh_workspace .DealsRefresh_table td[data-column=deal] > span > span {
  gap: 0;
  align-content: center;
}
.DealsRefresh_workspace .DealsRefresh_table td[data-column=deal] > span > span > button {
  min-height: 18px;
  height: 18px;
  padding: 0 6px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.DealsRefresh_workspace .DealsRefresh_table td[data-column=nextAction] button {
  padding-top: 0;
  padding-bottom: 0;
}

/* src/components/ui/kanban.module.css */
.kanban_board {
  display: flex;
  gap: 14px;
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
  align-items: stretch;
  padding: 4px 2px 16px;
  overscroll-behavior-x: contain;
}
.kanban_column {
  flex: 0 0 300px;
  min-width: 280px;
  min-height: 320px;
  padding: 10px;
  box-sizing: border-box;
  border: 1px solid var(--opebix-border);
  border-radius: var(--opebix-radius-panel);
  background: color-mix(in srgb, var(--stage-color) 4%, var(--opebix-surface-soft));
  border-top: 3px solid var(--stage-color);
  transition: border-color .15s;
}
.kanban_column[data-over=true] {
  border-color: var(--opebix-focus);
  box-shadow: inset 0 0 0 1px var(--opebix-focus);
}
.kanban_card {
  position: relative;
  margin: 10px 0;
  padding: 12px;
  border: 1px solid var(--opebix-border);
  border-radius: var(--opebix-radius-control);
  background: color-mix(in srgb, var(--stage-color) 7%, var(--opebix-surface));
  border-left: 3px solid var(--stage-color);
  color: var(--opebix-text);
  box-shadow: var(--opebix-shadow-xs);
  transition: box-shadow .15s, border-color .15s;
}
.kanban_card[draggable=true] {
  cursor: grab;
}
.kanban_card[aria-busy=true] {
  opacity: .6;
}
.kanban_board:focus-visible,
.kanban_card :focus-visible {
  outline: 2px solid var(--opebix-focus);
  outline-offset: 3px;
}
@media (max-width: 767px) {
  .kanban_column {
    flex-basis: 280px;
  }
}
.kanban_card:hover {
  box-shadow: var(--opebix-shadow-sm);
  border-top-color: color-mix(in srgb, var(--stage-color) 35%, var(--opebix-border));
  border-right-color: color-mix(in srgb, var(--stage-color) 35%, var(--opebix-border));
}

/* src/domains/sales/DealsKanban.module.css */
.DealsKanban_header {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 7px;
  padding: 4px;
  color: var(--opebix-text);
  font-size: 12px;
}
.DealsKanban_header > span {
  color: var(--opebix-text-muted);
  font-size: 11px;
}
.DealsKanban_header > b {
  grid-column: 1/-1;
  font-size: 13px;
  font-variant-numeric: tabular-nums;
}
.DealsKanban_open {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 100%;
  padding: 0 23px 0 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.DealsKanban_open strong {
  font-size: 13px;
}
.DealsKanban_open span {
  font-size: 12px;
  color: var(--opebix-text-soft);
}
.DealsKanban_open b {
  font-size: 15px;
  margin: 8px 0;
  font-variant-numeric: tabular-nums;
}
.DealsKanban_open strong,
.DealsKanban_open span {
  overflow-wrap: anywhere;
}
.DealsKanban_footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 8px;
  font-size: 11px;
}
.DealsKanban_footer > span:first-child {
  display: flex;
  align-items: center;
  gap: 5px;
}
.DealsKanban_muted {
  color: var(--opebix-text-muted);
}
.DealsKanban_overdue {
  color: var(--opebix-danger);
}
.DealsKanban_today {
  color: var(--opebix-warning);
  font-weight: 700;
}
.DealsKanban_owner {
  display: grid;
  place-items: center;
  min-width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--opebix-surface-soft);
  color: var(--opebix-text-soft);
  font-size: 10px;
  font-weight: 700;
}
.DealsKanban_actions {
  position: absolute;
  right: 8px;
  top: 8px;
}
.DealsKanban_actions[open] {
  z-index: 2;
}
.DealsKanban_actions summary {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  cursor: pointer;
  border-radius: 6px;
  list-style: none;
  color: var(--opebix-text-muted);
}
.DealsKanban_actions summary::-webkit-details-marker {
  display: none;
}
.DealsKanban_actions summary:hover {
  background: var(--opebix-surface-soft);
}
.DealsKanban_menu {
  position: absolute;
  right: 0;
  top: 30px;
  width: 215px;
  display: grid;
  gap: 5px;
  padding: 10px;
  background: var(--opebix-surface);
  border: 1px solid var(--opebix-border);
  border-radius: var(--opebix-radius-control);
  box-shadow: var(--opebix-shadow-xs);
}
.DealsKanban_menu button,
.DealsKanban_menu select {
  display: flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 6px;
  border: 1px solid var(--opebix-border);
  border-radius: 5px;
  background: var(--opebix-surface-soft);
  color: var(--opebix-text);
  font: inherit;
  font-size: 12px;
}
.DealsKanban_menu label {
  display: grid;
  gap: 5px;
  font-size: 11px;
  color: var(--opebix-text-muted);
}
.DealsKanban_add {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  min-height: 36px;
  border: 1px dashed var(--opebix-border);
  border-radius: var(--opebix-radius-control);
  background: transparent;
  color: var(--opebix-text-soft);
  font: inherit;
  font-size: 12px;
  cursor: pointer;
}
.DealsKanban_add:focus-visible {
  outline: 2px solid var(--opebix-focus);
  outline-offset: 2px;
}
.DealsKanban_empty {
  padding: 16px 4px;
  color: var(--opebix-text-muted);
  font-size: 12px;
}
.DealsKanban_srOnly {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}
@media (max-width: 767px) {
  .DealsKanban_actions summary {
    width: 36px;
    height: 36px;
  }
  .DealsKanban_menu button,
  .DealsKanban_menu select,
  .DealsKanban_add {
    min-height: 44px;
  }
}
.DealsKanban_header > strong::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 7px;
  border-radius: 3px;
  background: var(--stage-color);
}
.DealsKanban_header > span {
  border-radius: 999px;
  background: color-mix(in srgb, var(--stage-color) 12%, var(--opebix-surface));
  padding: 2px 6px;
}
.DealsKanban_open b {
  margin: 4px 0;
}
.DealsKanban_footer {
  margin-top: 6px;
}

/* src/domains/sales/DealColumnsPopover.module.css */
.DealColumnsPopover_trigger {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  height: 32px;
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid var(--opebix-border-strong);
  border-radius: 7px;
  background: var(--opebix-surface);
  color: var(--opebix-text-soft);
  box-shadow: var(--opebix-shadow-xs);
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  line-height: 1;
  cursor: pointer;
  transition:
    background .15s,
    border-color .15s,
    color .15s,
    box-shadow .15s;
}
.DealColumnsPopover_trigger:hover,
.DealColumnsPopover_trigger[aria-expanded=true] {
  border-color: #98a2b3;
  background: var(--opebix-surface-soft);
  color: var(--opebix-text);
}
.DealColumnsPopover_trigger:focus-visible {
  outline: 2px solid var(--opebix-focus);
  outline-offset: 2px;
}
.DealColumnsPopover_trigger > span:first-child {
  display: grid;
  place-items: center;
  width: 15px;
  height: 15px;
}
.DealColumnsPopover_popover {
  position: fixed;
  z-index: 120;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  box-sizing: border-box;
  overflow: hidden;
  border: 1px solid var(--opebix-border);
  border-radius: 12px;
  background: var(--opebix-surface);
  box-shadow: 0 18px 44px rgba(15, 23, 42, .2);
  color: var(--opebix-text);
}
.DealColumnsPopover_header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 12px 8px;
}
.DealColumnsPopover_header > span {
  display: grid;
  gap: 2px;
}
.DealColumnsPopover_header strong {
  font-size: 13px;
  font-weight: 800;
}
.DealColumnsPopover_header small {
  color: var(--opebix-text-muted);
  font-size: 10px;
}
.DealColumnsPopover_searchWrap {
  padding: 0 10px 9px;
}
.DealColumnsPopover_searchWrap input {
  box-sizing: border-box;
  width: 100%;
  height: 36px;
  padding: 0 10px;
  border: 1px solid var(--opebix-border-strong);
  border-radius: 8px;
  background: var(--opebix-surface);
  color: var(--opebix-text);
  font: inherit;
  font-size: 12px;
  box-shadow: var(--opebix-shadow-xs);
}
.DealColumnsPopover_searchWrap input:focus {
  outline: 0;
  border-color: #528bff;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .12);
}
.DealColumnsPopover_optionList {
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 2px 8px 8px;
  scrollbar-gutter: stable;
}
.DealColumnsPopover_option {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px;
  min-height: 36px;
  padding: 2px 5px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: var(--opebix-surface);
}
.DealColumnsPopover_option:hover {
  background: var(--opebix-surface-soft);
}
.DealColumnsPopover_option[draggable=true] {
  cursor: grab;
}
.DealColumnsPopover_option[draggable=true]:active {
  cursor: grabbing;
}
.DealColumnsPopover_dragging {
  border-color: #84adff;
  background: var(--opebix-info-bg);
  opacity: .72;
}
.DealColumnsPopover_dragHandle {
  display: grid;
  place-items: center;
  color: var(--opebix-muted);
}
.DealColumnsPopover_dragHandle > span {
  width: 15px;
  height: 15px;
}
.DealColumnsPopover_option label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  color: var(--opebix-text-soft);
  font-size: 12px;
  cursor: pointer;
}
.DealColumnsPopover_option label span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.DealColumnsPopover_option label input {
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
  margin: 0;
  accent-color: var(--opebix-focus);
}
.DealColumnsPopover_option label input:focus-visible {
  outline: 2px solid var(--opebix-focus);
  outline-offset: 2px;
}
.DealColumnsPopover_option label:has(input:disabled) {
  cursor: default;
}
.DealColumnsPopover_fixedHelp {
  position: relative;
  padding: 3px 5px;
  border-radius: 5px;
  background: var(--opebix-neutral-bg);
  color: var(--opebix-text-muted);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  cursor: help;
}
.DealColumnsPopover_fixedHelp:focus-visible {
  outline: 2px solid var(--opebix-focus);
  outline-offset: 2px;
}
.DealColumnsPopover_fixedHelp [role=tooltip] {
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: calc(100% + 7px);
  display: none;
  width: 210px;
  padding: 7px 8px;
  border-radius: 7px;
  background: var(--opebix-navy);
  color: #fff;
  box-shadow: var(--opebix-shadow-sm);
  font-size: 10px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0;
  text-transform: none;
}
.DealColumnsPopover_fixedHelp:hover [role=tooltip],
.DealColumnsPopover_fixedHelp:focus [role=tooltip] {
  display: block;
}
.DealColumnsPopover_moveButtons {
  display: flex;
  gap: 2px;
}
.DealColumnsPopover_moveButtons button {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 6px;
  background: transparent;
  color: var(--opebix-text-muted);
  cursor: pointer;
}
.DealColumnsPopover_moveButtons button:hover:not(:disabled) {
  border-color: var(--opebix-border-strong);
  background: var(--opebix-surface);
  color: var(--opebix-info);
}
.DealColumnsPopover_moveButtons button:focus-visible {
  outline: 2px solid var(--opebix-focus);
  outline-offset: 1px;
}
.DealColumnsPopover_moveButtons button:disabled {
  opacity: .25;
  cursor: not-allowed;
}
.DealColumnsPopover_moveButtons button > span {
  width: 13px;
  height: 13px;
}
.DealColumnsPopover_empty {
  padding: 24px 10px;
  color: var(--opebix-text-muted);
  font-size: 11px;
  text-align: center;
}
.DealColumnsPopover_actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px;
  padding: 9px 10px max(10px, env(safe-area-inset-bottom));
  border-top: 1px solid var(--opebix-divider);
  background: var(--opebix-surface-soft);
}
.DealColumnsPopover_actions button {
  min-height: 32px;
  padding: 0 8px;
  border: 1px solid var(--opebix-border-strong);
  border-radius: 7px;
  background: var(--opebix-surface);
  color: var(--opebix-info);
  font: inherit;
  font-size: 11px;
  font-weight: 750;
  cursor: pointer;
}
.DealColumnsPopover_actions button:hover {
  border-color: #98a2b3;
  background: var(--opebix-info-bg);
}
.DealColumnsPopover_actions button:focus-visible {
  outline: 2px solid var(--opebix-focus);
  outline-offset: 2px;
}
@media (max-width: 480px) {
  .DealColumnsPopover_trigger {
    width: 100%;
  }
  .DealColumnsPopover_popover {
    border-radius: 11px;
  }
  .DealColumnsPopover_header {
    padding-top: 10px;
  }
  .DealColumnsPopover_actions {
    grid-template-columns: 1fr;
  }
}
.DealColumnsPopover_actions {
  flex-wrap: wrap;
}

/* src/styles/QuoteBuilder.module.css */
.QuoteBuilder_builder,
.QuoteBuilder_setup {
  color: #172033;
  font-size: 13px;
}
.QuoteBuilder_loading {
  padding: 48px;
  text-align: center;
  color: #64748b;
}
.QuoteBuilder_backButton {
  border: 0;
  background: transparent;
  color: #0f766e;
  font-weight: 800;
  display: flex;
  gap: 7px;
  align-items: center;
  cursor: pointer;
}
.QuoteBuilder_primary,
.QuoteBuilder_secondary,
.QuoteBuilder_danger {
  height: 38px;
  border-radius: 10px;
  padding: 0 15px;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}
.QuoteBuilder_primary {
  border: 1px solid #0f766e;
  background: #0f766e;
  color: #fff;
}
.QuoteBuilder_secondary {
  border: 1px solid #dbe3ef;
  background: #fff;
  color: #334155;
}
.QuoteBuilder_danger {
  border: 1px solid #fecdd3;
  background: #fff1f2;
  color: #be123c;
}
.QuoteBuilder_primary:disabled,
.QuoteBuilder_secondary:disabled,
.QuoteBuilder_danger:disabled {
  opacity: .5;
  cursor: not-allowed;
}
.QuoteBuilder_setup {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 0 60px;
}
.QuoteBuilder_setupToolbar,
.QuoteBuilder_builderToolbar {
  min-height: 50px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 0 14px;
  display: flex;
  align-items: center;
  gap: 14px;
}
.QuoteBuilder_setupToolbar strong {
  font-size: 14px;
}
.QuoteBuilder_setupToolbar > span {
  color: #64748b;
  font-size: 12px;
}
.QuoteBuilder_setupCard {
  margin-top: 14px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 18px;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}
.QuoteBuilder_partyCards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.QuoteBuilder_partyCard {
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #f8fafc;
  padding: 14px;
  display: grid;
  gap: 10px;
  align-content: start;
}
.QuoteBuilder_partyCard h2,
.QuoteBuilder_templateHeading h2,
.QuoteBuilder_sectionPickerHead h2 {
  font-size: 16px;
  margin: 0;
  color: #0f172a;
}
.QuoteBuilder_partyCard label,
.QuoteBuilder_formGrid label,
.QuoteBuilder_detailsGroup label,
.QuoteBuilder_libraryReview label {
  display: grid;
  gap: 5px;
}
.QuoteBuilder_partyCard label > span,
.QuoteBuilder_formGrid label > span,
.QuoteBuilder_detailsGroup label > span,
.QuoteBuilder_libraryReview label > span {
  font-size: 10px;
  font-weight: 800;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.QuoteBuilder_partyCard input,
.QuoteBuilder_partyCard textarea,
.QuoteBuilder_formGrid input,
.QuoteBuilder_formGrid select,
.QuoteBuilder_detailsGroup input,
.QuoteBuilder_detailsGroup select,
.QuoteBuilder_sectionHeading input,
.QuoteBuilder_addSection select,
.QuoteBuilder_libraryReview input,
.QuoteBuilder_libraryReview select,
.QuoteBuilder_libraryReview textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #dbe3ef;
  border-radius: 9px;
  background: #fff;
  padding: 0 10px;
  color: #172033;
  font: inherit;
}
.QuoteBuilder_partyCard input,
.QuoteBuilder_formGrid input,
.QuoteBuilder_formGrid select,
.QuoteBuilder_detailsGroup input,
.QuoteBuilder_detailsGroup select,
.QuoteBuilder_sectionHeading input,
.QuoteBuilder_addSection select,
.QuoteBuilder_libraryReview input,
.QuoteBuilder_libraryReview select {
  height: 38px;
}
.QuoteBuilder_partyCard textarea {
  min-height: 70px;
  padding: 9px 10px;
  resize: vertical;
}
.QuoteBuilder_miniGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}
.QuoteBuilder_formGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 12px;
}
.QuoteBuilder_full {
  grid-column: 1/-1;
}
.QuoteBuilder_templateHeading {
  border-top: 1px solid #e2e8f0;
  margin-top: 20px;
  padding-top: 18px;
}
.QuoteBuilder_templateHeading p,
.QuoteBuilder_sectionPickerHead p {
  margin: 3px 0 0;
  color: #64748b;
  font-size: 12px;
}
.QuoteBuilder_templateGrid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}
.QuoteBuilder_templateGrid > button {
  min-height: 104px;
  text-align: left;
  border: 1px solid #dbe3ef;
  border-radius: 11px;
  background: #fff;
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  color: #172033;
  cursor: pointer;
}
.QuoteBuilder_templateGrid > button span {
  color: #64748b;
  font-size: 12px;
  line-height: 1.4;
  flex: 1;
}
.QuoteBuilder_templateGrid > button small {
  font-weight: 800;
  color: #0f766e;
}
.QuoteBuilder_templateGrid .QuoteBuilder_templateSelected {
  border: 2px solid #0f766e;
  background: #f0fdfa;
  padding: 11px;
}
.QuoteBuilder_sectionPickerHead {
  border-top: 1px solid #e2e8f0;
  margin-top: 20px;
  padding-top: 18px;
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 16px;
}
.QuoteBuilder_sectionPickerHead > div:last-child {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.QuoteBuilder_sectionPickerHead button {
  height: 32px;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  background: #fff;
  color: #475569;
  font-size: 11px;
  font-weight: 800;
  padding: 0 10px;
  cursor: pointer;
}
.QuoteBuilder_sectionPicker {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-top: 12px;
}
.QuoteBuilder_sectionPicker > label {
  min-height: 52px;
  border: 1px solid #dbe3ef;
  border-radius: 10px;
  padding: 8px 10px;
  display: flex;
  align-items: center;
  gap: 9px;
  background: #fff;
  cursor: pointer;
}
.QuoteBuilder_sectionPicker > label input {
  width: 17px;
  height: 17px;
  accent-color: #0f766e;
}
.QuoteBuilder_sectionPicker > label span {
  display: grid;
  gap: 2px;
}
.QuoteBuilder_sectionPicker strong {
  font-size: 12px;
}
.QuoteBuilder_sectionPicker small {
  font-size: 10px;
  color: #64748b;
}
.QuoteBuilder_sectionPicker .QuoteBuilder_sectionChoiceSelected {
  border-color: #5eead4;
  background: #f0fdfa;
}
.QuoteBuilder_setupCard > footer {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  border-top: 1px solid #e2e8f0;
  margin-top: 20px;
  padding-top: 16px;
}
.QuoteBuilder_builder {
  display: grid;
  gap: 12px;
}
.QuoteBuilder_builderToolbar {
  display: grid;
  grid-template-columns: 140px minmax(0, 1fr) auto;
}
.QuoteBuilder_identity {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  overflow: hidden;
}
.QuoteBuilder_identity > strong {
  font-variant-numeric: tabular-nums;
  color: #0f172a;
}
.QuoteBuilder_identity > span {
  border-left: 1px solid #e2e8f0;
  padding-left: 8px;
  color: #64748b;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.QuoteBuilder_identity > span:nth-last-child(-n+2) {
  max-width: 190px;
}
.QuoteBuilder_status {
  width: max-content !important;
  border: 0 !important;
  padding: 4px 8px !important;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
}
.QuoteBuilder_status_draft {
  color: #475569 !important;
  background: #e2e8f0;
}
.QuoteBuilder_status_sent {
  color: #1d4ed8 !important;
  background: #dbeafe;
}
.QuoteBuilder_status_accepted {
  color: #047857 !important;
  background: #d1fae5;
}
.QuoteBuilder_status_declined,
.QuoteBuilder_status_expired {
  color: #b42318 !important;
  background: #fee2e2;
}
.QuoteBuilder_status_superseded {
  color: #6b7280 !important;
  background: #f1f5f9;
}
.QuoteBuilder_saving {
  color: #64748b;
  font-size: 12px;
  white-space: nowrap;
}
.QuoteBuilder_saveFailed {
  color: #b42318;
}
.QuoteBuilder_detailsPanel {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 12px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.QuoteBuilder_detailsGroup {
  border: 1px solid #edf2f7;
  border-radius: 11px;
  background: #f8fafc;
  padding: 11px;
  display: grid;
  gap: 8px;
  align-content: start;
}
.QuoteBuilder_detailsGroup h3 {
  font-size: 12px;
  margin: 0;
  color: #0f172a;
}
.QuoteBuilder_detailsGroup input,
.QuoteBuilder_detailsGroup select {
  height: 34px;
  font-size: 12px;
  min-width: 0;
}
.QuoteBuilder_detailsFull {
  grid-column: 1/-1;
}
.QuoteBuilder_workspace {
  display: grid;
  grid-template-columns: 260px minmax(460px, 1fr) 300px;
  min-height: 520px;
  background: #eef2f6;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  overflow: hidden;
}
.QuoteBuilder_sectionNav,
.QuoteBuilder_contextPanel {
  background: #fff;
  min-width: 0;
}
.QuoteBuilder_sectionNav {
  border-right: 1px solid #dce3ec;
}
.QuoteBuilder_contextPanel {
  border-left: 1px solid #dce3ec;
  padding-bottom: 20px;
}
.QuoteBuilder_panelTitle {
  height: 46px;
  border-bottom: 1px solid #e2e8f0;
  padding: 0 14px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 800;
}
.QuoteBuilder_panelTitle small {
  font-weight: 500;
  color: #64748b;
}
.QuoteBuilder_sectionList {
  padding: 8px;
  display: grid;
  gap: 5px;
}
.QuoteBuilder_sectionRow {
  width: 100%;
  min-height: 57px;
  border: 1px solid transparent;
  border-radius: 9px;
  background: #fff;
  padding: 7px 7px 7px 4px;
  display: grid;
  grid-template-columns: 16px minmax(0, 1fr);
  gap: 4px;
  text-align: left;
  color: #23324a;
  cursor: pointer;
}
.QuoteBuilder_sectionRow > span:nth-child(2) {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.QuoteBuilder_sectionRow strong {
  font-size: 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.QuoteBuilder_sectionRow small {
  font-size: 10px;
  color: #7a8798;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.QuoteBuilder_sectionSelected {
  background: #f0fdfa;
  border-color: #5eead4;
}
.QuoteBuilder_sectionHidden {
  opacity: .58;
}
.QuoteBuilder_drag {
  color: #94a3b8;
}
.QuoteBuilder_sectionActions {
  display: none;
  grid-column: 1/-1;
  justify-content: end;
  gap: 2px;
}
.QuoteBuilder_sectionSelected .QuoteBuilder_sectionActions {
  display: flex;
}
.QuoteBuilder_sectionActions button {
  width: 25px;
  height: 24px;
  border: 0;
  border-radius: 5px;
  background: #fff;
  color: #51647b;
  cursor: pointer;
}
.QuoteBuilder_sectionActions button:disabled {
  opacity: .25;
}
.QuoteBuilder_canvas {
  padding: 18px;
  min-width: 0;
}
.QuoteBuilder_sectionEditor {
  max-width: 860px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid #dce3ec;
  border-radius: 12px;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
  padding: 18px;
  min-height: 460px;
}
.QuoteBuilder_sectionHeading {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 10px;
  margin-bottom: 14px;
}
.QuoteBuilder_sectionHeading > div {
  display: grid;
  gap: 5px;
  flex: 1;
}
.QuoteBuilder_sectionHeading span {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  color: #6c7a8e;
  text-transform: uppercase;
}
.QuoteBuilder_sectionHeading input {
  border: 0;
  border-bottom: 1px solid #cbd5e1;
  border-radius: 0;
  padding: 0;
  font-size: 20px;
  font-weight: 750;
  outline: none;
}
.QuoteBuilder_sectionHeading > strong {
  font-size: 10px;
  color: #92400e;
  background: #fef3c7;
  border-radius: 999px;
  padding: 5px 8px;
}
.QuoteBuilder_richEditor {
  border: 1px solid #d8e0ea;
  border-radius: 9px;
  overflow: hidden;
}
.QuoteBuilder_toolbar {
  height: 39px;
  border-bottom: 1px solid #d8e0ea;
  background: #f8fafc;
  padding: 5px 8px;
  display: flex;
  gap: 4px;
}
.QuoteBuilder_toolbar button {
  width: 29px;
  border: 1px solid transparent;
  background: transparent;
  border-radius: 5px;
  font-weight: 800;
  cursor: pointer;
}
.QuoteBuilder_toolbar span {
  width: 1px;
  background: #d8e0ea;
  margin: 2px 4px;
}
.QuoteBuilder_toolbar .QuoteBuilder_toolActive {
  border-color: #5eead4;
  background: #ccfbf1;
  color: #0f766e;
}
.QuoteBuilder_richEditor .ProseMirror {
  min-height: 330px;
  padding: 16px;
  outline: none;
  line-height: 1.6;
  font-size: 14px;
}
.QuoteBuilder_richEditor .ProseMirror p {
  margin: 0 0 10px;
}
.QuoteBuilder_richEditor .ProseMirror ul,
.QuoteBuilder_richEditor .ProseMirror ol {
  padding-left: 22px;
}
.QuoteBuilder_readOnly {
  border-color: transparent;
}
.QuoteBuilder_readOnly .ProseMirror {
  padding: 5px 0;
}
.QuoteBuilder_coverMessage {
  border: 1px solid #dbe5f0;
  background: #f8fafc;
  border-radius: 9px;
  padding: 20px;
  color: #526176;
}
.QuoteBuilder_coverMessage strong {
  color: #233556;
}
.QuoteBuilder_coverMessage p {
  line-height: 1.55;
}
.QuoteBuilder_addSection {
  max-width: 860px;
  margin: 12px auto;
  text-align: center;
}
.QuoteBuilder_addSection select {
  background: #fff;
  color: #0f766e;
  font-weight: 800;
}
.QuoteBuilder_canvasEmpty {
  height: 300px;
  display: grid;
  place-items: center;
  color: #64748b;
}
.QuoteBuilder_panelHelp {
  font-size: 11px;
  color: #64748b;
  line-height: 1.5;
  padding: 0 14px;
}
.QuoteBuilder_blockList {
  display: grid;
  gap: 7px;
  padding: 4px 10px 14px;
}
.QuoteBuilder_blockList button {
  border: 1px solid #dce3ec;
  border-radius: 8px;
  background: #fff;
  text-align: left;
  padding: 10px;
  display: flex;
  justify-content: space-between;
  color: #25344b;
  cursor: pointer;
}
.QuoteBuilder_blockList button span {
  font-size: 10px;
  color: #0f766e;
}
.QuoteBuilder_emptySmall {
  padding: 16px;
  text-align: center;
  color: #7a8798;
  font-size: 11px;
}
.QuoteBuilder_settingsCard {
  border-top: 1px solid #e2e8f0;
  padding: 14px;
}
.QuoteBuilder_settingsCard h3 {
  font-size: 13px;
  margin: 0 0 10px;
}
.QuoteBuilder_settingsCard label {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 0;
}
.QuoteBuilder_settingsCard p {
  font-size: 10px;
  color: #64748b;
  line-height: 1.4;
}
.QuoteBuilder_pricingScroll {
  overflow: auto;
}
.QuoteBuilder_pricingEditor table {
  border-collapse: collapse;
  width: 100%;
  min-width: 720px;
  font-size: 11px;
}
.QuoteBuilder_pricingEditor th {
  background: #233556;
  color: #fff;
  text-align: left;
  padding: 8px;
}
.QuoteBuilder_pricingEditor td {
  border: 1px solid #d8e0ea;
  padding: 5px;
  vertical-align: top;
}
.QuoteBuilder_pricingEditor input,
.QuoteBuilder_pricingEditor textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid transparent;
  background: transparent;
  padding: 5px;
  font: inherit;
}
.QuoteBuilder_pricingEditor input:focus,
.QuoteBuilder_pricingEditor textarea:focus {
  outline: 1px solid #5eead4;
  background: #fff;
}
.QuoteBuilder_pricingEditor textarea {
  resize: vertical;
  min-height: 38px;
}
.QuoteBuilder_pricingEditor .QuoteBuilder_amount {
  text-align: right;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  padding-top: 10px;
}
.QuoteBuilder_pricingEditor td button {
  border: 0;
  background: transparent;
  color: #b42318;
  cursor: pointer;
}
.QuoteBuilder_pricingEditor tfoot td {
  background: #f1f5f9;
  font-weight: 800;
  text-align: right;
}
.QuoteBuilder_addLine {
  margin-top: 10px;
  border: 1px dashed #5eead4;
  background: #f0fdfa;
  color: #0f766e;
  border-radius: 8px;
  padding: 8px 11px;
  font-weight: 800;
  cursor: pointer;
}
.QuoteBuilder_history {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 0 14px;
}
.QuoteBuilder_history summary {
  padding: 11px 0;
  cursor: pointer;
  font-weight: 750;
}
.QuoteBuilder_history details > div {
  display: grid;
  grid-template-columns: 1fr 140px 90px;
  align-items: center;
  border-top: 1px solid #edf1f5;
  padding: 8px;
}
.QuoteBuilder_history details > div span {
  display: grid;
}
.QuoteBuilder_history small {
  color: #64748b;
}
.QuoteBuilder_history button {
  height: 30px;
  border: 1px solid #cbd5e1;
  background: #fff;
  border-radius: 7px;
}
.QuoteBuilder_actions {
  min-height: 66px;
  position: sticky;
  bottom: 0;
  z-index: 9;
  background: #fff;
  border: 1px solid #dbe3ef;
  border-radius: 12px;
  padding: 10px 14px;
  display: flex;
  align-items: center;
  gap: 8px;
  box-shadow: 0 -5px 15px rgba(15, 23, 42, .06);
}
.QuoteBuilder_actions > div {
  display: grid;
}
.QuoteBuilder_actions > div strong {
  font-size: 16px;
}
.QuoteBuilder_actions > div span {
  font-size: 10px;
  color: #64748b;
}
.QuoteBuilder_actionSpacer {
  flex: 1;
}
.QuoteBuilder_libraryAdmin {
  border: 1px solid #dce3ec;
  border-radius: 11px;
  background: #fff;
  padding: 18px;
  margin-top: 18px;
}
.QuoteBuilder_libraryAdminHead {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: start;
}
.QuoteBuilder_libraryAdminHead h2 {
  margin: 0 0 4px;
  font-size: 17px;
}
.QuoteBuilder_libraryAdminHead p {
  margin: 0;
  color: #64748b;
}
.QuoteBuilder_libraryAdminHead > div:last-child {
  display: flex;
  gap: 6px;
}
.QuoteBuilder_libraryAdminHead > div:last-child > button:not(.QuoteBuilder_primary) {
  height: 36px;
  border: 1px solid #dce3ec;
  background: #fff;
  border-radius: 8px;
}
.QuoteBuilder_libraryAdminHead .QuoteBuilder_tabActive {
  color: #0f766e !important;
  background: #f0fdfa !important;
  border-color: #5eead4 !important;
}
.QuoteBuilder_adminRows {
  margin-top: 14px;
  border-top: 1px solid #e2e8f0;
}
.QuoteBuilder_adminRows > div {
  display: flex;
  gap: 8px;
  align-items: center;
  border-bottom: 1px solid #e2e8f0;
  padding: 10px;
}
.QuoteBuilder_adminRows > div > span {
  display: grid;
  gap: 2px;
  flex: 1;
}
.QuoteBuilder_adminRows small {
  color: #64748b;
}
.QuoteBuilder_libraryReview {
  margin-top: 14px;
  border: 1px solid #99f6e4;
  background: #f0fdfa;
  border-radius: 9px;
  padding: 14px;
  display: grid;
  gap: 10px;
}
.QuoteBuilder_libraryReview > button {
  justify-self: end;
}
.QuoteBuilder_libraryReview h3,
.QuoteBuilder_libraryReview p {
  margin: 0;
}
.QuoteBuilder_libraryReview ol {
  margin: 0;
  padding-left: 22px;
}
.QuoteBuilder_libraryReview li {
  padding: 5px;
}
.QuoteBuilder_libraryReview li span {
  color: #64748b;
  margin-left: 8px;
}
.QuoteBuilder_libraryReview textarea {
  height: auto;
  padding: 9px;
}
.QuoteBuilder_libraryReview footer {
  display: flex;
  justify-content: flex-end;
  gap: 7px;
}
.QuoteBuilder_brandSettings {
  margin-top: 18px;
  border-top: 1px solid #dce3ec;
  padding-top: 16px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  align-items: end;
}
.QuoteBuilder_brandSettings > div {
  grid-column: 1/-1;
}
.QuoteBuilder_brandSettings h3 {
  margin: 0 0 3px;
}
.QuoteBuilder_brandSettings p {
  margin: 0;
  color: #64748b;
}
.QuoteBuilder_brandSettings label {
  display: grid;
  gap: 5px;
}
.QuoteBuilder_brandSettings label span {
  font-size: 10px;
  font-weight: 800;
  color: #64748b;
  text-transform: uppercase;
}
.QuoteBuilder_brandSettings input {
  height: 36px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  padding: 0 9px;
  min-width: 0;
}
@media (max-width: 1180px) {
  .QuoteBuilder_partyCards {
    grid-template-columns: 1fr 1fr;
  }
  .QuoteBuilder_partyCard:last-child {
    grid-column: 1/-1;
  }
  .QuoteBuilder_templateGrid,
  .QuoteBuilder_sectionPicker {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .QuoteBuilder_detailsPanel {
    grid-template-columns: 1fr 1fr;
  }
  .QuoteBuilder_workspace {
    grid-template-columns: 230px minmax(420px, 1fr);
  }
  .QuoteBuilder_contextPanel {
    grid-column: 1/-1;
    border-left: 0;
    border-top: 1px solid #dce3ec;
    display: grid;
    grid-template-columns: 220px 1fr 280px;
  }
  .QuoteBuilder_contextPanel .QuoteBuilder_panelTitle {
    border-bottom: 0;
  }
  .QuoteBuilder_panelHelp {
    padding-top: 9px;
  }
  .QuoteBuilder_blockList {
    display: flex;
    overflow: auto;
    padding: 8px;
  }
  .QuoteBuilder_blockList button {
    min-width: 210px;
  }
  .QuoteBuilder_settingsCard {
    border-top: 0;
    border-left: 1px solid #e2e8f0;
  }
  .QuoteBuilder_identity > span:nth-last-child(-n+2) {
    display: none;
  }
}
@media (max-width: 760px) {
  .QuoteBuilder_setup {
    padding: 0 0 30px;
  }
  .QuoteBuilder_setupToolbar,
  .QuoteBuilder_builderToolbar {
    border-radius: 10px;
  }
  .QuoteBuilder_setupToolbar {
    display: grid;
    grid-template-columns: auto 1fr;
    padding: 10px;
  }
  .QuoteBuilder_setupToolbar > span {
    grid-column: 1/-1;
  }
  .QuoteBuilder_partyCards,
  .QuoteBuilder_formGrid,
  .QuoteBuilder_templateGrid,
  .QuoteBuilder_sectionPicker,
  .QuoteBuilder_detailsPanel {
    grid-template-columns: 1fr;
  }
  .QuoteBuilder_partyCard:last-child {
    grid-column: auto;
  }
  .QuoteBuilder_miniGrid {
    grid-template-columns: 1fr;
  }
  .QuoteBuilder_sectionPickerHead {
    align-items: start;
    display: grid;
  }
  .QuoteBuilder_builderToolbar {
    grid-template-columns: 1fr auto;
    padding: 10px;
  }
  .QuoteBuilder_builderToolbar > .QuoteBuilder_backButton {
    grid-column: 1/-1;
  }
  .QuoteBuilder_identity {
    overflow: auto;
  }
  .QuoteBuilder_identity > span:nth-last-child(-n+2) {
    display: none;
  }
  .QuoteBuilder_detailsFull {
    grid-column: auto;
  }
  .QuoteBuilder_workspace {
    display: block;
  }
  .QuoteBuilder_sectionNav {
    border: 0;
    border-bottom: 1px solid #dce3ec;
  }
  .QuoteBuilder_sectionList {
    display: flex;
    overflow: auto;
  }
  .QuoteBuilder_sectionRow {
    min-width: 190px;
  }
  .QuoteBuilder_sectionActions {
    display: flex;
  }
  .QuoteBuilder_canvas {
    padding: 10px;
  }
  .QuoteBuilder_sectionEditor {
    padding: 12px;
    min-height: 350px;
  }
  .QuoteBuilder_contextPanel {
    display: block;
  }
  .QuoteBuilder_settingsCard {
    border-left: 0;
    border-top: 1px solid #e2e8f0;
  }
  .QuoteBuilder_actions {
    overflow: auto;
  }
  .QuoteBuilder_actions .QuoteBuilder_actionSpacer {
    min-width: 10px;
  }
  .QuoteBuilder_actions button {
    white-space: nowrap;
  }
  .QuoteBuilder_history {
    padding: 0 10px;
  }
  .QuoteBuilder_libraryAdminHead {
    display: grid;
  }
  .QuoteBuilder_libraryAdminHead > div:last-child {
    flex-wrap: wrap;
  }
  .QuoteBuilder_brandSettings {
    grid-template-columns: 1fr;
  }
}

/* src/styles/PlanningWorkspace.module.css */
.PlanningWorkspace_workspace {
  display: flex;
  flex: 1;
  min-width: 0;
  min-height: 0;
  flex-direction: column;
  background: #f7f9fc;
  color: var(--opebix-text,#172033);
}
.PlanningWorkspace_topBar {
  display: flex;
  min-height: 84px;
  align-items: center;
  gap: 28px;
  padding: 12px 24px;
  border-bottom: 1px solid var(--opebix-border,#e4e7ec);
  background: #fff;
}
.PlanningWorkspace_titleGroup {
  display: grid;
  flex: 0 0 auto;
  gap: 2px;
}
.PlanningWorkspace_titleGroup span {
  color: var(--opebix-teal-dark,#0f9f96);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.PlanningWorkspace_titleGroup h1 {
  margin: 0;
  font-size: 24px;
  font-weight: 850;
  letter-spacing: -.03em;
  line-height: 1.15;
}
.PlanningWorkspace_viewTabs {
  display: flex;
  flex: 0 0 auto;
  gap: 3px;
  padding: 4px;
  border: 1px solid var(--opebix-border,#e4e7ec);
  border-radius: 12px;
  background: #f2f4f7;
}
.PlanningWorkspace_viewTabs button {
  min-height: 38px;
  padding: 7px 17px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: #667085;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  cursor: pointer;
  white-space: nowrap;
}
.PlanningWorkspace_viewTabs button:hover {
  color: #344054;
}
.PlanningWorkspace_viewTabs .PlanningWorkspace_activeTab {
  background: #fff;
  color: #172033;
  box-shadow: 0 1px 3px rgba(16, 24, 40, .1);
}
.PlanningWorkspace_periodNavigation {
  display: flex;
  min-width: 310px;
  align-items: center;
  justify-content: center;
  gap: 9px;
}
.PlanningWorkspace_periodNavigation > button {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border: 1px solid #dfe5ee;
  border-radius: 10px;
  background: #fff;
  color: #475467;
  cursor: pointer;
}
.PlanningWorkspace_periodNavigation > strong {
  min-width: 200px;
  color: #202939;
  font-size: 14px;
  font-weight: 800;
  text-align: center;
  white-space: nowrap;
}
.PlanningWorkspace_periodNavigation .PlanningWorkspace_todayButton {
  width: auto;
  padding: 0 15px;
  font-size: 13px;
  font-weight: 750;
}
.PlanningWorkspace_primaryActions {
  display: flex;
  min-width: 280px;
  align-items: center;
  gap: 10px;
  margin-left: auto;
}
.PlanningWorkspace_searchBox {
  display: flex;
  min-width: 160px;
  max-width: 280px;
  height: 42px;
  flex: 1;
  align-items: center;
  gap: 8px;
  padding: 0 13px;
  border: 1px solid #dfe5ee;
  border-radius: 11px;
  background: #f9fafb;
  color: #98a2b3;
}
.PlanningWorkspace_searchBox input {
  min-width: 0;
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  color: #344054;
  font: inherit;
  font-size: 13px;
}
.PlanningWorkspace_newButton {
  display: flex;
  min-height: 44px;
  align-items: center;
  gap: 8px;
  padding: 9px 17px;
  border: 0;
  border-radius: 10px;
  background: var(--opebix-teal-dark,#0f9f96);
  color: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  box-shadow: 0 2px 4px rgba(15, 159, 150, .22);
  cursor: pointer;
  white-space: nowrap;
}
.PlanningWorkspace_newButton:hover {
  background: #0b8b84;
}
.PlanningWorkspace_icon {
  display: inline-flex;
  width: 17px;
  height: 17px;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
}
.PlanningWorkspace_icon svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.PlanningWorkspace_filterBar {
  display: flex;
  min-height: 68px;
  align-items: center;
  gap: 12px;
  padding: 11px 24px;
  border-bottom: 1px solid var(--opebix-border,#e4e7ec);
  background: #fff;
}
.PlanningWorkspace_filterBar select {
  min-width: 150px;
  min-height: 42px;
  padding: 8px 34px 8px 13px;
  border: 1px solid #dfe5ee;
  border-radius: 10px;
  background: #fff;
  color: #344054;
  font: inherit;
  font-size: 13px;
  font-weight: 650;
  cursor: pointer;
}
.PlanningWorkspace_filterLabel {
  color: #98a2b3;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.PlanningWorkspace_filterDivider {
  width: 1px;
  height: 30px;
  background: #e4e7ec;
}
.PlanningWorkspace_resultCount {
  margin-left: auto;
  color: #667085;
  font-size: 12px;
  font-weight: 650;
  white-space: nowrap;
}
.PlanningWorkspace_undoButton {
  min-height: 40px;
  padding: 8px 12px;
  border: 1px solid #dfe5ee;
  border-radius: 9px;
  background: #fff;
  color: #475467;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}
.PlanningWorkspace_content {
  display: flex;
  min-width: 0;
  min-height: 0;
  flex: 1;
  padding: 18px 24px 24px;
}
.PlanningWorkspace_boardScroll,
.PlanningWorkspace_monthScroll {
  display: flex;
  width: 100%;
  min-width: 0;
  overflow-x: auto;
  padding-bottom: 5px;
  scrollbar-width: thin;
}
.PlanningWorkspace_weekBoard {
  display: grid;
  width: 100%;
  min-width: 1260px;
  grid-template-columns: repeat(7, minmax(170px, 1fr));
  gap: 12px;
  align-items: stretch;
}
.PlanningWorkspace_dayColumn {
  display: flex;
  min-height: 650px;
  flex-direction: column;
  gap: 10px;
  padding: 13px;
  border: 1px solid #e4e7ec;
  border-radius: 16px;
  background: #fff;
  scroll-snap-align: start;
}
.PlanningWorkspace_todayColumn {
  border-color: #a6e7e2;
  background: #f0fcfb;
  box-shadow: inset 0 0 0 1px rgba(15, 159, 150, .04);
}
.PlanningWorkspace_dayHeader {
  display: flex;
  min-height: 40px;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 2px 10px;
  border-bottom: 1px solid #e9edf3;
}
.PlanningWorkspace_dayHeader > span {
  display: flex;
  align-items: baseline;
  gap: 8px;
}
.PlanningWorkspace_dayHeader b {
  color: #98a2b3;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.PlanningWorkspace_dayHeader strong {
  color: #202939;
  font-size: 15px;
  font-weight: 850;
}
.PlanningWorkspace_todayColumn .PlanningWorkspace_dayHeader b,
.PlanningWorkspace_todayColumn .PlanningWorkspace_dayHeader strong {
  color: var(--opebix-teal-dark,#0f9f96);
}
.PlanningWorkspace_dayHeader small {
  color: #98a2b3;
  font-size: 10px;
  font-weight: 750;
  white-space: nowrap;
}
.PlanningWorkspace_dayCards {
  display: grid;
  gap: 10px;
}
.PlanningWorkspace_bookingCard {
  position: relative;
  display: grid;
  width: 100%;
  gap: 6px;
  overflow: hidden;
  padding: 14px 13px 12px 16px;
  border: 1px solid #dfe5ee;
  border-radius: 13px;
  background: #fff;
  color: #344054;
  box-shadow: 0 2px 5px rgba(16, 24, 40, .06);
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.PlanningWorkspace_bookingCard::before {
  position: absolute;
  top: 11px;
  bottom: 11px;
  left: 0;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: var(--booking-accent);
  content: "";
}
.PlanningWorkspace_bookingCard:hover {
  border-color: #cbd5e1;
  box-shadow: 0 5px 12px rgba(16, 24, 40, .09);
  transform: translateY(-1px);
}
.PlanningWorkspace_cardClient,
.PlanningWorkspace_cardActivity,
.PlanningWorkspace_cardSite span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.PlanningWorkspace_cardClient {
  color: #202939;
  font-size: 13px;
  font-weight: 850;
}
.PlanningWorkspace_cardActivity {
  color: #475467;
  font-size: 12px;
  font-weight: 650;
}
.PlanningWorkspace_cardSite {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 5px;
  color: #98a2b3;
  font-size: 10.5px;
}
.PlanningWorkspace_cardSite .PlanningWorkspace_icon {
  width: 13px;
  height: 13px;
}
.PlanningWorkspace_cardDivider {
  height: 1px;
  margin-top: 2px;
  background: #edf0f4;
}
.PlanningWorkspace_cardFooter {
  display: flex;
  min-width: 0;
  min-height: 25px;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.PlanningWorkspace_cardTime {
  display: flex;
  align-items: center;
  gap: 5px;
  color: #475467;
  font-size: 11px;
}
.PlanningWorkspace_cardTime .PlanningWorkspace_icon {
  width: 13px;
  height: 13px;
  color: #98a2b3;
}
.PlanningWorkspace_cardTime b {
  font-weight: 800;
}
.PlanningWorkspace_avatars {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: flex-end;
  padding-left: 4px;
}
.PlanningWorkspace_avatar {
  display: grid;
  width: 23px;
  height: 23px;
  place-items: center;
  margin-left: -5px;
  border: 2px solid #fff;
  border-radius: 50%;
  color: #fff;
  font-size: 8px;
  font-style: normal;
  font-weight: 850;
  letter-spacing: -.02em;
}
.PlanningWorkspace_moreAvatar {
  background: #e4e7ec !important;
  color: #475467;
}
.PlanningWorkspace_unassigned {
  color: #98a2b3;
  font-size: 9px;
  font-weight: 700;
}
.PlanningWorkspace_addDayButton {
  display: flex;
  min-height: 43px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin-top: auto;
  border: 1px dashed #cbd5e1;
  border-radius: 11px;
  background: transparent;
  color: #98a2b3;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}
.PlanningWorkspace_addDayButton:hover {
  border-color: var(--opebix-teal-dark,#0f9f96);
  background: #f0fdfa;
  color: var(--opebix-teal-dark,#0f9f96);
}
.PlanningWorkspace_addDayButton .PlanningWorkspace_icon {
  width: 14px;
  height: 14px;
}
.PlanningWorkspace_monthBoard {
  display: grid;
  width: 100%;
  min-width: 900px;
  grid-template-columns: repeat(7, minmax(125px, 1fr));
  gap: 5px;
}
.PlanningWorkspace_monthCell {
  min-height: 135px;
  padding: 8px;
  border: 1px solid #e4e7ec;
  border-radius: 10px;
  background: #fff;
}
.PlanningWorkspace_monthCell > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 7px;
}
.PlanningWorkspace_monthCell > header button {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #475467;
  font: inherit;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}
.PlanningWorkspace_monthCell > header button:hover {
  background: #f0fdfa;
  color: #0f9f96;
}
.PlanningWorkspace_monthCell > header small {
  color: #98a2b3;
  font-size: 10px;
}
.PlanningWorkspace_otherMonth {
  background: #f9fafb;
  opacity: .7;
}
.PlanningWorkspace_todayCell {
  border-color: #84dad4;
  background: #f0fcfb;
}
.PlanningWorkspace_monthCell > div {
  display: grid;
  gap: 5px;
}
.PlanningWorkspace_monthBooking {
  display: grid;
  gap: 2px;
  overflow: hidden;
  padding: 6px 7px;
  border: 0;
  border-left: 3px solid var(--booking-accent);
  border-radius: 5px;
  background: #f8fafc;
  color: #344054;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.PlanningWorkspace_monthBooking b,
.PlanningWorkspace_monthBooking span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.PlanningWorkspace_monthBooking b {
  font-size: 9.5px;
}
.PlanningWorkspace_monthBooking span {
  color: #667085;
  font-size: 8.5px;
}
.PlanningWorkspace_moreBookings {
  display: block;
  padding: 5px;
  color: #98a2b3;
  font-size: 9px;
}
.PlanningWorkspace_jobList {
  display: grid;
  width: 100%;
  align-content: start;
  gap: 10px;
}
.PlanningWorkspace_listCard {
  overflow: hidden;
  border: 1px solid #e4e7ec;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 2px 5px rgba(16, 24, 40, .04);
}
.PlanningWorkspace_listSummary {
  display: grid;
  width: 100%;
  grid-template-columns: minmax(220px, 1.3fr) minmax(120px, .8fr) minmax(140px, .9fr) minmax(90px, .55fr) auto 32px;
  gap: 14px;
  align-items: center;
  padding: 15px 17px;
  border: 0;
  background: #fff;
  color: #344054;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.PlanningWorkspace_listSummary:hover {
  background: #fcfcfd;
}
.PlanningWorkspace_listSummary > span {
  display: grid;
  min-width: 0;
  gap: 4px;
}
.PlanningWorkspace_listSummary > span > strong,
.PlanningWorkspace_listSummary > span > b {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.PlanningWorkspace_listSummary > span > strong {
  color: #202939;
  font-size: 14px;
  font-weight: 850;
}
.PlanningWorkspace_listSummary small {
  color: #98a2b3;
  font-size: 9px;
  font-weight: 750;
  text-transform: uppercase;
}
.PlanningWorkspace_listSummary > span:first-child small {
  text-transform: none;
}
.PlanningWorkspace_listSummary b {
  color: #475467;
  font-size: 11px;
}
.PlanningWorkspace_listSummary em {
  padding: 5px 8px;
  border-radius: 999px;
  background: #f8fafc;
  font-size: 10px;
  font-style: normal;
  font-weight: 800;
  white-space: nowrap;
}
.PlanningWorkspace_listSummary i {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 8px;
  background: #f2f4f7;
  font-style: normal;
}
.PlanningWorkspace_listExpanded {
  padding: 14px 17px 16px;
  border-top: 1px solid #edf0f4;
  background: #fafbfc;
}
.PlanningWorkspace_listDetails {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
}
.PlanningWorkspace_listDetails span {
  display: grid;
  gap: 5px;
  padding: 10px;
  border: 1px solid #e9edf3;
  border-radius: 9px;
  background: #fff;
}
.PlanningWorkspace_listDetails small {
  color: #98a2b3;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}
.PlanningWorkspace_listDetails strong {
  overflow: hidden;
  color: #344054;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.PlanningWorkspace_listActions {
  display: flex;
  gap: 8px;
  margin-top: 12px;
}
.PlanningWorkspace_listActions button {
  min-height: 38px;
  padding: 7px 13px;
  border: 1px solid #dfe5ee;
  border-radius: 9px;
  background: #fff;
  color: #344054;
  font: inherit;
  font-size: 11px;
  font-weight: 750;
  cursor: pointer;
}
.PlanningWorkspace_listActions .PlanningWorkspace_dangerButton {
  border-color: #fecdca;
  background: #fff5f4;
  color: #b42318;
}
.PlanningWorkspace_emptyState,
.PlanningWorkspace_loadingState {
  display: grid;
  width: 100%;
  min-height: 260px;
  place-content: center;
  gap: 5px;
  border: 1px dashed #d0d5dd;
  border-radius: 14px;
  background: #fff;
  color: #667085;
  text-align: center;
}
.PlanningWorkspace_emptyState strong {
  color: #344054;
}
.PlanningWorkspace_srOnly {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}
.PlanningWorkspace_workspace button:focus-visible,
.PlanningWorkspace_workspace select:focus-visible,
.PlanningWorkspace_workspace input:focus-visible {
  outline: 2px solid var(--opebix-focus,#2563eb);
  outline-offset: 2px;
}
@media (max-width: 1450px) {
  .PlanningWorkspace_topBar {
    flex-wrap: wrap;
    gap: 12px 20px;
  }
  .PlanningWorkspace_periodNavigation {
    order: 4;
    flex: 1 1 100%;
    justify-content: flex-start;
  }
  .PlanningWorkspace_primaryActions {
    min-width: 340px;
  }
  .PlanningWorkspace_content {
    padding-top: 14px;
  }
}
@media (max-width: 900px) {
  .PlanningWorkspace_topBar {
    padding: 13px 16px;
  }
  .PlanningWorkspace_titleGroup {
    margin-right: auto;
  }
  .PlanningWorkspace_viewTabs {
    order: 3;
    width: 100%;
    overflow-x: auto;
  }
  .PlanningWorkspace_viewTabs button {
    flex: 1;
  }
  .PlanningWorkspace_primaryActions {
    width: 100%;
    min-width: 0;
    order: 4;
    margin-left: 0;
  }
  .PlanningWorkspace_periodNavigation {
    order: 5;
    min-width: 0;
  }
  .PlanningWorkspace_filterBar {
    overflow-x: auto;
    padding: 10px 16px;
  }
  .PlanningWorkspace_filterBar select {
    flex: 0 0 150px;
  }
  .PlanningWorkspace_resultCount {
    position: sticky;
    right: 0;
    padding: 8px;
    background: #fff;
  }
  .PlanningWorkspace_content {
    padding: 14px 16px 20px;
  }
  .PlanningWorkspace_weekBoard {
    min-width: 1225px;
  }
  .PlanningWorkspace_dayColumn {
    min-height: 600px;
    scroll-snap-align: start;
  }
  .PlanningWorkspace_boardScroll {
    scroll-snap-type: x proximity;
  }
  .PlanningWorkspace_listSummary {
    grid-template-columns: minmax(190px, 1fr) minmax(120px, .7fr) auto 32px;
  }
  .PlanningWorkspace_listSummary > span:nth-child(3),
  .PlanningWorkspace_listSummary > span:nth-child(4) {
    display: none;
  }
  .PlanningWorkspace_listDetails {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 560px) {
  .PlanningWorkspace_topBar {
    align-items: flex-start;
  }
  .PlanningWorkspace_titleGroup h1 {
    font-size: 21px;
  }
  .PlanningWorkspace_primaryActions {
    display: grid;
    grid-template-columns: 1fr;
  }
  .PlanningWorkspace_searchBox {
    width: auto;
    max-width: none;
  }
  .PlanningWorkspace_newButton {
    justify-content: center;
  }
  .PlanningWorkspace_periodNavigation {
    display: grid;
    width: 100%;
    grid-template-columns: 40px 1fr 40px;
  }
  .PlanningWorkspace_periodNavigation > strong {
    min-width: 0;
    font-size: 12px;
  }
  .PlanningWorkspace_periodNavigation .PlanningWorkspace_todayButton {
    grid-column: 1/-1;
    width: 100%;
  }
  .PlanningWorkspace_filterBar {
    gap: 8px;
  }
  .PlanningWorkspace_filterLabel,
  .PlanningWorkspace_filterDivider,
  .PlanningWorkspace_undoButton {
    display: none;
  }
  .PlanningWorkspace_content {
    padding: 12px;
  }
  .PlanningWorkspace_weekBoard {
    min-width: 1190px;
    gap: 10px;
  }
  .PlanningWorkspace_dayColumn {
    padding: 11px;
  }
  .PlanningWorkspace_listSummary {
    grid-template-columns: minmax(0, 1fr) auto 32px;
  }
  .PlanningWorkspace_listSummary > span:nth-child(2) {
    display: none;
  }
  .PlanningWorkspace_listExpanded {
    padding: 12px;
  }
  .PlanningWorkspace_listDetails {
    grid-template-columns: 1fr;
  }
  .PlanningWorkspace_listActions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .PlanningWorkspace_listActions button {
    width: 100%;
  }
}
