@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root {
  --bg: #f0f2f5;
  --panel: #ffffff;
  --sidebar: #1e2535;
  --sidebar-head: #161d2e;
  --text: #0f172a;
  --muted: #64748b;
  --muted-2: #94a3b8;
  --line: #e2e8f0;
  --line-2: #f1f5f9;
  --field: #cbd5e1;
  --blue: #3b82f6;
  --blue-dark: #2563eb;
  --green: #16a34a;
  --green-bg: #dcfce7;
  --red: #ef4444;
  --red-bg: #fef2f2;
  --red-line: #fecaca;
  --section: #334155;
  --section-dark: #263449;
  --shadow: 0 1px 2px rgba(15, 23, 42, .04);
  --radius: 6px;
}

* {
  box-sizing: border-box
}

html,
body {
  margin: 0;
  min-height: 100%;
  font-family: 'Inter', Arial, sans-serif;
  background: var(--bg);
  color: var(--text);
  font-size: 13px;
  line-height: 1.25
}

a {
  color: inherit;
  text-decoration: none
}

button,
input,
select,
textarea {
  font: inherit
}

button {
  cursor: pointer
}

.layout {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  min-height: 100vh;
  background: var(--bg)
}

.sidebar {
  height: 100vh;
  position: sticky;
  top: 0;
  background: var(--sidebar);
  color: #fff;
  display: flex;
  flex-direction: column;
  padding: 0;
  z-index: 40
}

.sidebar-head {
  height: 56px;
  background: var(--sidebar-head);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 14px
}

.brand {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #fff;
  font-weight: 800;
  font-size: 14px;
  letter-spacing: .01em;
  white-space: nowrap
}

.brand-icon {
  width: 18px;
  height: 18px;
  display: inline-block;
  position: relative;
  flex: 0 0 auto
}

.brand-icon:before {
  content: "";
  position: absolute;
  inset: 2px 4px;
  border: 1.8px solid var(--blue);
  border-top-width: 2.2px;
  border-radius: 3px 3px 7px 7px;
  transform: skewY(-8deg)
}

.brand-icon:after {
  content: "";
  position: absolute;
  left: 7px;
  top: 6px;
  width: 5px;
  height: 3px;
  border-left: 1.8px solid var(--blue);
  border-bottom: 1.8px solid var(--blue);
  transform: rotate(-45deg)
}

.mobile-menu-btn {
  display: none;
  background: transparent;
  border: 0;
  color: #fff;
  font-size: 22px
}

.nav {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 8px 0;
  width: 100%
}

.nav a {
  height: 38px;
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 0 16px;
  border-radius: 6px;
  color: var(--muted);
  font-weight: 500;
  font-size: 13px;
  line-height: 15.6px;
  border: 1px solid transparent
}

.nav a:before {
  content: "";
  width: 15px;
  height: 15px;
  flex: 0 0 auto;
  border: 1.6px solid currentColor;
  border-radius: 3px;
  opacity: .7
}

.nav a:hover {
  background: rgba(148, 163, 184, .07);
  color: #cbd5e1
}

.nav a.active {
  background: rgba(59, 130, 246, .13);
  border-color: var(--blue);
  color: var(--blue);
  font-weight: 700
}

.main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  background: var(--bg)
}

.topbar {
  height: 52px;
  background: #fff;
  border-bottom: 1px solid var(--line);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0 16px;
  flex: 0 0 auto
}

.page-title {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 18px;
  font-weight: 800;
  line-height: 21.6px;
  letter-spacing: -.02em;
  color: var(--text);
  white-space: nowrap
}

.page-subtitle {
  font-size: 12px;
  line-height: 14.4px;
  color: var(--muted-2);
  margin-top: 1px
}

.top-actions {
  display: flex;
  align-items: center;
  gap: 8px
}

.top-actions form {
  display: inline-flex;
  margin: 0
}

.user-pill {
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  background: #f8fafc;
  border: 1px solid var(--line);
  color: #374151;
  border-radius: 7px;
  padding: 0 12px;
  font-weight: 600;
  font-size: 13px;
  white-space: nowrap
}

.user-pill:before {
  content: "";
  width: 14px;
  height: 14px;
  border: 1.6px solid #64748b;
  border-radius: 50%;
  display: inline-block;
  box-shadow: 0 9px 0 -6px #64748b
}

.btn {
  min-height: 34px;
  border: 1px solid transparent;
  border-radius: 7px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 12px;
  font-weight: 700;
  font-size: 13px;
  line-height: 15.6px;
  background: #fff;
  color: #334155
}

.btn-primary {
  background: var(--blue);
  border-color: var(--blue);
  color: #fff;
  box-shadow: 0 2px 4px rgba(59, 130, 246, .19)
}

.btn-primary:hover {
  background: var(--blue-dark);
  border-color: var(--blue-dark)
}

.btn-ghost {
  background: var(--red-bg);
  border-color: var(--red-line);
  color: var(--red)
}

.full {
  width: 100%
}

.messages {
  position: fixed;
  right: 16px;
  top: 64px;
  z-index: 300;
  display: grid;
  gap: 8px;
  max-width: 420px
}

.message {
  border: 1px solid var(--line);
  background: #fff;
  border-radius: 7px;
  padding: 10px 12px;
  box-shadow: 0 16px 40px rgba(15, 23, 42, .12)
}

.message.success {
  border-color: #bbf7d0;
  background: #f0fdf4;
  color: #166534
}

.message.error {
  border-color: #fecaca;
  background: #fef2f2;
  color: #991b1b
}

.field,
input,
select,
textarea {
  width: 100%;
  height: 28px;
  min-height: 28px;
  border: 1px solid var(--field);
  background: #fff;
  color: #374151;
  border-radius: 6px;
  padding: 0 10px;
  outline: 0;
  font-size: 12px;
  line-height: 14.4px;
  box-shadow: none
}

textarea {
  height: auto;
  min-height: 58px;
  padding: 8px 10px;
  resize: vertical
}

input[type=file] {
  padding: 3px 8px;
  background: #fff
}

input[type=date] {
  padding-right: 8px
}

.field:focus,
input:focus,
select:focus,
textarea:focus {
  border-color: var(--blue);
  box-shadow: 0 0 0 2px rgba(59, 130, 246, .13)
}

label {
  display: block;
  font-size: 11px;
  line-height: 13.2px;
  color: var(--muted);
  font-weight: 600;
  margin: 0 0 3px
}

.panel,
/* .stat, */
.table-wrap,
.application-create-window {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 6px;
  box-shadow: var(--shadow)
}

.panel {
  padding: 12px;
  min-width: 0
}

.compact-panel {
  padding: 12px
}

.panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px
}

.panel h2,
.form-section h3,
.section-titlebar,
.summary-section h2 {
  font-size: 13px;
  line-height: 15.6px;
  font-weight: 800;
  margin: 0;
  color: inherit
}

.count-pill {
  font-size: 12px;
  color: var(--muted);
  font-weight: 700
}

.stats-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(130px, 1fr));
  gap: 10px;
  margin: 0 0 10px
}

.stat {
  padding: 9px 12px
}

.stat span {
  display: block;
  color: var(--muted);
  font-size: 12px
}

.stat b {
  display: block;
  font-size: 18px;
  line-height: 1.15;
  margin-top: 2px
}

.filters {
  display: grid;
  grid-template-columns: 2fr repeat(5, 1fr);
  gap: 8px;
  margin-bottom: 10px
}

.filter-control label {
  margin-bottom: 4px
}

.search-combo {
  display: flex;
  align-items: stretch;
  min-width: 0
}

.search-combo input {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  padding-right: 10px
}

.search-combo button {
  height: 28px;
  border: 1px solid var(--blue);
  border-left: 0;
  background: var(--blue);
  color: #fff;
  border-radius: 0 6px 6px 0;
  padding: 0 18px;
  font-weight: 800
}

.application-table {
  min-width: 0
}

.application-head,
.application-row {
  display: grid;
  grid-template-columns: 80px minmax(150px, 1.05fr) 105px minmax(150px, 1.2fr) 105px 125px 100px 120px 120px;
  gap: 8px;
  align-items: center
}

.application-head {
  height: 34px;
  background: var(--section);
  color: #fff;
  border-radius: 6px;
  padding: 0 10px;
  margin-bottom: 8px
}

.application-head a {
  font-size: 12px;
  font-weight: 800;
  color: #fff;
  white-space: nowrap
}

.application-head a.active:after {
  content: "";
  display: inline-block;
  margin-left: 5px;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid currentColor;
  vertical-align: middle
}

.application-head a.active.asc:after {
  border-top: 0;
  border-bottom: 5px solid currentColor
}

.application-table [data-list-body] {
  display: grid;
  gap: 8px
}

.application-row {
  min-height: 44px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 7px 10px;
  transition: border-color .15s, box-shadow .15s;
  color: #334155
}

.application-row:hover {
  border-color: var(--blue);
  box-shadow: 0 3px 9px rgba(15, 23, 42, .08)
}

.application-row span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

.application-row small {
  display: block;
  color: var(--muted-2);
  font-size: 11px;
  margin-top: 2px;
  overflow: hidden;
  text-overflow: ellipsis
}

.application-row b {
  color: #0f172a
}

.badge,
.finance-chip,
.status-badge-title {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  max-width: 100%;
  border-radius: 20px;
  padding: 3px 10px;
  font-weight: 800;
  font-size: 12px;
  line-height: 14.4px;
  background: var(--green-bg);
  color: var(--green)
}

.status-badge-title {
  font-size: 12px;
  padding: 3px 10px
}

.empty {
  padding: 16px;
  text-align: center;
  color: var(--muted);
  border: 1px dashed var(--line);
  border-radius: 6px;
  background: #fff
}

.empty.small {
  padding: 10px;
  font-size: 12px
}

.loader-row {
  text-align: center;
  color: var(--muted);
  padding: 12px
}

.scroll-sentinel {
  height: 1px
}

.form-grid,
.fields-2,
.fields-3 {
  display: grid;
  gap: 8px
}

.fields-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr))
}

.fields-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr))
}

.wide-field,
.vin-field {
  grid-column: 1/-1
}

.form-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px
}

.form-section {
  padding: 0 0 8px;
  border: 0;
  border-bottom: 1px solid var(--line-2);
  background: transparent
}

.form-section:last-child {
  border-bottom: 0
}

.form-section h3 {
  display: none
}

.section-operation .fields-3,
.operation-row,
.vehicle-grid-v17,
.client-grid-v17,
.payment-grid-v17 {
  grid-template-columns: repeat(3, minmax(0, 1fr))
}

.modal-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, .44);
  display: grid;
  place-items: center;
  z-index: 1000
}

.modal {
  width: min(420px, calc(100vw - 32px));
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 20px;
  box-shadow: 0 24px 80px rgba(15, 23, 42, .24)
}

.modal-title {
  font-size: 18px;
  font-weight: 800;
  margin-bottom: 8px
}

.modal-text {
  color: #374151;
  line-height: 1.45;
  margin-bottom: 16px
}

[hidden] {
  display: none !important
}

/* Application detail: Figma node 6:2 converted to Django/CSS */
body.application-detail-body {
  height: 100vh;
  overflow: hidden
}

.application-detail-body .layout {
  height: 100vh;
  overflow: hidden
}

.application-detail-body .main {
  height: 100vh;
  overflow: hidden
}

.application-detail-body .topbar {
  padding: 0 16px
}

.application-window {
  flex: 1 1 auto;
  min-height: 0;
  width: 100%;
  display: grid;
  grid-template-columns: 480px 390px minmax(360px, 1fr);
  grid-template-rows: 300px minmax(0, 1fr);
  gap: 0;
  overflow: hidden;
  background: #fff
}

.app-section {
  min-width: 0;
  min-height: 0;
  background: #fff;
  border: 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  box-shadow: none;
  display: flex;
  flex-direction: column;
  overflow: hidden
}

.edit-section {
  grid-column: 1;
  grid-row: 1/3
}

.summary-section {
  grid-column: 2;
  grid-row: 1
}

.comments-section {
  grid-column: 2;
  grid-row: 2
}

.finance-section {
  grid-column: 3;
  grid-row: 1;
  border-right: 0
}

.history-section {
  grid-column: 3;
  grid-row: 2;
  border-right: 0
}

.section-titlebar,
.summary-section h2 {
  height: 36px;
  flex: 0 0 36px;
  background: var(--section);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 14px;
  font-size: 13px;
  font-weight: 800
}

.section-titlebar .badge {
  background: rgba(34, 197, 94, .10);
  border: 1px solid rgba(34, 197, 94, .25);
  border-radius: 4px;
  color: #22c55e;
  padding: 3px 10px;
  font-size: 12px
}

.detail-form {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  display: flex;
  flex-direction: column;
  gap: 7px;
  padding: 12px
}

.detail-form .fields-3 {
  gap: 6px 10px
}

.detail-form .form-section {
  flex: 0 0 auto
}

.detail-form input,
.detail-form select,
.detail-form textarea {
  height: 28px;
  min-height: 28px
}

.summary-lines {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  padding: 10px;
  display: flex;
  flex-direction: column
}

.summary-lines div {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  min-height: 30px;
  border-bottom: 1px solid var(--line-2);
  font-size: 12px;
  line-height: 14.4px
}

.summary-lines span {
  color: var(--muted);
  font-weight: 600
}

.summary-lines b {
  font-weight: 700;
  color: #0f172a;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

.inline-form {
  flex: 0 0 auto;
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 10px
}

.inline-form textarea {
  min-height: 58px;
  resize: none
}

.finance-form {
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 90px;
  gap: 8px;
  margin: 0;
  padding: 10px
}

.finance-form input[name=note] {
  grid-column: 1/-1
}

.finance-form button {
  grid-column: 1/-1
}

.list-box {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  padding: 0 10px 10px
}

.timeline,
.finance-list {
  height: 100%;
  max-height: none;
  overflow: auto;
  display: grid;
  align-content: start;
  grid-auto-rows: max-content;
  gap: 0
}

.timeline-item {
  padding: 10px 0;
  border-bottom: 1px solid var(--line-2);
  border-radius: 0;
  background: #fff
}

.timeline-item b,
.timeline-item span,
.timeline-item small {
  display: block
}

.timeline-item b {
  font-size: 12px;
  color: #374151;
  margin-bottom: 4px
}

.timeline-item span {
  font-size: 12px;
  color: #374151;
  margin: 0 0 3px
}

.timeline-item small {
  font-size: 11px;
  color: var(--muted-2)
}

.finance-row {
  border: 0;
  border-bottom: 1px solid var(--line-2);
  border-radius: 0;
  background: #fff;
  padding: 9px 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 3px
}

.finance-row span {
  color: #64748b
}

.finance-row b {
  font-size: 13px
}

.finance-row small {
  grid-column: 1/-1;
  color: var(--muted-2);
  font-size: 11px
}

.finance-row.income b,
.finance-chip.income {
  color: #15803d;
  background: transparent
}

.finance-row.expense b,
.finance-chip.expense {
  color: #dc2626;
  background: transparent
}

.finance-row.refund b,
.finance-chip.refund {
  color: #b45309;
  background: transparent
}

.finance-chip {
  border-radius: 4px;
  padding: 2px 6px
}

.application-create-window {
  padding: 0;
  margin: 16px;
  overflow: hidden
}

.create-form-grid {
  display: grid;
  gap: 0;
  padding: 12px
}

.create-form-grid .form-section {
  padding: 0 0 10px;
  margin-bottom: 10px
}

.create-form-grid .form-actions {
  padding-top: 10px;
  border-top: 1px solid var(--line-2)
}

/* Tables and reports */
.table-wrap {
  overflow: auto
}

.no-scroll {
  overflow-x: hidden
}

.table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px
}

.table th,
.table td {
  border-bottom: 1px solid var(--line-2);
  text-align: left;
  padding: 8px;
  vertical-align: top
}

.table th {
  color: #475569;
  font-weight: 800;
  background: #fff
}

.sortable.active {
  color: var(--blue)
}

.finance-stats {
  padding: 16px 16px 0;
  margin-bottom: 10px
}

.main>.panel:not(.reports-filter-panel) {
  margin: 16px
}

.reports-body {
  height: 100vh;
  overflow: hidden
}

.reports-body .layout,
.reports-body .main {
  height: 100vh;
  overflow: hidden
}

.reports-body .main {
  display: flex;
  flex-direction: column
}

.reports-filter-panel {
  margin: 12px 16px 8px;
  padding: 10px;
  flex: 0 0 auto
}

.reports-filters {
  grid-template-columns: repeat(7, minmax(120px, 1fr));
  margin: 0
}

.reports-stats {
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  gap: 8px;
  margin: 0 16px 8px;
  flex: 0 0 auto
}

.compact-stat {
  padding: 8px 10px
}

.compact-stat b {
  font-size: 16px
}

.reports-workspace {
  flex: 1 1 auto;
  min-height: 0;
  margin: 0 16px 16px;
  display: grid;
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
  gap: 10px
}

.reports-main-grid {
  min-height: 0;
  display: grid;
  grid-template-columns: 1.9fr 1fr;
  gap: 10px
}

.report-grid {
  min-height: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px
}

.report-grid-bottom {
  min-height: 0
}

.report-rank-panel,
.report-card {
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: 0;
  overflow: hidden
}

.report-rank-panel h2,
.report-card h2,
.panel-head h2 {
  font-size: 13px;
  font-weight: 800
}

.report-rank-panel h2,
.report-card h2 {
  padding: 10px 12px;
  border-bottom: 1px solid var(--line-2);
  margin: 0
}

.report-table-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  padding: 0 10px 10px
}

.report-table-tall {
  max-height: none
}

.card-list {
  display: grid;
  gap: 8px
}

.card-list.dense {
  gap: 6px
}

.users-list .application-card,
.user-card {
  grid-template-columns: minmax(220px, 1fr) auto
}

.user-card-status {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px
}

.role-pill,
.activity-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  padding: 4px 8px;
  font-size: 11px;
  font-weight: 800;
  border: 1px solid var(--line);
  background: #fff;
  color: #344054
}

.activity-pill.active {
  background: #dcfce7;
  color: #166534;
  border-color: #bbf7d0
}

.activity-pill.blocked {
  background: #fee2e2;
  color: #991b1b;
  border-color: #fecaca
}

.login-body {
  min-height: 100vh;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, #f8fafc, #e2e8f0)
}

.login-card {
  width: min(380px, calc(100vw - 28px));
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 24px;
  box-shadow: 0 20px 70px rgba(15, 23, 42, .12)
}

.login-brand {
  margin-bottom: 16px;
  color: #111827
}

.login-card h1 {
  margin: 0;
  font-size: 24px
}

.login-card p {
  margin: 6px 0 16px;
  color: var(--muted)
}

/* Scrollbars */
* {
  scrollbar-width: thin;
  scrollbar-color: #94a3b8 transparent
}

::-webkit-scrollbar {
  width: 8px;
  height: 8px
}

::-webkit-scrollbar-thumb {
  background: #94a3b8;
  border-radius: 8px
}

::-webkit-scrollbar-track {
  background: transparent
}

@media(max-width:1320px) {
  .application-window {
    grid-template-columns: 430px 340px minmax(320px, 1fr)
  }

  .application-head,
  .application-row {
    grid-template-columns: 70px minmax(140px, 1fr) 95px minmax(130px, 1fr) 90px 105px 85px 105px 108px
  }

  .reports-filters {
    grid-template-columns: repeat(4, 1fr)
  }

  .report-grid {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width:1100px) {

  body.application-detail-body,
  .reports-body {
    height: auto;
    overflow: auto
  }

  .layout {
    display: block;
    min-height: 100vh
  }

  .sidebar {
    height: auto;
    min-height: 56px;
    position: sticky;
    top: 0
  }

  .sidebar-head {
    justify-content: space-between
  }

  .mobile-menu-btn {
    display: block
  }

  .nav {
    display: none
  }

  .sidebar.open .nav {
    display: flex
  }

  .main {
    min-height: 0
  }

  .topbar {
    position: sticky;
    top: 56px;
    z-index: 35
  }

  .application-window {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    gap: 8px;
    padding: 8px;
    background: var(--bg);
    overflow: visible
  }

  .app-section,
  .edit-section,
  .summary-section,
  .comments-section,
  .finance-section,
  .history-section {
    grid-column: auto;
    grid-row: auto;
    border: 1px solid var(--line);
    border-radius: 6px;
    max-height: none
  }

  .detail-form {
    max-height: none;
    overflow: visible
  }

  .list-box {
    max-height: 320px
  }

  .reports-body .layout,
  .reports-body .main {
    height: auto;
    overflow: visible
  }

  .reports-workspace {
    display: grid;
    grid-template-rows: auto;
    margin: 0 12px 12px
  }

  .reports-main-grid,
  .report-grid {
    grid-template-columns: 1fr
  }

  .report-table-scroll {
    max-height: 300px
  }

  .filters,
  .reports-filters {
    grid-template-columns: 1fr 1fr
  }

  .stats-grid,
  .reports-stats {
    grid-template-columns: repeat(2, 1fr);
    margin-left: 12px;
    margin-right: 12px
  }

  .main>.panel:not(.reports-filter-panel) {
    margin: 12px
  }

  .application-head {
    display: none
  }

  .application-row {
    grid-template-columns: 1fr 1fr;
    gap: 6px
  }

  .messages {
    left: 12px;
    right: 12px
  }

  .create-form-grid .fields-3,
  .fields-3,
  .fields-2,
  .section-operation .fields-3,
  .operation-row,
  .vehicle-grid-v17,
  .client-grid-v17,
  .payment-grid-v17 {
    grid-template-columns: 1fr !important
  }

  .wide-field,
  .vin-field {
    grid-column: auto !important
  }
}

@media(max-width:640px) {
  .topbar {
    height: auto;
    min-height: 52px;
    align-items: flex-start;
    flex-direction: column;
    padding: 10px 12px
  }

  .top-actions {
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap
  }

  .page-title {
    font-size: 17px
  }

  .filters,
  .reports-filters,
  .stats-grid,
  .reports-stats {
    grid-template-columns: 1fr
  }

  .application-row {
    grid-template-columns: 1fr
  }

  .finance-form {
    grid-template-columns: 1fr
  }

  .section-titlebar,
  .summary-section h2 {
    height: 34px;
    flex-basis: 34px
  }

  .application-create-window {
    margin: 12px
  }

  .create-form-grid {
    padding: 10px
  }

  .sidebar {
    position: sticky;
    top: 0
  }

  .brand {
    font-size: 14px
  }
}

/* v19: internal messages removed; summary moved under editing; finances/history full height */
@media (min-width:1101px) {
  .application-window-v19 {
    grid-template-columns: 480px minmax(360px, .9fr) minmax(440px, 1.1fr);
    grid-template-rows: minmax(0, 1fr);
    height: calc(100vh - 52px);
    min-height: 0;
    overflow: hidden;
  }

  .application-window-v19 .left-detail-column {
    grid-column: 1;
    grid-row: 1;
    min-width: 0;
    min-height: 0;
    height: 100%;
    display: flex;
    flex-direction: column;
    background: #fff;
    border-right: 1px solid var(--line);
    overflow: hidden;
  }

  .application-window-v19 .left-detail-column .app-section {
    border-right: 0;
  }

  .application-window-v19 .edit-section {
    grid-column: auto;
    grid-row: auto;
    flex: 0 1 auto;
    min-height: 0;
    max-height: 62%;
    border-bottom: 1px solid var(--line);
  }

  .application-window-v19 .summary-section {
    grid-column: auto;
    grid-row: auto;
    flex: 1 1 auto;
    min-height: 180px;
    border-bottom: 0;
  }

  .application-window-v19 .finance-section {
    grid-column: 2;
    grid-row: 1;
    height: 100%;
    border-right: 1px solid var(--line);
    border-bottom: 0;
  }

  .application-window-v19 .history-section {
    grid-column: 3;
    grid-row: 1;
    height: 100%;
    border-right: 0;
    border-bottom: 0;
  }

  .application-window-v19 .detail-form {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    padding: 10px 12px;
  }

  .application-window-v19 .summary-lines {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
  }

  .application-window-v19 .list-box {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
  }

  .application-window-v19 .timeline,
  .application-window-v19 .finance-list {
    height: 100%;
    overflow: auto;
  }
}

@media(max-width:1100px) {
  .application-window-v19 .left-detail-column {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
  }
}


/* v20: navigation icons, cleaner lists, compact filters */
:root {
  --radius: 4px;
}

.page-subtitle {
  display: none !important;
}

.brand-icon,
.brand:before,
.brand:after {
  display: none !important;
}

.brand {
  justify-content: flex-start;
  width: 100%;
  padding-left: 6px;
}

.nav a:before {
  display: none !important;
  content: none !important;
}

.nav a {
  gap: 10px;
}

.nav a>span:last-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nav-icon,
.top-icon {
  width: 15px;
  height: 15px;
  display: inline-block;
  flex: 0 0 auto;
  background: currentColor;
  -webkit-mask: var(--icon) center/contain no-repeat;
  mask: var(--icon) center/contain no-repeat;
}

.icon-dashboard {
  --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2015%2015%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M5.625%201.875H2.5C2.15482%201.875%201.875%202.15482%201.875%202.5V6.875C1.875%207.22018%202.15482%207.5%202.5%207.5H5.625C5.97018%207.5%206.25%207.22018%206.25%206.875V2.5C6.25%202.15482%205.97018%201.875%205.625%201.875Z%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M12.5%201.875H9.375C9.02982%201.875%208.75%202.15482%208.75%202.5V4.375C8.75%204.72018%209.02982%205%209.375%205H12.5C12.8452%205%2013.125%204.72018%2013.125%204.375V2.5C13.125%202.15482%2012.8452%201.875%2012.5%201.875Z%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M12.5%207.5H9.375C9.02982%207.5%208.75%207.77982%208.75%208.125V12.5C8.75%2012.8452%209.02982%2013.125%209.375%2013.125H12.5C12.8452%2013.125%2013.125%2012.8452%2013.125%2012.5V8.125C13.125%207.77982%2012.8452%207.5%2012.5%207.5Z%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M5.625%2010H2.5C2.15482%2010%201.875%2010.2798%201.875%2010.625V12.5C1.875%2012.8452%202.15482%2013.125%202.5%2013.125H5.625C5.97018%2013.125%206.25%2012.8452%206.25%2012.5V10.625C6.25%2010.2798%205.97018%2010%205.625%2010Z%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3C%2Fsvg%3E");
}

.icon-file {
  --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2015%2015%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M9.375%201.25H3.75C3.41848%201.25%203.10054%201.3817%202.86612%201.61612C2.6317%201.85054%202.5%202.16848%202.5%202.5V12.5C2.5%2012.8315%202.6317%2013.1495%202.86612%2013.3839C3.10054%2013.6183%203.41848%2013.75%203.75%2013.75H11.25C11.5815%2013.75%2011.8995%2013.6183%2012.1339%2013.3839C12.3683%2013.1495%2012.5%2012.8315%2012.5%2012.5V4.375L9.375%201.25Z%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M8.75%201.25V3.75C8.75%204.08152%208.8817%204.39946%209.11612%204.63388C9.35054%204.8683%209.66848%205%2010%205H12.5%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M6.25%205.625H5%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M10%208.125H5%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M10%2010.625H5%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3C%2Fsvg%3E");
}

.icon-money {
  --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2015%2015%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M12.5%203.75H2.5C1.80964%203.75%201.25%204.30964%201.25%205V10C1.25%2010.6904%201.80964%2011.25%202.5%2011.25H12.5C13.1904%2011.25%2013.75%2010.6904%2013.75%2010V5C13.75%204.30964%2013.1904%203.75%2012.5%203.75Z%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M7.5%208.75C8.19036%208.75%208.75%208.19036%208.75%207.5C8.75%206.80964%208.19036%206.25%207.5%206.25C6.80964%206.25%206.25%206.80964%206.25%207.5C6.25%208.19036%206.80964%208.75%207.5%208.75Z%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M3.75%207.5H3.75625M11.25%207.5H11.2563%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3C%2Fsvg%3E");
}

.icon-chart {
  --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2015%2015%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M1.875%201.875V11.875C1.875%2012.2065%202.0067%2012.5245%202.24112%2012.7589C2.47554%2012.9933%202.79348%2013.125%203.125%2013.125H13.125%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M4.375%2010H9.375%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M4.375%206.875H11.875%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M4.375%203.75H6.25%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3C%2Fsvg%3E");
}

.icon-branch {
  --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2015%2015%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M3.75%201.875V9.375%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M11.25%205.625C12.2855%205.625%2013.125%204.78553%2013.125%203.75C13.125%202.71447%2012.2855%201.875%2011.25%201.875C10.2145%201.875%209.375%202.71447%209.375%203.75C9.375%204.78553%2010.2145%205.625%2011.25%205.625Z%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M3.75%2013.125C4.78553%2013.125%205.625%2012.2855%205.625%2011.25C5.625%2010.2145%204.78553%209.375%203.75%209.375C2.71447%209.375%201.875%2010.2145%201.875%2011.25C1.875%2012.2855%202.71447%2013.125%203.75%2013.125Z%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M11.25%205.625C11.25%207.11684%2010.6574%208.54758%209.60248%209.60248C8.54758%2010.6574%207.11684%2011.25%205.625%2011.25%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3C%2Fsvg%3E");
}

.icon-card {
  --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2015%2015%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M12.5%203.125H2.5C1.80964%203.125%201.25%203.68464%201.25%204.375V10.625C1.25%2011.3154%201.80964%2011.875%202.5%2011.875H12.5C13.1904%2011.875%2013.75%2011.3154%2013.75%2010.625V4.375C13.75%203.68464%2013.1904%203.125%2012.5%203.125Z%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M1.25%206.25H13.75%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3C%2Fsvg%3E");
}

.icon-building {
  --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2015%2015%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M3.75%2013.75V2.5C3.75%202.16848%203.8817%201.85054%204.11612%201.61612C4.35054%201.3817%204.66848%201.25%205%201.25H10C10.3315%201.25%2010.6495%201.3817%2010.8839%201.61612C11.1183%201.85054%2011.25%202.16848%2011.25%202.5V13.75H3.75Z%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M3.75%207.5H2.5C2.16848%207.5%201.85054%207.6317%201.61612%207.86612C1.3817%208.10054%201.25%208.41848%201.25%208.75V12.5C1.25%2012.8315%201.3817%2013.1495%201.61612%2013.3839C1.85054%2013.6183%202.16848%2013.75%202.5%2013.75H3.75%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M11.25%205.625H12.5C12.8315%205.625%2013.1495%205.7567%2013.3839%205.99112C13.6183%206.22554%2013.75%206.54348%2013.75%206.875V12.5C13.75%2012.8315%2013.6183%2013.1495%2013.3839%2013.3839C13.1495%2013.6183%2012.8315%2013.75%2012.5%2013.75H11.25%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M6.25%203.75H8.75M6.25%206.25H8.75M6.25%208.75H8.75M6.25%2011.25H8.75%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3C%2Fsvg%3E");
}

.icon-users {
  --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2015%2015%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M10%2013.125V11.875C10%2011.212%209.73661%2010.5761%209.26777%2010.1072C8.79893%209.63839%208.16304%209.375%207.5%209.375H3.75C3.08696%209.375%202.45107%209.63839%201.98223%2010.1072C1.51339%2010.5761%201.25%2011.212%201.25%2011.875V13.125%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M10%201.955C10.5361%202.09377%2011.0109%202.40677%2011.3498%202.84474C11.6887%203.28271%2011.8726%203.82095%2011.8726%204.375C11.8726%204.92905%2011.6887%205.46729%2011.3498%205.90526C11.0109%206.34323%2010.5361%206.65623%2010%206.795%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M13.75%2013.125V11.875C13.7496%2011.321%2013.5652%2010.7828%2013.2259%2010.3449C12.8865%209.90701%2012.4113%209.59441%2011.875%209.456%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M5.625%206.875C7.00571%206.875%208.125%205.75571%208.125%204.375C8.125%202.99429%207.00571%201.875%205.625%201.875C4.24429%201.875%203.125%202.99429%203.125%204.375C3.125%205.75571%204.24429%206.875%205.625%206.875Z%27%20stroke%3D%27black%27%20stroke-width%3D%271.25%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3C%2Fsvg%3E");
}

.icon-user {
  --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2014%2014%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M11.0833%2012.25V11.0833C11.0833%2010.4645%2010.8375%209.871%2010.3999%209.43342C9.96233%208.99583%209.36884%208.75%208.75%208.75H5.25C4.63116%208.75%204.03767%208.99583%203.60008%209.43342C3.1625%209.871%202.91667%2010.4645%202.91667%2011.0833V12.25%27%20stroke%3D%27black%27%20stroke-width%3D%271.16667%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M7%206.41667C8.28867%206.41667%209.33333%205.372%209.33333%204.08333C9.33333%202.79467%208.28867%201.75%207%201.75C5.71133%201.75%204.66667%202.79467%204.66667%204.08333C4.66667%205.372%205.71133%206.41667%207%206.41667Z%27%20stroke%3D%27black%27%20stroke-width%3D%271.16667%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3C%2Fsvg%3E");
}

.icon-logout {
  --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2014%2014%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M9.33333%209.91667L12.25%207L9.33333%204.08333%27%20stroke%3D%27black%27%20stroke-width%3D%271.16667%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M12.25%207H5.25%27%20stroke%3D%27black%27%20stroke-width%3D%271.16667%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M5.25%2012.25H2.91667C2.60725%2012.25%202.3105%2012.1271%202.09171%2011.9083C1.87292%2011.6895%201.75%2011.3928%201.75%2011.0833V2.91667C1.75%202.60725%201.87292%202.3105%202.09171%202.09171C2.3105%201.87292%202.60725%201.75%202.91667%201.75H5.25%27%20stroke%3D%27black%27%20stroke-width%3D%271.16667%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3C%2Fsvg%3E");
}

.user-pill:before,
.btn-ghost:before {
  display: none !important;
  content: none !important;
}

.user-pill .top-icon {
  color: #64748b;
}

.btn-ghost .top-icon {
  color: #ef4444;
}

.panel,
.stat,
.table-wrap,
.application-create-window,
.application-card,
.status-row,
.user-card,
.message,
.login-card {
  border-radius: 4px !important;
}

.btn,
.field,
input,
select,
textarea,
.search-combo button,
.badge,
.role-pill,
.activity-pill {
  border-radius: 4px !important;
}

.search-combo input {
  border-radius: 4px 0 0 4px !important;
}

.search-combo button {
  border-radius: 0 4px 4px 0 !important;
}

.card-list {
  display: grid;
  gap: 8px;
  align-content: start;
}

.application-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  min-height: 54px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--text);
  box-shadow: var(--shadow);
  transition: border-color .12s ease, background .12s ease, transform .12s ease;
}

.application-card:hover {
  border-color: var(--blue);
  background: #f8fbff;
}

.card-title {
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 3px;
}

.card-muted {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.25;
}

.card-meta {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
  color: #334155;
  font-size: 12px;
  text-align: right;
}

.card-meta span {
  white-space: nowrap;
}

.card-main {
  min-width: 0;
}

.status-badge,
.badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  min-height: 20px;
  padding: 2px 8px;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
}

.status-list {
  display: grid;
  gap: 8px;
  align-content: start;
}

.status-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 10px 12px;
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: var(--shadow);
}

.status-row-main {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  flex-wrap: wrap;
}

.status-row-main>b {
  font-weight: 800;
}

.status-row-actions,
.status-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.status-row-actions form,
.status-actions form {
  margin: 0;
  display: inline-flex;
}

.hint-box {
  margin: 0 0 10px;
  padding: 9px 10px;
  border: 1px solid var(--line);
  background: #f8fafc;
  color: #475569;
  border-radius: 4px;
  font-size: 12px;
}

.users-list .application-card,
.user-card {
  grid-template-columns: minmax(220px, 1fr) auto !important;
}

.user-card-status {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.role-pill,
.activity-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 22px;
  padding: 2px 8px;
  border: 1px solid var(--line);
  font-size: 11px;
  font-weight: 800;
  background: #fff;
  color: #344054;
}

.activity-pill.active {
  background: #dcfce7;
  color: #166534;
  border-color: #bbf7d0;
}

.activity-pill.blocked {
  background: #fee2e2;
  color: #991b1b;
  border-color: #fecaca;
}

.finance-filters {
  grid-template-columns: minmax(240px, 1.45fr) minmax(105px, .75fr) minmax(120px, .82fr) minmax(110px, .78fr) minmax(135px, .95fr) minmax(120px, .82fr) minmax(120px, .82fr) !important;
  gap: 8px;
  align-items: end;
}

.finance-filters .filter-control {
  min-width: 0;
}

.finance-filters .filter-control label {
  margin-bottom: 4px;
  white-space: nowrap;
}

.finance-search-control {
  align-self: end;
}

.finance-search-control input,
.finance-search-control button {
  height: 28px;
  min-height: 28px;
}

.finance-search-control button {
  padding: 0 16px;
}

.finance-table {
  margin-top: 10px;
}

.stats-grid {
  margin: 16px 16px 10px;
}

.main>.panel:not(.reports-filter-panel) {
  margin: 16px;
}

.dashboard .panel {
  margin-top: 10px;
}

@media(max-width:1280px) {
  .finance-filters {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

  .finance-search-control {
    grid-column: span 2;
  }
}

@media(max-width:700px) {

  .application-card,
  .status-row {
    grid-template-columns: 1fr;
  }

  .card-meta,
  .status-row-actions,
  .status-actions,
  .user-card-status {
    justify-content: flex-start;
    text-align: left;
  }

  .finance-filters {
    grid-template-columns: 1fr !important;
  }

  .finance-search-control {
    grid-column: auto;
  }
}

/* v21: action icons, compact editors, correct status colors */
:root {
  --radius: 4px;
}

.status-badge,
.badge.status-badge,
.status-badge-title,
.status-preview {
  background: var(--badge-bg, #eef2f7) !important;
  color: var(--badge-fg, #334155) !important;
  border: 0 !important;
  border-radius: 4px !important;
}

.section-titlebar .badge {
  background: var(--badge-bg, rgba(34, 197, 94, .10)) !important;
  color: var(--badge-fg, #22c55e) !important;
  border: 1px solid color-mix(in srgb, var(--badge-bg, #dcfce7) 72%, #000 6%) !important;
}

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.btn-icon-only {
  width: 38px;
  min-width: 38px;
  height: 34px;
  min-height: 34px;
  padding: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.btn-icon-only:before {
  content: "";
  width: 15px;
  height: 15px;
  display: block;
  flex: 0 0 auto;
  background: currentColor;
  -webkit-mask: var(--action-icon) center/contain no-repeat;
  mask: var(--action-icon) center/contain no-repeat;
}

.btn-add {
  background: #fff !important;
  border-color: #3b82f6 !important;
  color: #3b82f6 !important;
  box-shadow: none !important;
}

.btn-add:hover {
  background: #eff6ff !important;
}

.btn-edit {
  background: #fff !important;
  border-color: #d1d5db !important;
  color: #979797 !important;
}

.btn-edit:hover {
  background: #f8fafc !important;
  border-color: #b8bfc8 !important;
}

.btn-delete {
  background: #fff !important;
  border-color: #fecaca !important;
  color: #f04444 !important;
}

.btn-delete:hover {
  background: #fef2f2 !important;
}

.btn-add:before {
  --action-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 15' fill='none'%3E%3Cpath d='M7.5 0.5C3.634 0.5 0.5 3.634 0.5 7.5C0.5 11.366 3.634 14.5 7.5 14.5C11.366 14.5 14.5 11.366 14.5 7.5C14.5 3.634 11.366 0.5 7.5 0.5Z' stroke='black' stroke-width='1.1'/%3E%3Cpath d='M7.5 3.8V11.2M3.8 7.5H11.2' stroke='black' stroke-width='1.25' stroke-linecap='round'/%3E%3C/svg%3E");
}

.btn-edit:before {
  --action-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 15' fill='none'%3E%3Cpath d='M12.0703 0.808258C11.6221 0.869781 11.2676 1.04263 10.8868 1.38541C10.7403 1.51724 9.57132 2.6774 8.28812 3.96353C6.2725 5.98795 5.95316 6.32193 5.92386 6.42447C5.87699 6.59146 5.87406 8.74185 5.92093 8.90005C5.96195 9.03189 6.12894 9.19888 6.26664 9.24576C6.33402 9.26627 6.73539 9.27798 7.51175 9.27798C8.56058 9.27798 8.66605 9.27213 8.77445 9.22232C8.85648 9.18423 9.65335 8.40494 11.4024 6.65298C12.7852 5.26724 13.9483 4.08951 13.9922 4.03384C14.4287 3.44498 14.4873 2.56607 14.1328 1.89517C13.7373 1.14517 12.8877 0.69693 12.0703 0.808258ZM12.791 1.96841C13.3008 2.21744 13.4649 2.91177 13.128 3.3981C13.0811 3.46548 13.002 3.55923 12.9522 3.60904L12.8584 3.694L12.1641 2.99966L11.4698 2.3024L11.6221 2.16177C11.9649 1.83951 12.3868 1.77213 12.791 1.96841ZM10.2334 6.32486L8.36429 8.194H7.66996H6.97269V7.49966V6.8024L8.8389 4.93619L10.708 3.06705L11.4024 3.76138L12.0996 4.45865L10.2334 6.32486Z' fill='black'/%3E%3Cpath d='M3.79397 1.29753C2.35549 1.54948 1.16897 2.59245 0.720724 3.98991C0.536154 4.56706 0.542013 4.44109 0.542013 7.93034C0.542013 10.8132 0.547872 11.1325 0.591818 11.3757C0.905294 13.0192 2.15041 14.2614 3.79397 14.569C4.06936 14.6217 4.28029 14.6247 7.26565 14.6247C10.4414 14.6247 10.4444 14.6247 10.7373 14.5602C11.127 14.4723 11.3584 14.3962 11.6748 14.2467C12.8291 13.7018 13.6524 12.6208 13.8692 11.361C13.9102 11.1237 13.916 10.7868 13.916 9.03777C13.916 7.0573 13.9131 6.98698 13.8574 6.87566C13.7285 6.6237 13.3946 6.52409 13.1397 6.66472C13.0518 6.71159 12.9287 6.85222 12.8936 6.94304C12.8731 6.9987 12.8613 7.65788 12.8613 8.93523C12.8613 10.9948 12.8496 11.1882 12.7061 11.6071C12.3926 12.5212 11.6338 13.2243 10.6934 13.4733L10.4444 13.5407H7.251C3.69436 13.5407 3.89651 13.5524 3.37502 13.3356C2.6719 13.0485 2.04494 12.3952 1.78713 11.6891C1.60549 11.1852 1.60842 11.2409 1.61721 7.81023L1.626 4.69304L1.69338 4.45866C2.01272 3.31902 2.96779 2.4782 4.10451 2.33464C4.251 2.31706 5.10647 2.30534 6.24611 2.30534C7.51174 2.30534 8.16799 2.29362 8.22365 2.27312C8.31447 2.23796 8.4551 2.11491 8.50197 2.02702C8.63967 1.77507 8.54006 1.43523 8.29104 1.30925C8.17971 1.25359 8.11233 1.25066 6.10256 1.25359C4.45608 1.25652 3.98147 1.2653 3.79397 1.29753Z' fill='black'/%3E%3C/svg%3E");
}

.btn-delete:before {
  --action-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 15' fill='none'%3E%3Cpath d='M4.69067 0.486176C4.3479 0.576996 4.02271 0.831879 3.86157 1.13071C3.72095 1.39438 3.69165 1.58774 3.69165 2.33481V3.01743H2.28247C0.887939 3.01743 0.870361 3.01743 0.767822 3.08188C0.633057 3.16684 0.545166 3.3602 0.571533 3.52133C0.5979 3.66782 0.767822 3.84946 0.908447 3.87582C0.961181 3.88754 1.27759 3.89633 1.6145 3.89633H2.22681V4.01352C2.22681 4.29184 2.75415 13.2743 2.78052 13.4442C2.85962 13.9627 3.24634 14.3817 3.77075 14.5164C4.02271 14.5838 10.9778 14.5838 11.2297 14.5164C11.7542 14.3817 12.1379 13.9627 12.22 13.4471C12.2463 13.2772 12.7737 4.27719 12.7737 4.00473V3.89633H13.386C13.7229 3.89633 14.0393 3.88754 14.092 3.87582C14.2327 3.84946 14.4026 3.66782 14.429 3.52133C14.4553 3.3602 14.3674 3.16684 14.2327 3.08188C14.1301 3.01743 14.1125 3.01743 12.7209 3.01743H11.3118L11.303 2.26157C11.2883 1.40903 11.2737 1.33286 11.0686 1.02524C10.9309 0.81723 10.6877 0.623871 10.4358 0.521332L10.2688 0.453949L7.55884 0.44809C5.25903 0.44223 4.82544 0.44809 4.69067 0.486176ZM10.1487 1.35922C10.2014 1.38266 10.2834 1.45004 10.3303 1.51157L10.4153 1.61996V2.31137V3.00278H7.50024H4.58521V2.31137V1.61996L4.67017 1.51157C4.82251 1.30942 4.67017 1.32114 7.49438 1.31821C9.61548 1.31821 10.0667 1.32407 10.1487 1.35922Z' fill='black'/%3E%3Cpath d='M5.7981 6.95194C5.61353 7.07498 5.54614 7.31522 5.64282 7.50858C5.66919 7.56131 5.9563 7.86893 6.27856 8.19705L6.87036 8.78885L6.26392 9.39822C5.92993 9.73221 5.64282 10.0428 5.62524 10.0867C5.54614 10.3006 5.64282 10.5467 5.83911 10.6375C6.12036 10.7635 6.19653 10.7195 6.90552 10.0105L7.50024 9.42166L8.09497 10.0105C8.80396 10.7195 8.88013 10.7635 9.16138 10.6375C9.35767 10.5467 9.45435 10.3006 9.37524 10.0867C9.35767 10.0428 9.07056 9.73221 8.73657 9.39822L8.13013 8.78885L8.72192 8.19705C9.04419 7.86893 9.3313 7.56131 9.35767 7.50858C9.49829 7.22733 9.28735 6.88455 8.97388 6.88455C8.90356 6.88455 8.81567 6.8992 8.78052 6.91678C8.74536 6.93436 8.4436 7.22147 8.10962 7.55252L7.50024 8.15897L6.8938 7.55252C6.55688 7.22147 6.25513 6.93436 6.21997 6.91678C6.11157 6.86111 5.9065 6.87869 5.7981 6.95194Z' fill='black'/%3E%3C/svg%3E");
}

input[type="checkbox"] {
  width: 16px !important;
  height: 16px !important;
  min-height: 16px !important;
  padding: 0 !important;
  margin: 0;
  accent-color: #3b82f6;
  box-shadow: none !important;
}

.check-row {
  display: flex !important;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  min-height: 30px;
  margin: 2px 0 0;
  color: #334155;
  font-weight: 600;
}

.check-row span {
  line-height: 16px;
}

.entity-form-panel {
  width: min(560px, calc(100vw - 240px));
  margin: 18px auto !important;
  padding: 16px !important;
}

.entity-form-panel.user-editor-panel {
  width: min(680px, calc(100vw - 240px));
}

.form-stack {
  display: grid;
  gap: 12px;
}

.entity-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.form-help {
  display: block;
  margin-top: 4px;
  color: #64748b;
  font-size: 11px;
  line-height: 1.25;
}

.color-editor {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 160px;
  gap: 10px;
  align-items: end;
}

.hex-color-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 44px;
  gap: 8px;
  align-items: center;
}

.color-picker {
  padding: 0 !important;
  height: 28px !important;
  min-height: 28px !important;
  cursor: pointer;
}

.status-preview-wrap {
  display: grid;
  gap: 5px;
  align-content: end;
  justify-items: start;
}

.status-preview {
  min-height: 22px;
  padding: 3px 10px;
}

.swatches {
  display: grid;
  grid-template-columns: repeat(10, 24px);
  gap: 6px;
  align-items: center;
  justify-content: start;
}

.swatches button {
  width: 24px;
  height: 18px;
  min-height: 18px;
  border: 1px solid #94a3b8;
  border-radius: 3px;
  padding: 0;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .5);
}

.swatches button:hover {
  outline: 2px solid rgba(59, 130, 246, .25);
}

.form-actions {
  align-items: center;
}

.status-list {
  gap: 8px;
}

.status-row {
  min-height: 54px;
  padding: 10px 12px;
  border-radius: 4px;
}

.status-row-main {
  gap: 10px 12px;
}

.status-row-actions,
.status-actions {
  gap: 6px;
}

.hint-box {
  border-radius: 4px;
}

.dashboard .application-card {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-height: 50px;
}

.dashboard .card-meta {
  max-width: 70%;
}

.finance-filters {
  grid-template-columns: minmax(220px, 1.3fr) minmax(105px, .72fr) minmax(120px, .78fr) minmax(110px, .72fr) minmax(130px, .88fr) minmax(118px, .72fr) minmax(118px, .72fr) !important;
  align-items: end;
}

.finance-filters .field {
  height: 28px;
}

.finance-filters label {
  font-size: 11px;
  line-height: 12px;
  margin-bottom: 3px;
}

@media(max-width:900px) {

  .entity-form-panel,
  .entity-form-panel.user-editor-panel {
    width: auto;
    margin: 12px !important;
  }

  .entity-form-grid,
  .color-editor {
    grid-template-columns: 1fr;
  }

  .swatches {
    grid-template-columns: repeat(5, 24px);
  }

  .btn-icon-only {
    width: 36px;
    min-width: 36px;
  }
}


/* v22: icon-only actions without square button chrome */
.btn-icon-only {
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: inherit;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 0 !important;
  transition: transform .14s ease, opacity .14s ease, filter .14s ease;
}

.btn-icon-only:hover {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: translateY(-1px) scale(1.08);
  opacity: .88;
  filter: drop-shadow(0 2px 3px rgba(15, 23, 42, .12));
}

.btn-icon-only:active {
  transform: scale(.94);
  opacity: 1;
}

.btn-icon-only:focus-visible {
  outline: 2px solid rgba(59, 130, 246, .35);
  outline-offset: 2px;
  border-radius: 4px !important;
}

.btn-icon-only:before {
  content: "";
  display: block;
  flex: 0 0 auto;
  background-color: transparent !important;
  -webkit-mask: none !important;
  mask: none !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
}

.btn-add {
  color: #3b82f6 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.btn-add:before {
  width: 28px !important;
  height: 28px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='33.8335 0 15 15' fill='none'%3E%3Cpath d='M40.7766 0.0204909C39.6897 0.12303 38.8635 0.354475 37.9612 0.808577C36.7717 1.4033 35.6702 2.41404 34.9465 3.5742C34.4221 4.41209 34.0413 5.49315 33.886 6.57713C33.8362 6.92283 33.8362 8.07713 33.886 8.42283C34.009 9.28709 34.2375 10.043 34.595 10.7666C34.9963 11.5869 35.3918 12.1377 36.0422 12.791C36.6897 13.4355 37.2493 13.8369 38.0374 14.2236C38.5881 14.4931 38.9426 14.625 39.5022 14.7656C40.967 15.1347 42.4377 15.0644 43.8674 14.5576C44.3069 14.4023 45.0627 14.0215 45.4495 13.7637C47.0901 12.668 48.2385 11.0039 48.6575 9.11131C48.7541 8.67186 48.804 8.25877 48.8245 7.74901C48.8684 6.50096 48.6106 5.31151 48.054 4.19236C47.6907 3.45994 47.2834 2.8828 46.7122 2.29393C46.0852 1.64354 45.4524 1.18358 44.6291 0.77635C43.762 0.348616 42.9534 0.117171 41.9924 0.0292799C41.6936 0.00291276 41.0168 -0.00294662 40.7766 0.0204909ZM42.3733 1.02244C44.2131 1.33299 45.7659 2.33494 46.8 3.88475C47.3245 4.66697 47.6672 5.56346 47.8284 6.54783C47.8987 6.99608 47.8987 8.00389 47.8284 8.45213C47.512 10.4092 46.4397 12.0322 44.7756 13.081C44.0637 13.5293 43.2024 13.8457 42.2854 13.9951C41.8342 14.0654 40.8293 14.0654 40.3811 13.9922C38.4563 13.6787 36.8713 12.6562 35.8196 11.0449C35.3274 10.292 34.9963 9.41307 34.8381 8.45213C34.7678 8.00389 34.7678 6.99608 34.8381 6.54783C35.0754 5.09178 35.6907 3.87596 36.7014 2.87108C37.8206 1.75487 39.2268 1.09862 40.8059 0.955061C41.1223 0.925764 42.0305 0.96678 42.3733 1.02244Z' fill='%233B82F6'/%3E%3Cpath d='M41.1426 3.38086C41.0342 3.43066 40.9375 3.5332 40.8965 3.6416C40.876 3.69726 40.8643 4.27734 40.8643 5.37598V7.03125L39.168 7.03711C37.5039 7.0459 37.4688 7.0459 37.3896 7.10742C37.2344 7.22168 37.1875 7.31543 37.1875 7.5C37.1875 7.68457 37.2344 7.77832 37.3896 7.89258C37.4688 7.9541 37.5039 7.9541 39.165 7.96289L40.8643 7.96875L40.8701 9.66797C40.8789 11.3291 40.8789 11.3643 40.9404 11.4434C41.0547 11.5986 41.1484 11.6455 41.333 11.6455C41.5176 11.6455 41.6113 11.5986 41.7256 11.4434C41.7871 11.3643 41.7871 11.3291 41.7959 9.66797L41.8018 7.96875L43.501 7.96289C45.1621 7.9541 45.1973 7.9541 45.2764 7.89258C45.4316 7.77832 45.4785 7.68457 45.4785 7.5C45.4785 7.31543 45.4316 7.22168 45.2764 7.10742C45.1973 7.0459 45.1621 7.0459 43.501 7.03711L41.8018 7.03125L41.7959 5.33203C41.7871 3.6709 41.7871 3.63574 41.7256 3.55664C41.6934 3.51269 41.6318 3.44824 41.5908 3.41894C41.4912 3.3457 41.2598 3.32519 41.1426 3.38086Z' fill='%233B82F6'/%3E%3C/svg%3E") !important;
}

.btn-edit {
  color: #979797 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.btn-edit:before {
  width: 18px !important;
  height: 18px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 15' fill='none'%3E%3Cpath d='M12.0703 0.808258C11.6221 0.869781 11.2676 1.04263 10.8868 1.38541C10.7403 1.51724 9.57132 2.6774 8.28812 3.96353C6.2725 5.98795 5.95316 6.32193 5.92386 6.42447C5.87699 6.59146 5.87406 8.74185 5.92093 8.90005C5.96195 9.03189 6.12894 9.19888 6.26664 9.24576C6.33402 9.26627 6.73539 9.27798 7.51175 9.27798C8.56058 9.27798 8.66605 9.27213 8.77445 9.22232C8.85648 9.18423 9.65335 8.40494 11.4024 6.65298C12.7852 5.26724 13.9483 4.08951 13.9922 4.03384C14.4287 3.44498 14.4873 2.56607 14.1328 1.89517C13.7373 1.14517 12.8877 0.69693 12.0703 0.808258ZM12.791 1.96841C13.3008 2.21744 13.4649 2.91177 13.128 3.3981C13.0811 3.46548 13.002 3.55923 12.9522 3.60904L12.8584 3.694L12.1641 2.99966L11.4698 2.3024L11.6221 2.16177C11.9649 1.83951 12.3868 1.77213 12.791 1.96841ZM10.2334 6.32486L8.36429 8.194H7.66996H6.97269V7.49966V6.8024L8.8389 4.93619L10.708 3.06705L11.4024 3.76138L12.0996 4.45865L10.2334 6.32486Z' fill='%23979797'/%3E%3Cpath d='M3.79397 1.29753C2.35549 1.54948 1.16897 2.59245 0.720724 3.98991C0.536154 4.56706 0.542013 4.44109 0.542013 7.93034C0.542013 10.8132 0.547872 11.1325 0.591818 11.3757C0.905294 13.0192 2.15041 14.2614 3.79397 14.569C4.06936 14.6217 4.28029 14.6247 7.26565 14.6247C10.4414 14.6247 10.4444 14.6247 10.7373 14.5602C11.127 14.4723 11.3584 14.3962 11.6748 14.2467C12.8291 13.7018 13.6524 12.6208 13.8692 11.361C13.9102 11.1237 13.916 10.7868 13.916 9.03777C13.916 7.0573 13.9131 6.98698 13.8574 6.87566C13.7285 6.6237 13.3946 6.52409 13.1397 6.66472C13.0518 6.71159 12.9287 6.85222 12.8936 6.94304C12.8731 6.9987 12.8613 7.65788 12.8613 8.93523C12.8613 10.9948 12.8496 11.1882 12.7061 11.6071C12.3926 12.5212 11.6338 13.2243 10.6934 13.4733L10.4444 13.5407H7.251C3.69436 13.5407 3.89651 13.5524 3.37502 13.3356C2.6719 13.0485 2.04494 12.3952 1.78713 11.6891C1.60549 11.1852 1.60842 11.2409 1.61721 7.81023L1.626 4.69304L1.69338 4.45866C2.01272 3.31902 2.96779 2.4782 4.10451 2.33464C4.251 2.31706 5.10647 2.30534 6.24611 2.30534C7.51174 2.30534 8.16799 2.29362 8.22365 2.27312C8.31447 2.23796 8.4551 2.11491 8.50197 2.02702C8.63967 1.77507 8.54006 1.43523 8.29104 1.30925C8.17971 1.25359 8.11233 1.25066 6.10256 1.25359C4.45608 1.25652 3.98147 1.2653 3.79397 1.29753Z' fill='%23979797'/%3E%3C/svg%3E") !important;
}

.btn-delete {
  color: #f04444 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.btn-delete:before {
  width: 18px !important;
  height: 18px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='17 0.166656 15 15' fill='none'%3E%3Cpath d='M21.6902 0.653C21.3474 0.74382 21.0223 0.998703 20.8611 1.29753C20.7205 1.5612 20.6912 1.75456 20.6912 2.50163V3.18425H19.282C17.8875 3.18425 17.8699 3.18425 17.7674 3.2487C17.6326 3.33366 17.5447 3.52702 17.5711 3.68816C17.5974 3.83464 17.7674 4.01628 17.908 4.04265C17.9607 4.05437 18.2771 4.06316 18.614 4.06316H19.2264V4.18034C19.2264 4.45866 19.7537 13.4411 19.7801 13.611C19.8592 14.1296 20.2459 14.5485 20.7703 14.6833C21.0223 14.7507 27.9773 14.7507 28.2293 14.6833C28.7537 14.5485 29.1375 14.1296 29.2195 13.6139C29.2459 13.444 29.7732 4.44402 29.7732 4.17155V4.06316H30.3855C30.7224 4.06316 31.0389 4.05437 31.0916 4.04265C31.2322 4.01628 31.4021 3.83464 31.4285 3.68816C31.4549 3.52702 31.367 3.33366 31.2322 3.2487C31.1297 3.18425 31.1121 3.18425 29.7205 3.18425H28.3113L28.3025 2.42839C28.2879 1.57585 28.2732 1.49968 28.0681 1.19206C27.9305 0.984055 27.6873 0.790695 27.4353 0.688156L27.2683 0.620773L24.5584 0.614914C22.2586 0.609055 21.825 0.614914 21.6902 0.653ZM27.1482 1.52605C27.201 1.54948 27.283 1.61687 27.3299 1.67839L27.4148 1.78679V2.4782V3.1696H24.4998H21.5848V2.4782V1.78679L21.6697 1.67839C21.8221 1.47624 21.6697 1.48796 24.4939 1.48503C26.615 1.48503 27.0662 1.49089 27.1482 1.52605ZM28.8943 4.1364C28.8943 4.29167 28.367 13.3444 28.3523 13.4587C28.3318 13.6081 28.2205 13.7516 28.0828 13.8073C27.9422 13.8688 21.0574 13.8688 20.9168 13.8073C20.7791 13.7516 20.6678 13.6081 20.6473 13.4587C20.6326 13.3444 20.1053 4.2946 20.1053 4.1364V4.06316H24.4998H28.8943V4.1364Z' fill='%23F04444'/%3E%3Cpath d='M22.7977 7.11881C22.6131 7.24185 22.5457 7.48209 22.6424 7.67545C22.6687 7.72818 22.9559 8.0358 23.2781 8.36392L23.8699 8.95572L23.2635 9.5651C22.9295 9.89908 22.6424 10.2096 22.6248 10.2536C22.5457 10.4674 22.6424 10.7135 22.8387 10.8044C23.1199 10.9303 23.1961 10.8864 23.9051 10.1774L24.4998 9.58853L25.0945 10.1774C25.8035 10.8864 25.8797 10.9303 26.1609 10.8044C26.3572 10.7135 26.4539 10.4674 26.3748 10.2536C26.3572 10.2096 26.0701 9.89908 25.7361 9.5651L25.1297 8.95572L25.7215 8.36392C26.0437 8.0358 26.3309 7.72818 26.3572 7.67545C26.4978 7.3942 26.2869 7.05143 25.9734 7.05143C25.9031 7.05143 25.8152 7.06607 25.7801 7.08365C25.7449 7.10123 25.4432 7.38834 25.1092 7.71939L24.4998 8.32584L23.8934 7.71939C23.5564 7.38834 23.2547 7.10123 23.2195 7.08365C23.1111 7.02799 22.9061 7.04557 22.7977 7.11881Z' fill='%23F04444'/%3E%3C/svg%3E") !important;
}

.status-row-actions,
.status-actions,
.card-actions,
.user-card-status {
  gap: 10px !important;
}

.status-row-actions form,
.status-actions form,
.card-actions form {
  display: inline-flex !important;
  margin: 0 !important;
}

.panel-head .btn-add {
  margin-right: -6px;
}

.status-badge,
.badge.status-badge,
.status-badge-title,
.status-preview {
  border-radius: 4px !important;
}


/* v23: exact SVG action icons and tighter list headers */
.nav {
  padding: 8px 10px !important;
}

.nav a {
  padding: 0 12px !important;
  width: 100% !important;
}

.btn-icon-only:before {
  display: none !important;
  content: none !important;
}

.btn-icon-only {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  min-width: 34px !important;
  width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  border-radius: 0 !important;
}

.svg-action {
  display: block;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
  transition: transform .14s ease, filter .14s ease, opacity .14s ease;
}

.svg-add {
  width: 28px;
  height: 28px;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%2733.8335%200%2015%2015%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M40.7766%200.0204909C39.6897%200.12303%2038.8635%200.354475%2037.9612%200.808577C36.7717%201.4033%2035.6702%202.41404%2034.9465%203.5742C34.4221%204.41209%2034.0413%205.49315%2033.886%206.57713C33.8362%206.92283%2033.8362%208.07713%2033.886%208.42283C34.009%209.28709%2034.2375%2010.043%2034.595%2010.7666C34.9963%2011.5869%2035.3918%2012.1377%2036.0422%2012.791C36.6897%2013.4355%2037.2493%2013.8369%2038.0374%2014.2236C38.5881%2014.4931%2038.9426%2014.625%2039.5022%2014.7656C40.967%2015.1347%2042.4377%2015.0644%2043.8674%2014.5576C44.3069%2014.4023%2045.0627%2014.0215%2045.4495%2013.7637C47.0901%2012.668%2048.2385%2011.0039%2048.6575%209.11131C48.7541%208.67186%2048.804%208.25877%2048.8245%207.74901C48.8684%206.50096%2048.6106%205.31151%2048.054%204.19236C47.6907%203.45994%2047.2834%202.8828%2046.7122%202.29393C46.0852%201.64354%2045.4524%201.18358%2044.6291%200.77635C43.762%200.348616%2042.9534%200.117171%2041.9924%200.0292799C41.6936%200.00291276%2041.0168%20-0.00294662%2040.7766%200.0204909ZM42.3733%201.02244C44.2131%201.33299%2045.7659%202.33494%2046.8%203.88475C47.3245%204.66697%2047.6672%205.56346%2047.8284%206.54783C47.8987%206.99608%2047.8987%208.00389%2047.8284%208.45213C47.512%2010.4092%2046.4397%2012.0322%2044.7756%2013.081C44.0637%2013.5293%2043.2024%2013.8457%2042.2854%2013.9951C41.8342%2014.0654%2040.8293%2014.0654%2040.3811%2013.9922C38.4563%2013.6787%2036.8713%2012.6562%2035.8196%2011.0449C35.3274%2010.292%2034.9963%209.41307%2034.8381%208.45213C34.7678%208.00389%2034.7678%206.99608%2034.8381%206.54783C35.0754%205.09178%2035.6907%203.87596%2036.7014%202.87108C37.8206%201.75487%2039.2268%201.09862%2040.8059%200.955061C41.1223%200.925764%2042.0305%200.96678%2042.3733%201.02244Z%27%20fill%3D%27%233B82F6%27%2F%3E%3Cpath%20d%3D%27M41.1426%203.38086C41.0342%203.43066%2040.9375%203.5332%2040.8965%203.6416C40.876%203.69726%2040.8643%204.27734%2040.8643%205.37598V7.03125L39.168%207.03711C37.5039%207.0459%2037.4688%207.0459%2037.3896%207.10742C37.2344%207.22168%2037.1875%207.31543%2037.1875%207.5C37.1875%207.68457%2037.2344%207.77832%2037.3896%207.89258C37.4688%207.9541%2037.5039%207.9541%2039.165%207.96289L40.8643%207.96875L40.8701%209.66797C40.8789%2011.3291%2040.8789%2011.3643%2040.9404%2011.4434C41.0547%2011.5986%2041.1484%2011.6455%2041.333%2011.6455C41.5176%2011.6455%2041.6113%2011.5986%2041.7256%2011.4434C41.7871%2011.3643%2041.7871%2011.3291%2041.7959%209.66797L41.8018%207.96875L43.501%207.96289C45.1621%207.9541%2045.1973%207.9541%2045.2764%207.89258C45.4316%207.77832%2045.4785%207.68457%2045.4785%207.5C45.4785%207.31543%2045.4316%207.22168%2045.2764%207.10742C45.1973%207.0459%2045.1621%207.0459%2043.501%207.03711L41.8018%207.03125L41.7959%205.33203C41.7871%203.6709%2041.7871%203.63574%2041.7256%203.55664C41.6934%203.51269%2041.6318%203.44824%2041.5908%203.41894C41.4912%203.3457%2041.2598%203.32519%2041.1426%203.38086Z%27%20fill%3D%27%233B82F6%27%2F%3E%3C%2Fsvg%3E");
}

.svg-edit {
  width: 17px;
  height: 17px;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2015%2015%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M12.0703%200.641602C11.6221%200.703125%2011.2676%200.875977%2010.8868%201.21875C10.7403%201.35059%209.57132%202.51074%208.28812%203.79688C6.2725%205.82129%205.95316%206.15527%205.92386%206.25781C5.87699%206.4248%205.87406%208.5752%205.92093%208.7334C5.96195%208.86523%206.12894%209.03223%206.26664%209.0791C6.33402%209.09961%206.73539%209.11133%207.51175%209.11133C8.56058%209.11133%208.66605%209.10547%208.77445%209.05566C8.85648%209.01758%209.65335%208.23828%2011.4024%206.48633C12.7852%205.10059%2013.9483%203.92285%2013.9922%203.86719C14.4287%203.27832%2014.4873%202.39941%2014.1328%201.72852C13.7373%200.978516%2012.8877%200.530273%2012.0703%200.641602ZM12.791%201.80176C13.3008%202.05078%2013.4649%202.74512%2013.128%203.23145C13.0811%203.29883%2013.002%203.39258%2012.9522%203.44238L12.8584%203.52734L12.1641%202.83301L11.4698%202.13574L11.6221%201.99512C11.9649%201.67285%2012.3868%201.60547%2012.791%201.80176ZM10.2334%206.1582L8.36429%208.02734H7.66996H6.97269V7.33301V6.63574L8.8389%204.76953L10.708%202.90039L11.4024%203.59473L12.0996%204.29199L10.2334%206.1582Z%27%20fill%3D%27%23979797%27%2F%3E%3Cpath%20d%3D%27M3.79397%201.13087C2.35549%201.38283%201.16897%202.4258%200.720724%203.82326C0.536154%204.40041%200.542013%204.27443%200.542013%207.76369C0.542013%2010.6465%200.547872%2010.9658%200.591818%2011.209C0.905294%2012.8526%202.15041%2014.0947%203.79397%2014.4024C4.06936%2014.4551%204.28029%2014.458%207.26565%2014.458C10.4414%2014.458%2010.4444%2014.458%2010.7373%2014.3936C11.127%2014.3057%2011.3584%2014.2295%2011.6748%2014.0801C12.8291%2013.5352%2013.6524%2012.4541%2013.8692%2011.1944C13.9102%2010.957%2013.916%2010.6201%2013.916%208.87111C13.916%206.89064%2013.9131%206.82033%2013.8574%206.709C13.7285%206.45705%2013.3946%206.35744%2013.1397%206.49806C13.0518%206.54494%2012.9287%206.68556%2012.8936%206.77638C12.8731%206.83205%2012.8613%207.49123%2012.8613%208.76857C12.8613%2010.8281%2012.8496%2011.0215%2012.7061%2011.4404C12.3926%2012.3545%2011.6338%2013.0576%2010.6934%2013.3067L10.4444%2013.374H7.251C3.69436%2013.374%203.89651%2013.3858%203.37502%2013.169C2.6719%2012.8819%202.04494%2012.2285%201.78713%2011.5225C1.60549%2011.0186%201.60842%2011.0742%201.61721%207.64357L1.626%204.52638L1.69338%204.29201C2.01272%203.15236%202.96779%202.31154%204.10451%202.16798C4.251%202.15041%205.10647%202.13869%206.24611%202.13869C7.51174%202.13869%208.16799%202.12697%208.22365%202.10646C8.31447%202.0713%208.4551%201.94826%208.50197%201.86037C8.63967%201.60841%208.54006%201.26857%208.29104%201.14259C8.17971%201.08693%208.11233%201.084%206.10256%201.08693C4.45608%201.08986%203.98147%201.09865%203.79397%201.13087Z%27%20fill%3D%27%23979797%27%2F%3E%3C%2Fsvg%3E");
}

.svg-delete {
  width: 17px;
  height: 17px;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%2717%200%2015%2015%27%20fill%3D%27none%27%3E%3Cpath%20d%3D%27M21.6902%200.486343C21.3474%200.577164%2021.0223%200.832047%2020.8611%201.13087C20.7205%201.39455%2020.6912%201.58791%2020.6912%202.33498V3.01759H19.282C17.8875%203.01759%2017.8699%203.01759%2017.7674%203.08205C17.6326%203.16701%2017.5447%203.36037%2017.5711%203.5215C17.5974%203.66798%2017.7674%203.84962%2017.908%203.87599C17.9607%203.88771%2018.2771%203.8965%2018.614%203.8965H19.2264V4.01369C19.2264%204.29201%2019.7537%2013.2744%2019.7801%2013.4444C19.8592%2013.9629%2020.2459%2014.3819%2020.7703%2014.5166C21.0223%2014.584%2027.9773%2014.584%2028.2293%2014.5166C28.7537%2014.3819%2029.1375%2013.9629%2029.2195%2013.4473C29.2459%2013.2774%2029.7732%204.27736%2029.7732%204.0049V3.8965H30.3855C30.7224%203.8965%2031.0389%203.88771%2031.0916%203.87599C31.2322%203.84962%2031.4021%203.66798%2031.4285%203.5215C31.4549%203.36037%2031.367%203.16701%2031.2322%203.08205C31.1297%203.01759%2031.1121%203.01759%2029.7205%203.01759H28.3113L28.3025%202.26173C28.2879%201.40919%2028.2732%201.33302%2028.0681%201.02541C27.9305%200.817398%2027.6873%200.624039%2027.4353%200.5215L27.2683%200.454117L24.5584%200.448257C22.2586%200.442398%2021.825%200.448257%2021.6902%200.486343ZM27.1482%201.35939C27.201%201.38283%2027.283%201.45021%2027.3299%201.51173L27.4148%201.62013V2.31154V3.00294H24.4998H21.5848V2.31154V1.62013L21.6697%201.51173C21.8221%201.30959%2021.6697%201.3213%2024.4939%201.31837C26.615%201.31837%2027.0662%201.32423%2027.1482%201.35939ZM28.8943%203.96974C28.8943%204.12502%2028.367%2013.1777%2028.3523%2013.292C28.3318%2013.4414%2028.2205%2013.585%2028.0828%2013.6406C27.9422%2013.7022%2021.0574%2013.7022%2020.9168%2013.6406C20.7791%2013.585%2020.6678%2013.4414%2020.6473%2013.292C20.6326%2013.1777%2020.1053%204.12794%2020.1053%203.96974V3.8965H24.4998H28.8943V3.96974Z%27%20fill%3D%27%23F04444%27%2F%3E%3Cpath%20d%3D%27M22.7977%206.95215C22.6131%207.0752%2022.5457%207.31543%2022.6424%207.50879C22.6687%207.56153%2022.9559%207.86914%2023.2781%208.19727L23.8699%208.78907L23.2635%209.39844C22.9295%209.73242%2022.6424%2010.043%2022.6248%2010.0869C22.5457%2010.3008%2022.6424%2010.5469%2022.8387%2010.6377C23.1199%2010.7637%2023.1961%2010.7197%2023.9051%2010.0107L24.4998%209.42188L25.0945%2010.0107C25.8035%2010.7197%2025.8797%2010.7637%2026.1609%2010.6377C26.3572%2010.5469%2026.4539%2010.3008%2026.3748%2010.0869C26.3572%2010.043%2026.0701%209.73242%2025.7361%209.39844L25.1297%208.78907L25.7215%208.19727C26.0437%207.86914%2026.3309%207.56153%2026.3572%207.50879C26.4978%207.22754%2026.2869%206.88477%2025.9734%206.88477C25.9031%206.88477%2025.8152%206.89942%2025.7801%206.917C25.7449%206.93457%2025.4432%207.22168%2025.1092%207.55274L24.4998%208.15918L23.8934%207.55274C23.5564%207.22168%2023.2547%206.93457%2023.2195%206.917C23.1111%206.86133%2022.9061%206.87891%2022.7977%206.95215Z%27%20fill%3D%27%23F04444%27%2F%3E%3C%2Fsvg%3E");
}

.btn-icon-only:hover .svg-action {
  transform: translateY(-1px) scale(1.12);
  filter: drop-shadow(0 2px 3px rgba(15, 23, 42, .16));
  opacity: .9;
}

.btn-icon-only:active .svg-action {
  transform: scale(.94);
  opacity: 1;
}

.panel-head.manager-head {
  justify-content: flex-end !important;
  margin-bottom: 8px;
}

.panel-head.list-count-head {
  justify-content: flex-start !important;
  margin-bottom: 8px;
}

.head-action-count {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.big-count {
  font-size: 15px !important;
  color: #334155 !important;
  font-weight: 800 !important;
}

.dashboard-recent-head {
  justify-content: flex-start !important;
  gap: 10px !important;
}

.dashboard-recent-head h2 {
  margin: 0 !important;
}

.status-row-actions,
.status-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
}

.status-row-actions form,
.status-actions form {
  margin: 0 !important;
  display: inline-flex !important;
}

.status-row {
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
}

.status-badge,
.badge.status-badge,
.status-badge-title,
.status-preview {
  background: var(--badge-bg, #eef2f7) !important;
  color: var(--badge-fg, #334155) !important;
}

.status-row .status-badge[style],
.application-card .status-badge[style],
.application-row .status-badge[style] {
  background: var(--badge-bg, #eef2f7) !important;
  color: var(--badge-fg, #334155) !important;
}

.finance-filters {
  grid-template-columns: minmax(230px, 1.5fr) minmax(90px, .7fr) minmax(105px, .75fr) minmax(95px, .7fr) minmax(112px, .78fr) minmax(105px, .68fr) minmax(105px, .68fr) !important;
  gap: 8px !important;
  align-items: end !important;
}

.finance-search-control {
  grid-column: auto !important;
}

.finance-filters label {
  display: block !important;
}

@media(max-width:1200px) {
  .finance-filters {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media(max-width:700px) {
  .finance-filters {
    grid-template-columns: 1fr !important;
  }

  .nav {
    padding: 8px !important;
  }
}

/* v24: header actions and multi-select filters */
.nav {
  padding: 8px 10px !important;
}

.nav a {
  border-radius: 6px !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
}

.panel-head.manager-head {
  justify-content: flex-start !important;
  margin-bottom: 8px;
}

.list-count-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

.head-left-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 32px;
}

.list-total-count {
  margin-left: auto !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #94a3b8 !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

.dashboard-recent-head {
  justify-content: flex-start !important;
  gap: 0 !important;
}

.multi-select {
  position: relative;
  min-width: 0;
}

.multi-select-btn {
  width: 100%;
  height: 34px;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  background: #fff;
  cursor: pointer;
  color: #374151;
}

.multi-select-btn:after {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 1.5px solid #64748b;
  border-bottom: 1.5px solid #64748b;
  transform: rotate(45deg) translateY(-2px);
  flex: 0 0 auto;
  opacity: .8;
}

.multi-select.open .multi-select-btn {
  border-color: #3b82f6;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, .08);
}

.multi-menu {
  position: absolute;
  z-index: 100;
  top: calc(100% + 6px);
  left: 0;
  width: 100%;
  min-width: 230px;
  background: #fff;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .16);
  overflow: hidden;
}

.multi-options {
  max-height: 240px;
  overflow: auto;
  padding: 6px;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.multi-option {
  height: 31px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 8px;
  border-radius: 4px;
  color: #334155;
  font-weight: 500;
  cursor: pointer;
  user-select: none;
}

.multi-option:hover {
  background: #f1f5f9;
}

.multi-option input {
  width: 14px;
  height: 14px;
  margin: 0;
  accent-color: #3b82f6;
}

.multi-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding: 8px;
  border-top: 1px solid #e2e8f0;
  background: #f8fafc;
}

.multi-actions button {
  height: 30px;
  border: 1px solid #cbd5e1;
  border-radius: 4px;
  background: #fff;
  color: #475569;
  font-weight: 700;
  padding: 0 10px;
}

.multi-actions button[data-multi-apply] {
  background: #3b82f6;
  border-color: #3b82f6;
  color: #fff;
}

.multi-actions button:hover {
  filter: brightness(.97);
}

.smart-filters .multi-select {
  min-width: 150px;
}

@media(max-width:900px) {
  .multi-menu {
    position: fixed;
    left: 12px;
    right: 12px;
    top: auto;
    width: auto;
    min-width: 0
  }

  .list-total-count {
    font-size: 12px !important
  }

  .nav {
    padding: 8px !important;
  }
}

/* v25: clean manager lists, multi filters everywhere, resizable application columns */
.nav a {
  padding-left: 14px !important;
  padding-right: 14px !important;
}

.page-subtitle {
  display: none !important;
}

.hint-box,
.form-help {
  display: none !important;
}

.status-row-main .card-muted {
  font-size: 12px;
  color: #64748b;
}

.manager-head {
  justify-content: flex-start !important;
}

.finance-stats {
  margin: 16px 16px 10px !important;
}

.main>.panel {
  margin-left: 16px !important;
  margin-right: 16px !important;
}

.smart-filters {
  align-items: end;
}

.smart-filters .field,
.smart-filters .multi-select-btn,
.smart-filters .search-combo button {
  height: 34px !important;
  min-height: 34px !important;
}

.smart-filters .search-combo input {
  height: 34px !important;
  min-height: 34px !important;
}

.smart-filters .date-filter label {
  margin-bottom: 4px;
  white-space: nowrap;
}

.finance-filters {
  grid-template-columns: minmax(230px, 1.45fr) minmax(110px, .72fr) minmax(120px, .78fr) minmax(110px, .72fr) minmax(130px, .86fr) minmax(116px, .66fr) minmax(116px, .66fr) !important;
  gap: 8px !important;
}

.reports-filters {
  grid-template-columns: minmax(118px, .68fr) minmax(118px, .68fr) minmax(150px, .9fr) minmax(150px, .95fr) minmax(135px, .8fr) minmax(150px, .9fr) minmax(120px, .72fr) !important;
  gap: 8px !important;
}

.filters .multi-select {
  min-width: 0 !important;
}

.multi-select-btn {
  height: 34px !important;
  min-height: 34px !important;
  border-radius: 4px !important;
}

.application-table {
  --app-cols: 80px minmax(150px, 1.05fr) 105px minmax(150px, 1.2fr) 105px 125px 100px 120px 120px;
}

.application-head,
.application-row {
  grid-template-columns: var(--app-cols) !important;
}

.application-head {
  padding: 0 10px !important;
}

.resizable-head-cell {
  position: relative;
  min-width: 0;
  height: 34px;
  display: flex;
  align-items: center;
}

.resizable-head-cell .sortable {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
  padding-right: 8px;
}

.col-resizer {
  position: absolute;
  top: 5px;
  right: -5px;
  width: 10px;
  height: 24px;
  cursor: col-resize;
  z-index: 5;
}

.col-resizer:before {
  content: "";
  position: absolute;
  left: 4px;
  top: 0;
  width: 1px;
  height: 100%;
  background: rgba(255, 255, 255, .28);
}

.col-resizer:hover:before {
  background: #fff;
}

.application-table.resizing,
.application-table.resizing * {
  cursor: col-resize !important;
  user-select: none !important;
}

.application-table [data-list-body] {
  overflow: visible;
}

.application-row span {
  min-width: 0;
}

.status-list .status-row {
  min-height: 48px;
}

.status-row-actions .btn-icon-only,
.status-actions .btn-icon-only {
  width: 24px !important;
  min-width: 24px !important;
  height: 24px !important;
  min-height: 24px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.status-row-actions .svg-action,
.status-actions .svg-action {
  width: 16px !important;
  height: 16px !important;
}

.btn-add {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #3b82f6 !important;
  width: 34px !important;
  min-width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
}

.btn-add .svg-action {
  width: 28px !important;
  height: 28px !important;
}

.user-editor-panel .entity-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media(max-width:1320px) {

  .finance-filters,
  .reports-filters {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

  .application-table {
    --app-cols: 70px minmax(135px, 1fr) 95px minmax(130px, 1fr) 90px 110px 90px 105px 110px;
  }
}

@media(max-width:700px) {

  .finance-filters,
  .reports-filters {
    grid-template-columns: 1fr !important;
  }

  .application-head {
    display: none !important;
  }

  .application-row {
    grid-template-columns: 1fr !important;
  }

  .user-editor-panel .entity-form-grid {
    grid-template-columns: 1fr;
  }
}

/* v26: fixed column resizing, live tables, clean finance width */
.finance-stats {
  margin: 16px !important;
  width: calc(100% - 32px) !important;
}

.main>.panel[data-live-refresh="finance-list"] {
  margin-top: 0 !important;
}

.resizable-table {
  table-layout: fixed;
  width: 100%;
}

.resizable-table th,
.resizable-table td {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.resizable-table .resizable-head-cell {
  position: relative;
  min-width: 0;
  height: auto;
}

.resizable-table .col-resizer {
  top: 6px;
  right: -5px;
  height: 22px;
}

.resizable-table.resizing,
.resizable-table.resizing * {
  cursor: col-resize !important;
  user-select: none !important;
}

.application-head .resizable-head-cell:last-child .col-resizer,
.resizable-table .resizable-head-cell:last-child .col-resizer {
  display: none !important;
}

.application-table {
  overflow: hidden;
}

.application-head,
.application-row {
  width: 100%;
}

.application-head {
  border-radius: 4px !important;
}

.application-row {
  border-radius: 4px !important;
}

.status-row-main .card-muted:first-letter {
  text-transform: uppercase;
}

@media(max-width:900px) {
  .finance-stats {
    width: auto !important;
    margin: 12px !important;
  }
}


/* v27: fixed empty-table layout and finance width after clean database */
.finance-stats {
  padding: 0 !important;
  margin: 16px !important;
  width: calc(100% - 32px) !important;
}

.resizable-table {
  table-layout: fixed !important;
  width: 100% !important;
  border-collapse: collapse !important;
}

.resizable-table thead {
  display: table-header-group !important;
}

.resizable-table tbody {
  display: table-row-group !important;
}

.resizable-table tr {
  display: table-row !important;
}

.resizable-table th.resizable-head-cell {
  display: table-cell !important;
  position: relative !important;
  height: 34px !important;
  min-height: 34px !important;
  vertical-align: middle !important;
  padding: 8px 28px 8px 8px !important;
  line-height: 16px !important;
}

.resizable-table th.resizable-head-cell>.sortable {
  display: block !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.resizable-table th.resizable-head-cell>.col-resizer {
  position: absolute !important;
  top: 6px !important;
  right: -4px !important;
  bottom: 6px !important;
  width: 8px !important;
  height: auto !important;
  cursor: col-resize !important;
  z-index: 4 !important;
}

.resizable-table th.resizable-head-cell:last-child>.col-resizer {
  display: none !important;
}

.resizable-table th,
.resizable-table td {
  display: table-cell !important;
  vertical-align: middle !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.resizable-table td[colspan] {
  white-space: normal !important;
}

.table-wrap.finance-table {
  overflow: auto !important;
}

.report-table-scroll {
  overflow: auto !important;
}

.report-table-scroll .table,
.finance-table .table {
  min-width: 100% !important;
}

.reports-workspace .table th,
.reports-workspace .table td,
.finance-table .table th,
.finance-table .table td {
  height: 34px;
}

/* Make empty report/finance tables still look like tables, not stacked labels */
.reports-workspace tr:only-child td[colspan],
.finance-table tr:only-child td[colspan] {
  padding: 12px !important;
  color: #64748b !important;
}

/* v28: visible resizers, table headers, compact confirm and errors */
.table thead th,
.sortable-table thead th,
.resizable-table thead th {
  background: #334155 !important;
  color: #fff !important;
  font-weight: 700 !important;
}

.table thead th a {
  color: #fff !important;
  display: block;
  text-decoration: none;
}

.table thead th.resizable-head-cell {
  position: relative !important;
  white-space: nowrap;
}

.table .col-resizer,
.application-head .col-resizer {
  position: absolute;
  top: 0;
  right: -3px;
  width: 7px;
  height: 100%;
  cursor: col-resize;
  z-index: 5;
}

.table .col-resizer:after,
.application-head .col-resizer:after {
  content: "";
  position: absolute;
  top: 6px;
  bottom: 6px;
  left: 3px;
  width: 2px;
  background: rgba(255, 255, 255, .45);
  border-radius: 2px;
}

.application-head .col-resizer:after {
  background: rgba(255, 255, 255, .45) !important;
}

.table .col-resizer:hover:after,
.application-head .col-resizer:hover:after {
  background: #3b82f6 !important;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, .18);
}

.form-actions .btn {
  height: 34px;
}

.errorlist {
  list-style: none;
  margin: 4px 0 0;
  padding: 0;
  color: #dc2626;
  font-size: 11px;
  line-height: 1.25;
  font-weight: 600;
}

.modal-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 14px;
}

.log-table-wrap {
  max-height: calc(100vh - 110px);
  overflow: auto;
}

.finance-stats {
  margin: 16px !important;
  width: auto !important;
  box-sizing: border-box;
}

.finance-stats .stat {
  border: 1px solid #e2e8f0;
}

/* keep empty reports/finance tables horizontal */
.table {
  table-layout: fixed !important;
  width: 100%;
  border-collapse: collapse;
}

.table th,
.table td {
  display: table-cell !important;
  vertical-align: middle;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* manager rows keep order visible but compact */
.status-row-main .card-muted {
  margin-right: 8px;
}

/* v30: status select and finance/report table resize fixes */
.table-wrap.finance-table,
.report-table-scroll {
  overflow: auto !important;
  max-width: 100% !important;
}

.table.resizable-table {
  table-layout: fixed !important;
  border-collapse: collapse !important;
}

.table.resizable-table th.resizable-head-cell {
  position: relative !important;
  overflow: hidden !important;
  padding-right: 24px !important;
}

.table.resizable-table .col-resizer {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  width: 12px !important;
  height: 100% !important;
  cursor: col-resize !important;
  z-index: 30 !important;
  touch-action: none !important;
}

.table.resizable-table .col-resizer:after {
  content: "";
  position: absolute;
  top: 6px;
  bottom: 6px;
  left: 5px;
  width: 2px;
  background: rgba(255, 255, 255, .68) !important;
  border-radius: 2px;
}

.table.resizable-table .col-resizer:hover:after,
.table.resizable-table.resizing .col-resizer:after {
  background: #60a5fa !important;
  box-shadow: 0 0 0 2px rgba(96, 165, 250, .22);
}

body.is-table-resizing,
body.is-table-resizing * {
  cursor: col-resize !important;
  user-select: none !important;
}

.table.resizable-table th,
.table.resizable-table td {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.table.resizable-table td[colspan] {
  white-space: normal !important;
}


/* v31: finance/reports table resizing exactly like applications: visible separators, pair resize, no jump-back */
.table-wrap.finance-table,
.report-table-scroll {
  overflow: auto !important;
  max-width: 100% !important;
}

.table.resizable-table {
  border-collapse: collapse !important;
  table-layout: fixed !important;
}

.table.resizable-table thead th,
.reports-workspace .table.resizable-table thead th,
.finance-table .table.resizable-table thead th {
  background: #334155 !important;
  color: #fff !important;
  height: 34px !important;
  min-height: 34px !important;
  padding: 8px 24px 8px 8px !important;
  position: relative !important;
  vertical-align: middle !important;
}

.table.resizable-table th.resizable-head-cell>.sortable,
.table.resizable-table th.resizable-head-cell>a.sortable {
  display: block !important;
  color: #fff !important;
  width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  text-decoration: none !important;
}

.table.resizable-table .col-resizer,
.application-head .col-resizer {
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  right: -5px !important;
  width: 10px !important;
  height: 100% !important;
  cursor: col-resize !important;
  z-index: 40 !important;
  background: transparent !important;
  touch-action: none !important;
}

.table.resizable-table th.resizable-head-cell:last-child>.col-resizer,
.application-head .resizable-head-cell:last-child>.col-resizer {
  display: none !important;
}

.table.resizable-table .col-resizer:before,
.application-head .col-resizer:before,
.table.resizable-table .col-resizer:after,
.application-head .col-resizer:after {
  content: "" !important;
  position: absolute !important;
  left: 4px !important;
  top: 6px !important;
  bottom: 6px !important;
  width: 2px !important;
  height: auto !important;
  border-radius: 2px !important;
  background: rgba(255, 255, 255, .48) !important;
  box-shadow: none !important;
}

.table.resizable-table .col-resizer:hover:before,
.application-head .col-resizer:hover:before,
.table.resizable-table .col-resizer:hover:after,
.application-head .col-resizer:hover:after,
.table.resizable-table.resizing .col-resizer:before,
.application-table.resizing .col-resizer:before {
  background: #60a5fa !important;
  box-shadow: 0 0 0 2px rgba(96, 165, 250, .24) !important;
}

.table.resizable-table.resizing,
.table.resizable-table.resizing *,
body.is-table-resizing,
body.is-table-resizing * {
  cursor: col-resize !important;
  user-select: none !important;
}

.table.resizable-table th,
.table.resizable-table td {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.table.resizable-table td[colspan] {
  white-space: normal !important;
}

/* v32: stable finance/reports/log tables */
.table-wrap.finance-table,
.report-table-scroll,
.log-table-wrap {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  max-width: 100% !important;
}

.table.resizable-table {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
}

.table.resizable-table thead th.resizable-head-cell {
  position: relative !important;
  background: #334155 !important;
  color: #fff !important;
  overflow: visible !important;
  padding: 8px 22px 8px 8px !important;
}

.table.resizable-table thead th.resizable-head-cell .sortable,
.table.resizable-table thead th.resizable-head-cell>a {
  color: #fff !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  display: block !important;
}

.table.resizable-table .col-resizer,
.application-head .col-resizer {
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  right: -5px !important;
  width: 10px !important;
  height: 100% !important;
  cursor: col-resize !important;
  z-index: 80 !important;
  background: transparent !important;
  touch-action: none !important;
}

.table.resizable-table th.resizable-head-cell:last-child>.col-resizer,
.application-head .resizable-head-cell:last-child>.col-resizer {
  display: none !important;
}

.table.resizable-table .col-resizer:before,
.table.resizable-table .col-resizer:after,
.application-head .col-resizer:before,
.application-head .col-resizer:after {
  content: "" !important;
  position: absolute !important;
  top: 6px !important;
  bottom: 6px !important;
  left: 4px !important;
  width: 2px !important;
  height: auto !important;
  border-radius: 2px !important;
  background: rgba(255, 255, 255, .7) !important;
  box-shadow: none !important;
}

.table.resizable-table .col-resizer:hover:before,
.table.resizable-table .col-resizer:hover:after,
.table.resizable-table.resizing .col-resizer:before,
.table.resizable-table.resizing .col-resizer:after,
.application-head .col-resizer:hover:before,
.application-head .col-resizer:hover:after,
.application-table.resizing .col-resizer:before,
.application-table.resizing .col-resizer:after {
  background: #fff !important;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, .18) !important;
}

.table.resizable-table td,
.table.resizable-table th {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.table.resizable-table td[colspan] {
  white-space: normal !important;
}

body.is-table-resizing,
body.is-table-resizing * {
  cursor: col-resize !important;
  user-select: none !important;
}

.form-grid input[readonly],
.form-grid input:disabled {
  background: #f1f5f9 !important;
  color: #64748b !important;
  cursor: not-allowed !important;
}

/* v33: final table resizer visibility and log wrapping */
.table-wrap.finance-table,
.report-table-scroll,
.log-table-wrap {
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

.table.resizable-table {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  table-layout: fixed !important;
}

.table.resizable-table .col-resizer,
.application-head .col-resizer {
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  right: -5px !important;
  width: 10px !important;
  height: 100% !important;
  cursor: col-resize !important;
  z-index: 100 !important;
  background: transparent !important;
  touch-action: none !important;
}

.table.resizable-table .col-resizer:before,
.application-head .col-resizer:before {
  content: "" !important;
  position: absolute !important;
  left: 4px !important;
  top: 4px !important;
  bottom: 4px !important;
  width: 2px !important;
  height: auto !important;
  border-radius: 2px !important;
  background: rgba(255, 255, 255, .78) !important;
}

.table.resizable-table .col-resizer:after,
.application-head .col-resizer:after {
  display: none !important;
}

.table.resizable-table .col-resizer:hover:before,
.application-head .col-resizer:hover:before,
.table.resizable-table.resizing .col-resizer:before,
.application-table.resizing .col-resizer:before {
  background: #fff !important;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, .16) !important;
}

.table.resizable-table th.resizable-head-cell:last-child>.col-resizer,
.application-head .resizable-head-cell:last-child>.col-resizer {
  display: none !important;
}

.log-table-wrap table td:nth-child(3),
.log-table-wrap table td:nth-child(4) {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  line-height: 1.35 !important;
  word-break: break-word !important;
}

.log-table-wrap table td {
  vertical-align: top !important;
}

.log-table-wrap table tr {
  height: auto !important;
}

/* v34: owner permissions, cleaner multiselects, centered editors */
.layout {
  grid-template-columns: 205px minmax(0, 1fr) !important;
}

.sidebar-head {
  padding: 0 18px !important;
  justify-content: flex-start !important;
}

.nav {
  padding: 10px 12px !important;
}

.nav a {
  padding: 0 12px !important;
  border-radius: 6px !important;
}

.application-table {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

.application-head,
.application-row {
  width: 100% !important;
  max-width: 100% !important;
}

.application-head .col-resizer,
.table.resizable-table .col-resizer {
  height: 100% !important;
  top: 0 !important;
}

.application-head .col-resizer:before,
.table.resizable-table .col-resizer:before {
  top: 4px !important;
  bottom: 4px !important;
  background: rgba(255, 255, 255, .78) !important;
}

.multi-select {
  position: relative;
  min-width: 0;
}

.multi-select-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  height: 34px !important;
  min-height: 34px !important;
}

.multi-menu {
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  z-index: 500;
  width: max-content;
  min-width: 100%;
  max-width: min(340px, calc(100vw - 24px));
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 6px;
  box-shadow: 0 16px 42px rgba(15, 23, 42, .18);
  padding: 8px;
}

.multi-options {
  display: grid;
  gap: 2px;
  max-height: 260px;
  overflow: auto;
}

.multi-option {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 30px !important;
  margin: 0 !important;
  padding: 5px 6px !important;
  color: #334155 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  border-radius: 4px;
  white-space: nowrap;
}

.multi-option:hover {
  background: #f8fafc;
}

.multi-option input {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  min-height: 16px !important;
  margin: 0 !important;
  flex: 0 0 16px !important;
}

.multi-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  border-top: 1px solid var(--line);
  margin-top: 8px;
  padding-top: 8px;
}

.multi-actions button {
  height: 30px;
  border-radius: 4px;
  border: 1px solid var(--line);
  background: #fff;
  padding: 0 12px;
  font-weight: 700;
  color: #334155;
}

.multi-actions button[data-multi-apply] {
  background: var(--blue);
  border-color: var(--blue);
  color: #fff;
}

.smart-filters .field,
.smart-filters .multi-select-btn,
.smart-filters input,
.smart-filters select {
  height: 34px !important;
  min-height: 34px !important;
}

.centered-editor-panel {
  max-width: 760px !important;
  margin: 28px auto !important;
  width: calc(100% - 40px) !important;
  padding: 18px !important;
}

.user-editor-panel {
  max-width: 820px !important;
}

.entity-form-panel {
  border-radius: 6px !important;
}

.permissions-box {
  border-top: 1px solid var(--line);
  padding-top: 12px;
  margin-top: 4px;
}

.permissions-box h2 {
  font-size: 13px;
  margin: 0 0 10px;
  font-weight: 800;
}

.permissions-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 14px;
}

.switch-line {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 30px;
  color: #334155;
}

.switch-line b {
  font-size: 12px;
  font-weight: 700;
  color: #334155;
}

.switch {
  position: relative;
  display: inline-flex !important;
  align-items: center !important;
  width: 38px;
  height: 22px;
  margin: 0 !important;
}

.switch input {
  position: absolute;
  opacity: 0;
  width: 0 !important;
  height: 0 !important;
}

.switch span {
  position: absolute;
  inset: 0;
  border-radius: 999px;
  background: #cbd5e1;
  transition: .15s;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, .08);
}

.switch span:before {
  content: "";
  position: absolute;
  width: 18px;
  height: 18px;
  left: 2px;
  top: 2px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, .24);
  transition: .15s;
}

.switch input:checked+span {
  background: #3b82f6;
}

.switch input:checked+span:before {
  transform: translateX(16px);
}

.switch input:disabled+span {
  opacity: .55;
  cursor: not-allowed;
}

.form-errors {
  border: 1px solid #fecaca;
  background: #fef2f2;
  color: #991b1b;
  border-radius: 6px;
  padding: 10px;
  font-size: 12px;
}

.access-denied-panel {
  max-width: 560px;
  margin: 28px auto;
  text-align: center;
}

.access-denied-panel h2 {
  margin: 0 0 8px;
  font-size: 18px;
}

.access-denied-panel p {
  margin: 0;
  color: #64748b;
}

.left-actions {
  justify-content: flex-start !important;
}

.database-panel h2 {
  margin: 0 0 8px;
  font-size: 16px;
}

.log-description {
  white-space: normal !important;
  overflow: visible !important;
}

.log-text {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal !important;
  line-height: 1.35;
  word-break: break-word;
}

.log-text.expanded {
  display: block;
  -webkit-line-clamp: unset;
  overflow: visible;
}

.log-toggle {
  margin-top: 4px;
  background: transparent;
  border: 0;
  color: #3b82f6;
  font-weight: 700;
  font-size: 12px;
  padding: 0;
}

.table-wrap.finance-table,
.report-table-scroll,
.log-table-wrap {
  overflow-x: hidden !important;
}

.table.resizable-table {
  width: 100% !important;
  max-width: 100% !important;
}

.table.resizable-table th.resizable-head-cell {
  overflow: visible !important;
}

.table.resizable-table td {
  max-width: 0;
}

@media(max-width:900px) {
  .layout {
    grid-template-columns: 1fr !important;
  }

  .permissions-grid {
    grid-template-columns: 1fr;
  }

  .centered-editor-panel {
    width: calc(100% - 20px) !important;
    margin: 12px auto !important;
  }
}

/* v35: requested layout fixes */
.multi-menu {
  left: 0 !important;
  right: auto !important;
  width: auto !important;
  min-width: 100% !important;
  max-width: min(360px, calc(100vw - 24px)) !important;
  overflow: hidden !important;
}

.multi-options {
  max-height: 220px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding-right: 2px !important;
}

.multi-option {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 8px !important;
  min-height: 32px !important;
  line-height: 16px !important;
  padding: 6px 8px !important;
}

.multi-option input {
  align-self: center !important;
  justify-self: center !important;
  margin: 0 !important;
  position: static !important;
}

.multi-option span {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  line-height: 16px !important;
}

.multi-actions {
  position: sticky !important;
  bottom: 0 !important;
  background: #fff !important;
}

.application-window {
  grid-template-columns: 480px minmax(360px, 1fr) minmax(420px, 1.05fr) !important;
}

.finance-section {
  display: flex !important;
}

.centered-editor-panel {
  max-width: 720px !important;
  margin: calc(50vh - 210px) auto 24px !important;
  width: min(720px, calc(100% - 40px)) !important;
}

.user-editor-panel {
  max-width: 820px !important;
}

.database-tools-centered {
  max-width: 560px !important;
  text-align: center;
}

.database-tools-box {
  align-items: stretch;
}

.database-actions-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 12px;
}

.database-actions-row form {
  margin: 0;
  display: inline-flex;
}

.users-list .status-row-main {
  display: grid !important;
  grid-template-columns: minmax(170px, 260px) minmax(130px, 180px) max-content max-content !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
}

.users-list .status-row-main b,
.users-list .status-row-main span {
  margin: 0 !important;
}

.users-list .status-row {
  align-items: center !important;
}


/* v36: fix multiselect checkbox/text alignment. The old grid layout treated the whitespace between input and span as a separate grid item, so the label text dropped to the next line. */
.multi-menu {
  overflow: visible !important;
  padding: 8px !important;
}

.multi-options {
  max-height: 190px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 0 2px 0 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}

.multi-option {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  min-height: 32px !important;
  height: auto !important;
  padding: 6px 8px !important;
  line-height: 16px !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}

.multi-option input[type="checkbox"] {
  width: 16px !important;
  min-width: 16px !important;
  max-width: 16px !important;
  height: 16px !important;
  min-height: 16px !important;
  max-height: 16px !important;
  flex: 0 0 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  position: static !important;
  align-self: center !important;
}

.multi-option span {
  display: block !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  line-height: 16px !important;
  transform: none !important;
}

.multi-actions {
  position: relative !important;
  bottom: auto !important;
  margin-top: 8px !important;
  padding-top: 8px !important;
  background: #fff !important;
}

/* v37: finance cancellation, paid flag, stable multi-select layout */
.multi-option,
.multi-options .multi-option {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  min-height: 32px !important;
  line-height: 16px !important;
}

.multi-option input[type="checkbox"] {
  display: inline-block !important;
  flex: 0 0 16px !important;
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  transform: none !important;
  vertical-align: middle !important;
}

.multi-option span {
  display: inline-block !important;
  flex: 1 1 auto !important;
  line-height: 16px !important;
  padding: 0 !important;
  margin: 0 !important;
  transform: none !important;
}

.paid-toggle {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 28px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #334155 !important;
  margin: 0 !important;
}

.paid-toggle input {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  margin: 0 !important;
  accent-color: #3b82f6;
}

.edit-actions-bottom {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--line-2);
}

.dirty-cancel-btn[hidden] {
  display: none !important;
}

.finance-row.finance-cancelled,
tr.finance-cancelled {
  opacity: .56;
  background: #f8fafc !important;
}

.finance-row.finance-cancelled b,
.finance-row.finance-cancelled span,
.finance-row.finance-cancelled small,
tr.finance-cancelled td {
  color: #64748b !important;
}

.finance-chip.cancelled {
  color: #64748b !important;
}

.finance-row-main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
}

.finance-row-action {
  grid-column: 1/-1;
  display: flex;
  justify-content: flex-end;
  margin: 2px 0 0;
}

.action-cell {
  white-space: nowrap;
  text-align: left;
}

.inline-action-form {
  display: inline-flex;
  margin: 0;
}

.link-action {
  border: 0;
  background: transparent;
  padding: 0;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
  line-height: 16px;
}

.link-action.cancel {
  color: #ef4444;
}

.link-action.restore {
  color: #2563eb;
}

.link-action:hover {
  text-decoration: underline;
}

.history-cancelled {
  background: #f8fafc !important;
  opacity: .7;
}

.history-cancelled span {
  color: #64748b !important;
}

.table.resizable-table .col-resizer,
.application-head .col-resizer {
  width: 10px !important;
  right: -5px !important;
  height: 100% !important;
  top: 0 !important;
  cursor: col-resize !important;
}

.table.resizable-table .col-resizer:before,
.application-head .col-resizer:before {
  content: "" !important;
  position: absolute !important;
  left: 4px !important;
  top: 5px !important;
  bottom: 5px !important;
  width: 2px !important;
  background: rgba(255, 255, 255, .82) !important;
  border-radius: 2px !important;
}

.table.resizable-table .col-resizer:hover:before,
.application-head .col-resizer:hover:before {
  background: #fff !important;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .22) !important;
}

/* v38: application layout, finance controls, searches, select alignment */
.application-window {
  grid-template-columns: 620px minmax(300px, .86fr) minmax(340px, .92fr) !important;
}

.detail-form {
  overflow: auto !important;
  gap: 6px !important;
  padding: 10px 12px !important;
}

.fields-vehicle,
.vehicle-grid-v38 {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 6px 8px !important;
}

.vehicle-grid-v38 .vin-field {
  grid-column: span 2 !important;
}

.payment-grid-v38 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 6px 8px !important;
}

.payment-grid-v38 .payment-note-field {
  grid-column: span 2 !important;
}

.payment-grid-v38 .paid-field {
  grid-column: span 1 !important;
  align-self: end !important;
  height: 28px !important;
  padding-top: 0 !important;
}

.edit-actions-bottom {
  justify-content: flex-end !important;
  margin-top: 2px !important;
  padding-top: 7px !important;
}

.finance-row-main {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
}

.finance-amount-actions {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  white-space: nowrap !important;
}

.finance-row-action {
  display: inline-flex !important;
  margin: 0 !important;
  grid-column: auto !important;
  justify-content: flex-end !important;
}

.finance-initial .finance-amount-actions {
  gap: 0 !important;
}

.muted-action {
  color: #94a3b8;
  font-weight: 700;
}

.app-search-main {
  min-width: 240px;
}

.app-search-id {
  min-width: 140px;
  max-width: 180px;
}

.filters.smart-filters {
  grid-template-columns: minmax(260px, 1.45fr) minmax(140px, .65fr) repeat(5, minmax(145px, 1fr)) !important;
}

.application-table {
  overflow: hidden !important;
}

.application-head,
.application-row {
  overflow: hidden !important;
}

.multi-option,
.multi-options .multi-option {
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  min-height: 32px !important;
  height: 32px !important;
  line-height: 16px !important;
  white-space: nowrap !important;
}

.multi-option input[type="checkbox"] {
  display: block !important;
  flex: 0 0 16px !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  min-height: 16px !important;
  margin: 0 !important;
  position: relative !important;
  top: 0 !important;
  transform: none !important;
  align-self: center !important;
}

.multi-option span {
  display: block !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  line-height: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  position: static !important;
  transform: none !important;
}

.table.resizable-table .col-resizer:before,
.application-head .col-resizer:before {
  top: 4px !important;
  bottom: 4px !important;
  width: 2px !important;
  background: rgba(255, 255, 255, .86) !important;
}

.table.resizable-table .col-resizer:hover:before,
.application-head .col-resizer:hover:before {
  background: #fff !important;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .3) !important;
}

.confirm-modal-active .modal-backdrop:not([hidden]) {
  display: grid !important;
}

@media(max-width:1450px) {
  .application-window {
    grid-template-columns: 560px minmax(280px, .85fr) minmax(320px, .9fr) !important
  }

  .fields-vehicle,
  .vehicle-grid-v38 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important
  }

  .vehicle-grid-v38 .vin-field {
    grid-column: 1/-1 !important
  }

  .filters.smart-filters {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important
  }

  .app-search-main,
  .app-search-id {
    max-width: none;
  }
}

@media(max-width:900px) {
  .application-window {
    display: block !important;
    overflow: auto !important
  }

  .app-section {
    min-height: auto !important
  }

  .fields-vehicle,
  .vehicle-grid-v38,
  .payment-grid-v38 {
    grid-template-columns: 1fr !important
  }

  .vehicle-grid-v38 .vin-field,
  .payment-grid-v38 .payment-note-field,
  .payment-grid-v38 .paid-field {
    grid-column: auto !important
  }

  .filters.smart-filters {
    grid-template-columns: 1fr !important
  }
}


/* v39: final layout and interaction fixes */
.application-window {
  grid-template-columns: 590px minmax(330px, 1fr) minmax(340px, .92fr) !important;
}

.filters.smart-filters {
  grid-template-columns: minmax(230px, 1.25fr) minmax(170px, .85fr) repeat(5, minmax(145px, 1fr)) !important;
}

.app-search-main {
  min-width: 210px !important;
}

.app-search-id {
  min-width: 170px !important;
  max-width: 220px !important;
}

/* Make multiselect rows robust in every dropdown, even if browser injects whitespace/text nodes. */
.multi-option {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
}

.multi-option input[type="checkbox"] {
  display: inline-block !important;
  flex: 0 0 16px !important;
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  position: static !important;
  top: auto !important;
  transform: none !important;
  align-self: center !important;
}

.multi-option span {
  display: inline-block !important;
  flex: 1 1 auto !important;
  line-height: 16px !important;
  padding: 0 !important;
  margin: 0 !important;
  position: static !important;
  transform: none !important;
  vertical-align: middle !important;
}

/* Logs should update without forcing the page back to top. Keep rows flexible for long details. */
.log-description,
.log-text {
  white-space: normal !important;
  word-break: break-word !important;
}

@media(max-width:1450px) {
  .application-window {
    grid-template-columns: 530px minmax(300px, 1fr) minmax(320px, .9fr) !important;
  }
}

/* v40: permissions, ordering, history loading, database and page cleanup */
.sidebar-head {
  justify-content: space-between !important;
  gap: 8px !important;
}

.app-version {
  font-size: 10px;
  line-height: 1;
  color: #64748b;
  font-weight: 800;
  letter-spacing: .02em;
  margin-left: auto;
}

/* multi-select must always be one row: checkbox + text */
.multi-options .multi-option {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  height: 32px !important;
  min-height: 32px !important;
  padding: 6px 8px !important;
  white-space: nowrap !important;
}

.multi-options .multi-option input[type="checkbox"] {
  display: inline-block !important;
  flex: 0 0 16px !important;
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  align-self: center !important;
  position: static !important;
  transform: none !important;
}

.multi-options .multi-option span {
  display: inline-block !important;
  flex: 1 1 auto !important;
  line-height: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Center all editor panels in the main workspace, not near the left edge. */
.centered-editor-panel {
  width: min(720px, calc(100% - 48px)) !important;
  max-width: 720px !important;
  margin: max(24px, calc(50vh - 280px)) auto 24px !important;
}

.user-editor-panel {
  width: min(860px, calc(100% - 48px)) !important;
  max-width: 860px !important;
}

.database-tools-centered {
  width: min(560px, calc(100% - 48px)) !important;
  max-width: 560px !important;
}

/* History infinite list uses the scroll box itself, not a nested .timeline wrapper. */
#historyBox {
  overflow: auto !important;
  display: flex !important;
  flex-direction: column !important;
}

#historyBox [data-list-body] {
  display: grid;
  align-content: start;
  grid-auto-rows: max-content;
  gap: 0;
}

#historyBox .scroll-sentinel {
  height: 12px;
  flex: 0 0 12px;
}

.order-action {
  border: 0;
  background: transparent;
  color: #64748b;
  font-weight: 900;
  font-size: 15px;
  line-height: 1;
  width: 18px;
  height: 22px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: color .14s, transform .14s;
}

.order-action:hover {
  color: #3b82f6;
  transform: translateY(-1px);
}

.status-row-actions,
.status-actions {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.status-row-actions form,
.status-actions form {
  margin: 0 !important;
  display: inline-flex !important;
}

/* More compact report totals after removal of refunds */
.reports-stats {
  grid-template-columns: repeat(4, minmax(150px, 220px)) !important;
  justify-content: start !important;
  gap: 10px !important;
}

.reports-stats .stat {
  min-width: 0 !important;
}

.table-link {
  color: #2563eb !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.table-link:hover {
  text-decoration: underline !important;
}

.db-busy-overlay {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 1300;
  background: rgba(15, 23, 42, .34);
  place-items: center;
  color: #fff;
  font-weight: 800;
  gap: 12px;
  text-align: center;
}

.db-busy .db-busy-overlay {
  display: grid;
}

.db-spinner {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 3px solid rgba(255, 255, 255, .35);
  border-top-color: #fff;
  animation: spin .75s linear infinite;
  margin: 0 auto 8px;
}

@keyframes spin {
  to {
    transform: rotate(360deg)
  }
}

@media(max-width:900px) {

  .centered-editor-panel,
  .user-editor-panel,
  .database-tools-centered {
    width: calc(100% - 20px) !important;
    margin: 12px auto !important;
  }

  .reports-stats {
    grid-template-columns: 1fr 1fr !important;
  }
}


/* v41: true centered editor/database panels and observer/user cleanup */
.main {
  position: relative;
}

.centered-editor-panel {
  position: absolute !important;
  left: 50% !important;
  top: calc(50% + 26px) !important;
  transform: translate(-50%, -50%) !important;
  margin: 0 !important;
}

.user-editor-panel {
  width: min(860px, calc(100% - 72px)) !important;
  max-width: 860px !important;
}

.database-tools-centered {
  width: min(560px, calc(100% - 72px)) !important;
  max-width: 560px !important;
}

.centered-editor-panel .form-stack {
  margin: 0 !important;
}

[data-default-settings][hidden] {
  display: none !important;
}

.viewer-mode .finance-section {
  display: flex !important;
}

.viewer-mode .finance-form {
  opacity: .65;
  pointer-events: none;
}

.viewer-mode .finance-row-action {
  display: none !important;
}

.viewer-mode #financeBox {
  opacity: .95;
}

@media(max-width:900px) {
  .centered-editor-panel {
    position: static !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    margin: 12px auto !important;
    width: calc(100% - 20px) !important;
  }
}

/* v42: top-centered editor/database panels and paid-toggle stability UI */
.centered-editor-panel {
  position: absolute !important;
  left: 50% !important;
  top: 78px !important;
  transform: translateX(-50%) !important;
  margin: 0 !important;
}

.user-editor-panel {
  width: min(860px, calc(100% - 72px)) !important;
  max-width: 860px !important;
}

.database-tools-centered {
  width: min(560px, calc(100% - 72px)) !important;
  max-width: 560px !important;
}

@media(max-width:900px) {
  .centered-editor-panel {
    position: static !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    margin: 12px auto !important;
    width: calc(100% - 20px) !important;
  }
}


/* v44: compact report summary without an empty fifth slot */
.reports-stats {
  grid-template-columns: repeat(5, minmax(130px, 190px)) !important;
  justify-content: start !important;
  gap: 8px !important;
}

.reports-stats .compact-stat {
  padding: 8px 10px !important;
}

/* v45: finance/reports summary row: stats on the left, filters on the right. No visible live-refresh blocks. */
.finance-overview-row,
.reports-overview-row {
  margin: 16px 16px 10px !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: stretch !important;
  background: #fff !important;
  border: 1px solid var(--line) !important;
  border-radius: 6px !important;
  box-shadow: var(--shadow) !important;
}

.finance-stat-cluster,
.report-stat-cluster {
  display: grid !important;
  gap: 10px !important;
  align-items: stretch !important;
  align-self: stretch !important;
}

.finance-stat-cluster {
  grid-template-columns: repeat(3, 132px) !important;
}

.report-stat-cluster {
  grid-template-columns: repeat(4, 132px) !important;
}

.finance-stat-cluster .stat,
.report-stat-cluster .stat {
  margin: 0 !important;
  min-width: 0 !important;
  height: 100% !important;
  padding: 12px 14px !important;
}

.finance-stat-cluster .stat b,
.report-stat-cluster .stat b {
  font-size: 18px !important;
  line-height: 1.1 !important;
}

.finance-top-filters,
.reports-overview-row .reports-filters {
  margin: 0 !important;
  height: 100% !important;
  /* background: #fff !important; */
  /* border: 1px solid var(--line) !important; */
  /* border-radius: 6px !important; */
  /* box-shadow: var(--shadow) !important; */
  padding: 14px !important;
  display: grid !important;
  align-items: end !important;
}

.finance-top-filters {
  display: flex;
  grid-template-columns: repeat(4, minmax(120px, 1fr)) repeat(2, minmax(118px, .75fr)) !important;
  gap: 8px !important;
}

.reports-overview-row .reports-filters {
  grid-template-columns: repeat(2, minmax(118px, .7fr)) repeat(5, minmax(130px, 1fr)) !important;
  gap: 8px !important;
}

.finance-list-panel {
  margin: 0 16px 16px !important;
}

.finance-search-row {
  display: grid !important;
  grid-template-columns: minmax(260px, 360px) !important;
  margin: 0 0 12px !important;
  gap: 0 !important;
}

.finance-search-row .finance-search-control {
  width: 100% !important;
}

.reports-workspace {
  margin-top: 0 !important;
}

.reports-body .reports-overview-row {
  flex: 0 0 auto !important;
}

.reports-body .reports-workspace {
  margin: 0 16px 16px !important;
}

.reports-filter-panel,
.reports-stats,
.finance-stats {
  display: none !important;
}

@media(max-width:1500px) {

  .finance-overview-row,
  .reports-overview-row {
    grid-template-columns: 1fr !important;
  }

  .finance-stat-cluster {
    grid-template-columns: repeat(3, minmax(130px, 1fr)) !important;
  }

  .report-stat-cluster {
    grid-template-columns: repeat(4, minmax(120px, 1fr)) !important;
  }
}

@media(max-width:900px) {

  .finance-overview-row,
  .reports-overview-row {
    margin: 12px !important;
  }

  .finance-top-filters,
  .reports-overview-row .reports-filters {
    grid-template-columns: 1fr 1fr !important;
    padding: 10px !important;
  }

  .finance-stat-cluster,
  .report-stat-cluster {
    grid-template-columns: 1fr 1fr !important;
  }

  .finance-list-panel {
    margin: 0 12px 12px !important;
  }
}

@media(max-width:640px) {

  .finance-top-filters,
  .reports-overview-row .reports-filters,
  .finance-stat-cluster,
  .report-stat-cluster {
    grid-template-columns: 1fr !important;
  }
}


/* v46: full-width destructive database clear button */
.database-tools-box .db-clear-form {
  width: 100%;
  margin: 10px 0 0;
  display: block;
}

.database-tools-box .db-clear-btn {
  width: 100%;
  min-height: 34px;
  background: #ef4444 !important;
  border-color: #ef4444 !important;
  color: #fff !important;
  box-shadow: 0 2px 4px rgba(239, 68, 68, .18) !important;
}

.database-tools-box .db-clear-btn:hover {
  background: #dc2626 !important;
  border-color: #dc2626 !important;
}


/* v47: clear database button width equals export/import row width, not full panel */
.database-tools-box .database-actions-wrap {
  display: inline-flex;
  flex-direction: column;
  align-items: stretch;
  width: max-content;
  max-width: 100%;
  margin: 12px auto 0;
}

.database-tools-box .database-actions-wrap .database-actions-row {
  margin-top: 0;
}

.database-tools-box .database-actions-wrap .db-clear-form {
  width: 100%;
  margin: 10px 0 0;
  display: block;
}

.database-tools-box .database-actions-wrap .db-clear-btn {
  width: 100%;
}

/* v48: tablet/mobile adaptive layout without changing desktop logic */
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

img,
svg,
video {
  max-width: 100%;
}

@media(max-width:1100px) {

  html,
  body {
    height: auto !important;
    min-height: 100% !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  .layout {
    display: block !important;
    width: 100% !important;
    min-height: 100vh !important;
    overflow: visible !important;
  }

  .sidebar {
    height: auto !important;
    min-height: 52px !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 260 !important;
    box-shadow: 0 6px 20px rgba(15, 23, 42, .12) !important;
  }

  .sidebar-head {
    height: 52px !important;
    padding: 0 12px !important;
    justify-content: space-between !important;
  }

  .brand {
    width: auto !important;
    padding-left: 0 !important;
    min-width: 0 !important;
  }

  .brand span {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .app-version {
    margin-left: 8px !important;
    flex: 0 0 auto !important;
  }

  .mobile-menu-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    border-radius: 6px !important;
    color: #fff !important;
  }

  .mobile-menu-btn:hover {
    background: rgba(255, 255, 255, .08) !important;
  }

  .nav {
    display: none !important;
    max-height: calc(100vh - 52px) !important;
    overflow: auto !important;
    padding: 8px !important;
    background: var(--sidebar) !important;
    border-top: 1px solid rgba(255, 255, 255, .06) !important;
  }

  .sidebar.open .nav {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  .nav a {
    height: 38px !important;
    padding: 0 10px !important;
    background: rgba(15, 23, 42, .12) !important;
    color: #cbd5e1 !important;
    border-color: rgba(148, 163, 184, .12) !important;
  }

  .nav a.active {
    color: #fff !important;
    background: rgba(59, 130, 246, .28) !important;
    border-color: rgba(59, 130, 246, .75) !important;
  }

  .main {
    min-height: calc(100vh - 52px) !important;
    height: auto !important;
    overflow: visible !important;
  }

  .topbar {
    position: sticky !important;
    top: 52px !important;
    z-index: 220 !important;
    height: auto !important;
    min-height: 50px !important;
    padding: 8px 12px !important;
    gap: 8px !important;
    background: rgba(255, 255, 255, .96) !important;
    backdrop-filter: blur(8px);
  }

  .page-title {
    font-size: 17px !important;
    line-height: 20px !important;
    white-space: normal !important;
    min-width: 0 !important;
  }

  .top-actions {
    gap: 6px !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
  }

  .user-pill {
    height: 32px !important;
    max-width: 180px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .btn {
    min-height: 32px !important;
    padding: 0 10px !important;
  }

  .messages {
    top: 60px !important;
    left: 10px !important;
    right: 10px !important;
    max-width: none !important;
  }

  .main>.panel:not(.reports-filter-panel),
  .application-create-window {
    margin: 10px !important;
  }

  .panel {
    padding: 10px !important;
  }

  .panel-head {
    margin-bottom: 8px !important;
  }

  .filters.smart-filters,
  .filters,
  .finance-top-filters,
  .reports-overview-row .reports-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .filters.smart-filters .app-search-main {
    grid-column: 1/-1 !important;
    min-width: 0 !important;
  }

  .filters.smart-filters .app-search-id {
    min-width: 0 !important;
    max-width: none !important;
  }

  .search-combo input,
  .search-combo button,
  .smart-filters .field,
  .smart-filters .multi-select-btn,
  .smart-filters input,
  .smart-filters select {
    height: 34px !important;
    min-height: 34px !important;
  }

  .multi-select {
    min-width: 0 !important;
  }

  .multi-menu {
    position: fixed !important;
    left: 10px !important;
    right: 10px !important;
    top: auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    z-index: 900 !important;
  }

  .multi-options {
    max-height: min(310px, 55vh) !important;
  }

  .application-table {
    overflow: visible !important;
  }

  .application-head {
    display: none !important;
  }

  .application-table [data-list-body] {
    gap: 8px !important;
  }

  .application-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px 10px !important;
    align-items: start !important;
    min-height: 0 !important;
    padding: 10px !important;
    border-radius: 8px !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04) !important;
  }

  .application-row>span {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 2px !important;
    min-width: 0 !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    line-height: 1.25 !important;
  }

  .application-row>span::before {
    content: attr(data-label);
    display: block !important;
    font-size: 10px !important;
    line-height: 12px !important;
    font-weight: 800 !important;
    color: #94a3b8 !important;
    text-transform: uppercase !important;
    letter-spacing: .02em !important;
  }

  .application-row .badge {
    max-width: 100% !important;
    white-space: normal !important;
    text-align: left !important;
    justify-content: flex-start !important;
  }

  .application-row small {
    white-space: normal !important;
  }

  body.application-detail-body,
  .application-detail-body .layout,
  .application-detail-body .main {
    height: auto !important;
    min-height: 100vh !important;
    overflow: visible !important;
  }

  .application-detail-body .topbar {
    padding: 8px 12px !important;
  }

  .application-window,
  .application-window-v19 {
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    background: var(--bg) !important;
    padding: 10px !important;
    gap: 10px !important;
  }

  .application-window-v19 .left-detail-column {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
  }

  .app-section,
  .application-window-v19 .left-detail-column .app-section,
  .edit-section,
  .summary-section,
  .finance-section,
  .history-section {
    display: flex !important;
    flex-direction: column !important;
    border: 1px solid var(--line) !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: var(--shadow) !important;
    overflow: hidden !important;
    max-height: none !important;
    min-height: 0 !important;
  }

  .section-titlebar,
  .summary-section h2 {
    height: 36px !important;
    flex: 0 0 36px !important;
    border-radius: 7px 7px 0 0 !important;
    padding: 0 12px !important;
  }

  .detail-form,
  .application-window-v19 .detail-form {
    display: flex !important;
    flex-direction: column !important;
    overflow: visible !important;
    max-height: none !important;
    padding: 10px !important;
    gap: 8px !important;
  }

  .fields-vehicle,
  .vehicle-grid-v38 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .vehicle-grid-v38 .vin-field {
    grid-column: 1/-1 !important;
  }

  .fields-3,
  .fields-2,
  .section-operation .fields-3,
  .operation-row,
  .client-grid-v17,
  .payment-grid-v38,
  .create-form-grid .fields-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .payment-grid-v38 .payment-note-field,
  .payment-grid-v38 .paid-field {
    grid-column: auto !important;
  }

  .summary-lines,
  .list-box,
  #historyBox,
  #financeBox,
  .application-window-v19 .summary-lines,
  .application-window-v19 .list-box {
    max-height: none !important;
    overflow: visible !important;
  }

  .timeline,
  .finance-list {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .finance-form {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    padding: 10px !important;
  }

  .finance-form .btn {
    grid-column: 1/-1 !important;
  }

  .finance-overview-row,
  .reports-overview-row {
    margin: 10px !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .finance-stat-cluster {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .report-stat-cluster {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .finance-stat-cluster .stat,
  .report-stat-cluster .stat {
    padding: 10px !important;
  }

  .finance-stat-cluster .stat b,
  .report-stat-cluster .stat b {
    font-size: 16px !important;
    word-break: break-word !important;
  }

  .finance-list-panel,
  .reports-body .reports-workspace {
    margin: 0 10px 10px !important;
  }

  .finance-search-row {
    grid-template-columns: 1fr !important;
  }

  .table-wrap.finance-table,
  .report-table-scroll,
  .log-table-wrap {
    overflow-x: auto !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    max-width: 100% !important;
  }

  .finance-table .table {
    min-width: 760px !important;
  }

  .reports-workspace .table {
    min-width: 620px !important;
  }

  .report-table-scroll .table[data-resizable-grid="report-operations"],
  .report-table-scroll .table[data-resizable-grid="report-statuses"],
  .report-table-scroll .table[data-resizable-grid="report-offices"] {
    min-width: 420px !important;
  }

  .resizable-table th,
  .resizable-table td {
    white-space: nowrap !important;
  }

  .reports-main-grid,
  .report-grid,
  .report-grid-bottom {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .report-table-scroll {
    max-height: 360px !important;
  }

  .status-row {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    padding: 10px !important;
  }

  .status-row-main,
  .users-list .status-row-main {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    grid-template-columns: none !important;
    gap: 8px !important;
    align-items: center !important;
  }

  .status-row-actions,
  .status-actions {
    justify-content: flex-start !important;
    gap: 8px !important;
  }

  .centered-editor-panel,
  .user-editor-panel,
  .database-tools-centered {
    position: static !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    width: calc(100% - 20px) !important;
    max-width: none !important;
    margin: 10px auto !important;
  }

  .permissions-grid,
  .entity-form-grid,
  .user-editor-panel .entity-form-grid {
    grid-template-columns: 1fr !important;
  }

  .database-actions-wrap {
    width: 100% !important;
  }

  .database-actions-row {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
  }

  .database-actions-row .btn,
  .database-actions-row form,
  .db-import-form button {
    width: 100% !important;
  }
}

@media(max-width:640px) {

  html,
  body {
    font-size: 12px !important;
  }

  .sidebar-head {
    height: 50px !important;
  }

  .main {
    min-height: calc(100vh - 50px) !important;
  }

  .topbar {
    top: 50px !important;
    align-items: stretch !important;
    flex-direction: column !important;
    padding: 8px 10px !important;
  }

  .top-actions {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: center !important;
  }

  .top-actions form {
    justify-content: flex-end !important;
  }

  .user-pill {
    max-width: none !important;
    width: 100% !important;
    justify-content: flex-start !important;
  }

  .page-title {
    font-size: 16px !important;
    line-height: 19px !important;
  }

  .sidebar.open .nav {
    grid-template-columns: 1fr !important;
  }

  .nav a {
    height: 36px !important;
  }

  .main>.panel:not(.reports-filter-panel),
  .application-create-window {
    margin: 8px !important;
  }

  .panel {
    padding: 8px !important;
    border-radius: 8px !important;
  }

  .filters.smart-filters,
  .filters,
  .finance-top-filters,
  .reports-overview-row .reports-filters {
    grid-template-columns: 1fr !important;
    gap: 7px !important;
  }

  .search-combo button {
    padding: 0 12px !important;
  }

  .application-row {
    grid-template-columns: 1fr 1fr !important;
    padding: 9px !important;
    gap: 8px !important;
  }

  .application-row>span:nth-child(2),
  .application-row>span:nth-child(4) {
    grid-column: 1/-1 !important;
  }

  .application-window,
  .application-window-v19 {
    padding: 8px !important;
    gap: 8px !important;
  }

  .fields-vehicle,
  .vehicle-grid-v38,
  .fields-3,
  .fields-2,
  .section-operation .fields-3,
  .operation-row,
  .client-grid-v17,
  .payment-grid-v38,
  .create-form-grid .fields-3,
  .finance-form {
    grid-template-columns: 1fr !important;
  }

  .vehicle-grid-v38 .vin-field,
  .payment-grid-v38 .payment-note-field,
  .payment-grid-v38 .paid-field {
    grid-column: auto !important;
  }

  .form-actions,
  .edit-actions-bottom {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
  }

  .form-actions .btn,
  .edit-actions-bottom .btn {
    width: 100% !important;
  }

  .finance-stat-cluster,
  .report-stat-cluster {
    grid-template-columns: 1fr 1fr !important;
  }

  .finance-stat-cluster .stat,
  .report-stat-cluster .stat {
    padding: 8px 9px !important;
  }

  .finance-stat-cluster .stat b,
  .report-stat-cluster .stat b {
    font-size: 15px !important;
  }

  .finance-table .table {
    min-width: 700px !important;
  }

  .reports-workspace .table {
    min-width: 560px !important;
  }

  .report-table-scroll .table[data-resizable-grid="report-operations"],
  .report-table-scroll .table[data-resizable-grid="report-statuses"],
  .report-table-scroll .table[data-resizable-grid="report-offices"] {
    min-width: 360px !important;
  }

  .database-actions-row {
    grid-template-columns: 1fr !important;
  }
}

@media(max-width:390px) {
  .application-row {
    grid-template-columns: 1fr !important;
  }

  .application-row>span {
    grid-column: auto !important;
  }

  .finance-stat-cluster,
  .report-stat-cluster {
    grid-template-columns: 1fr !important;
  }

  .top-actions {
    grid-template-columns: 1fr !important;
  }

  .top-actions form,
  .top-actions .btn {
    width: 100% !important;
  }
}

/* v50: document photo uploader and detail layout */
.btn-muted {
  background: #f8fafc;
  border-color: var(--line);
  color: #334155
}

.btn-muted:hover {
  background: #f1f5f9
}

.document-upload-label {
  display: block;
  margin-bottom: 6px
}

.document-uploader {
  width: 90%;
  margin: 0 auto;
  display: grid;
  gap: 8px
}

.document-file-input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  overflow: hidden !important;
  padding: 0 !important;
  border: 0 !important
}

.document-preview {
  width: 100%;
  min-height: 207px;
  border: 1px dashed var(--field);
  border-radius: 8px;
  background: #f8fafc;
  color: #64748b;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  overflow: hidden;
  position: relative;
  transition: border-color .15s, box-shadow .15s, background .15s
}

.document-preview:hover {
  border-color: var(--blue);
  box-shadow: 0 0 0 2px rgba(59, 130, 246, .10);
  background: #fff
}

.document-preview img {
  width: 100%;
  height: 100%;
  max-height: 324px;
  min-height: 207px;
  object-fit: contain;
  display: block;
  background: #fff
}

.document-preview-empty {
  font-weight: 800;
  font-size: 14px;
  color: #64748b
}

.document-preview-text {
  position: absolute;
  left: 10px;
  bottom: 10px;
  background: rgba(15, 23, 42, .72);
  color: #fff;
  border-radius: 6px;
  padding: 5px 9px;
  font-size: 12px;
  font-weight: 800;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity .15s, transform .15s
}

.document-preview:hover .document-preview-text {
  opacity: 1;
  transform: translateY(0)
}

.document-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px
}

.document-actions .btn {
  width: 100%
}

.document-file-name {
  min-height: 14px;
  color: var(--muted-2);
  font-size: 11px;
  line-height: 14px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

.photo-viewer-modal {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, .88);
  z-index: 1400;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px
}

.photo-viewer-modal[hidden] {
  display: none !important
}

.photo-viewer-inner {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center
}

.photo-viewer-inner img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 20px 90px rgba(0, 0, 0, .35)
}

.photo-viewer-close {
  position: absolute;
  right: 0;
  top: 0;
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 8px;
  background: rgba(255, 255, 255, .12);
  color: #fff;
  font-size: 28px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center
}

.photo-viewer-close:hover {
  background: rgba(255, 255, 255, .20)
}

@media (min-width:1101px) {
  .document-uploader {
    width: 85%
  }

  .application-window-v50 {
    grid-template-columns: 500px minmax(360px, .92fr) minmax(440px, 1.08fr);
    grid-template-rows: minmax(0, 1fr);
    height: calc(100vh - 52px);
    min-height: 0;
    overflow: hidden;
    background: #fff
  }

  .application-window-v50 .left-detail-column {
    grid-column: 1;
    grid-row: 1;
    height: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
    background: #fff;
    border-right: 1px solid var(--line);
    overflow: hidden
  }

  .application-window-v50 .middle-detail-column {
    grid-column: 2;
    grid-row: 1;
    height: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
    background: #fff;
    border-right: 1px solid var(--line);
    overflow: hidden
  }

  .application-window-v50 .edit-section {
    flex: 1 1 auto;
    max-height: none;
    height: 100%;
    min-height: 0;
    border-right: 0;
    border-bottom: 0
  }

  .application-window-v50 .finance-section {
    grid-column: auto;
    grid-row: auto;
    flex: 1 1 auto;
    min-height: 260px;
    height: auto;
    border-right: 0;
    border-bottom: 1px solid var(--line)
  }

  .application-window-v50 .summary-section {
    grid-column: auto;
    grid-row: auto;
    flex: 0 0 auto;
    min-height: 0;
    border-right: 0;
    border-bottom: 0
  }

  .application-window-v50 .history-section {
    grid-column: 3;
    grid-row: 1;
    height: 100%;
    border-right: 0;
    border-bottom: 0
  }

  .application-window-v50 .detail-form {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    padding: 10px 12px
  }

  .application-window-v50 .summary-lines {
    flex: 0 0 auto;
    overflow: visible;
    padding: 8px 10px
  }

  .application-window-v50 .summary-lines div {
    min-height: 25px;
    grid-template-columns: 112px minmax(0, 1fr)
  }

  .application-window-v50 .list-box {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden
  }

  .application-window-v50 .finance-list,
  .application-window-v50 .timeline {
    height: 100%;
    overflow: auto
  }
}

@media(max-width:1100px) {

  .application-window-v50 .left-detail-column,
  .application-window-v50 .middle-detail-column {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0
  }

  .document-preview {
    min-height: 198px
  }

  .document-preview img {
    min-height: 198px;
    max-height: 378px
  }
}

@media(max-width:640px) {
  .document-uploader {
    width: 100%
  }

  .document-preview {
    min-height: 171px
  }

  .document-preview img {
    min-height: 171px;
    max-height: 324px
  }

  .document-actions {
    grid-template-columns: 1fr
  }

  .photo-viewer-modal {
    padding: 10px
  }

  .photo-viewer-close {
    right: 2px;
    top: 2px
  }
}


/* v53: prevent applications filter row from overflowing desktop content width */
section[data-live-refresh="applications"]>.filters.smart-filters {
  width: 100% !important;
  max-width: 100% !important;
  grid-template-columns: minmax(210px, 1.25fr) minmax(130px, .7fr) repeat(5, minmax(110px, 1fr)) !important;
}

section[data-live-refresh="applications"]>.filters.smart-filters .app-search-main,
section[data-live-refresh="applications"]>.filters.smart-filters .app-search-id,
section[data-live-refresh="applications"]>.filters.smart-filters .multi-select {
  min-width: 0 !important;
  max-width: none !important;
}

section[data-live-refresh="applications"]>.filters.smart-filters .field,
section[data-live-refresh="applications"]>.filters.smart-filters .multi-select-btn {
  min-width: 0 !important;
}

section[data-live-refresh="applications"]>.filters.smart-filters [data-multi-label] {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  display: block !important;
}

@media(max-width:1250px) and (min-width:1101px) {
  section[data-live-refresh="applications"]>.filters.smart-filters {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* v54: restore tablet/mobile applications filters after v53 desktop fix */
@media(max-width:1100px) {
  section[data-live-refresh="applications"] {
    overflow: hidden !important;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters {
    width: 100% !important;
    max-width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    overflow: visible !important;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters .app-search-main {
    grid-column: 1/-1 !important;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters .app-search-id,
  section[data-live-refresh="applications"]>.filters.smart-filters .multi-select {
    grid-column: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters .search-combo {
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

@media(max-width:640px) {
  section[data-live-refresh="applications"]>.filters.smart-filters {
    grid-template-columns: 1fr !important;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters .app-search-main,
  section[data-live-refresh="applications"]>.filters.smart-filters .app-search-id,
  section[data-live-refresh="applications"]>.filters.smart-filters .multi-select {
    grid-column: 1/-1 !important;
  }
}


/* v55: move version from mobile header into opened burger menu */
.nav-version {
  display: none;
}

@media(max-width:1100px) {
  .sidebar-head .app-version {
    display: none !important;
  }

  .sidebar.open .nav-version {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    grid-column: 1/-1 !important;
    min-height: 30px !important;
    margin-top: 4px !important;
    padding: 6px 8px !important;
    border-top: 1px solid rgba(148, 163, 184, .14) !important;
    color: #64748b !important;
    font-size: 10px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    letter-spacing: .02em !important;
  }
}


/* v56: compact two-column application cards on phones */
@media(max-width:640px) {
  .application-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px 10px !important;
    padding: 9px !important;
  }

  .application-row>span:nth-child(2),
  .application-row>span:nth-child(4) {
    grid-column: auto !important;
  }

  .application-row>span {
    gap: 1px !important;
    line-height: 1.2 !important;
    word-break: break-word !important;
  }

  .application-row>span::before {
    font-size: 9.5px !important;
    line-height: 11px !important;
  }

  .application-row small {
    font-size: 11px !important;
    line-height: 13px !important;
    word-break: break-word !important;
  }

  .application-row .badge {
    font-size: 11px !important;
    line-height: 13px !important;
    padding: 2px 6px !important;
  }
}

@media(max-width:390px) {
  .application-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .application-row>span {
    grid-column: auto !important;
  }
}

@media(max-width:330px) {
  .application-row {
    grid-template-columns: 1fr !important;
  }
}

/* v57: finance/adaptive fixes, search icon buttons, return lock */
@media(min-width:1101px) {
  .layout {
    background: linear-gradient(to right, var(--sidebar) 0 180px, var(--bg) 180px) !important;
  }

  .sidebar {
    min-height: 100vh !important;
    height: auto !important;
  }
}

.search-combo button.search-icon-btn {
  width: 42px !important;
  min-width: 42px !important;
  padding: 0 !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

.search-combo button.search-icon-btn span {
  display: block;
  transform: translateY(-1px);
}

.finance-overview-row {
  grid-template-columns: minmax(390px, 560px) minmax(0, 1fr) !important;
  align-items: stretch !important;
  overflow: hidden !important;
}

.finance-top-filters {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(120px, 1fr)) !important;
  gap: 8px !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: visible !important;
}

.finance-top-filters .multi-select,
.finance-top-filters .filter-control {
  min-width: 0 !important;
  max-width: 100% !important;
}

.finance-top-filters .multi-select-btn,
.finance-top-filters .field {
  min-width: 0 !important;
  max-width: 100% !important;
}

.finance-top-filters [data-multi-label] {
  display: block !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

@media(max-width:1500px) and (min-width:1101px) {
  .finance-overview-row {
    grid-template-columns: 1fr !important;
  }

  .finance-top-filters {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media(max-width:1100px) {
  .finance-top-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media(max-width:640px) {
  .finance-top-filters {
    grid-template-columns: 1fr !important;
  }

  .search-combo button.search-icon-btn {
    width: 64px !important;
    min-width: 64px !important;
  }
}

.return-field span {
  color: #b45309 !important;
}

.application-returned .edit-section {
  border-color: #fed7aa !important;
  background: #fffaf5 !important;
}

.application-returned .finance-form {
  opacity: .55 !important;
  pointer-events: none !important;
}

.application-returned .return-locked-form input:not(.return-check-input):not([type="hidden"]),
.application-returned .return-locked-form select,
.application-returned .return-locked-form textarea,
.application-returned .document-preview,
.application-returned .document-actions button:not(.document-upload-btn) {
  filter: grayscale(.2);
  opacity: .72;
}

.application-returned .return-check-input {
  accent-color: #f97316;
}


/* v58: finance return accounting and stable finance filters */
.finance-overview-row {
  grid-template-columns: auto minmax(0, 1fr) !important;
  gap: 14px !important;
  overflow: visible !important;
}

.finance-stat-cluster {
  width: max-content !important;
  max-width: 100% !important;
}

.finance-top-filters {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(135px, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  justify-self: stretch !important;
  box-sizing: border-box !important;
}

.finance-top-filters .multi-select,
.finance-top-filters .filter-control,
.finance-top-filters .multi-select-btn,
.finance-top-filters .field {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.finance-top-filters .multi-menu {
  max-width: min(320px, calc(100vw - 32px)) !important;
}

@media(max-width:1500px) and (min-width:1101px) {
  .finance-overview-row {
    grid-template-columns: auto minmax(0, 1fr) !important;
  }

  .finance-top-filters {
    grid-template-columns: repeat(auto-fit, minmax(135px, 1fr)) !important;
  }
}

@media(max-width:1180px) {
  .finance-overview-row {
    grid-template-columns: 1fr !important;
  }

  .finance-stat-cluster {
    width: 100% !important;
  }
}

@media(max-width:640px) {
  .finance-stat-cluster {
    grid-template-columns: 1fr 1fr !important;
  }

  .finance-top-filters {
    grid-template-columns: 1fr !important;
  }
}

/* v60: finance filter placement, equal controls, controlled date range picker */
.finance-overview-row {
  display: grid !important;
  grid-template-columns: max-content max-content !important;
  justify-content: start !important;
  align-items: start !important;
  gap: 14px !important;
  overflow: visible !important;
}

.finance-stat-cluster {
  width: max-content !important;
  display: grid !important;
  grid-template-columns: repeat(3, 150px) !important;
  gap: 12px !important;
}

.finance-top-filters {
  display: grid !important;
  grid-template-columns: repeat(3, 160px) !important;
  gap: 8px !important;
  width: max-content !important;
  max-width: none !important;
  min-width: 0 !important;
  justify-self: start !important;
  align-self: start !important;
  overflow: visible !important;
  padding: 18px !important;
}

.finance-top-filters .multi-select,
.finance-top-filters .filter-control,
.finance-top-filters .date-range-filter,
.finance-top-filters .multi-select-btn,
.finance-top-filters .date-range-btn,
.finance-top-filters .field {
  width: 160px !important;
  min-width: 160px !important;
  max-width: 160px !important;
  box-sizing: border-box !important;
}

.finance-top-filters [data-multi-label],
.finance-top-filters [data-range-label] {
  display: block !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.date-range-filter {
  position: relative !important;
}

.date-range-popover {
  position: absolute !important;
  right: 0 !important;
  top: calc(100% + 8px) !important;
  z-index: 260 !important;
  width: min(720px, calc(100vw - 40px)) !important;
  background: #fff !important;
  border: 1px solid #dbe4f0 !important;
  border-radius: 14px !important;
  padding: 14px !important;
  box-shadow: 0 22px 70px rgba(15, 23, 42, .18) !important;
}

.range-quick-actions {
  display: flex !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  margin-bottom: 12px !important;
}

.range-quick-actions button,
.range-bottom-actions button {
  border: 1px solid #dbe4f0 !important;
  background: #f8fafc !important;
  color: #334155 !important;
  border-radius: 8px !important;
  height: 32px !important;
  padding: 0 12px !important;
  font-weight: 700 !important;
}

.range-calendars {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px !important;
}

.range-month-title {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 800 !important;
  font-size: 16px !important;
  margin-bottom: 10px !important;
  color: #111827 !important;
}

.range-grid {
  display: grid !important;
  grid-template-columns: repeat(7, 1fr) !important;
  gap: 3px !important;
}

.range-weekday {
  height: 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #7b8797 !important;
  font-weight: 700 !important;
}

.range-day {
  height: 36px !important;
  border: 0 !important;
  background: #fff !important;
  border-radius: 0 !important;
  color: #111827 !important;
  font-weight: 700 !important;
}

.range-day:hover {
  background: #eaf2ff !important;
}

.range-day.muted {
  color: #c0cad8 !important;
}

.range-day.in-range {
  background: #dbeafe !important;
  color: #0f172a !important;
}

.range-day.range-start,
.range-day.range-end {
  background: #1877f2 !important;
  color: #fff !important;
  border-radius: 10px !important;
}

.range-bottom-actions {
  display: flex !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  margin-top: 12px !important;
}

.range-reset-btn {
  background: #f1f5f9 !important;
  color: #475569 !important;
}

.range-cancel-btn {
  background: #fff1f2 !important;
  border-color: #fecdd3 !important;
  color: #e11d48 !important;
}

.range-ok-btn {
  background: #16a34a !important;
  border-color: #16a34a !important;
  color: #fff !important;
}

@media(max-width:1500px) and (min-width:1101px) {
  .finance-overview-row {
    grid-template-columns: max-content max-content !important;
  }

  .finance-top-filters {
    grid-template-columns: repeat(3, 160px) !important;
  }
}

@media(max-width:1280px) {
  .finance-overview-row {
    grid-template-columns: 1fr !important;
  }

  .finance-stat-cluster {
    width: 100% !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .finance-top-filters {
    width: 100% !important;
    grid-template-columns: repeat(3, minmax(0, 160px)) !important;
  }
}

@media(max-width:760px) {
  .finance-top-filters {
    grid-template-columns: 1fr !important;
  }

  .finance-top-filters .multi-select,
  .finance-top-filters .filter-control,
  .finance-top-filters .date-range-filter,
  .finance-top-filters .multi-select-btn,
  .finance-top-filters .date-range-btn,
  .finance-top-filters .field {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .range-calendars {
    grid-template-columns: 1fr !important;
  }

  .date-range-popover {
    left: 0 !important;
    right: auto !important;
    width: calc(100vw - 32px) !important;
  }
}


/* v61: compact finance/reports filters, shared period picker, application dates */
.application-table {
  --app-cols: 70px minmax(130px, 1fr) 90px minmax(120px, 1.05fr) 88px 105px 82px 100px 104px 108px !important;
}

.application-head,
.application-row {
  grid-template-columns: var(--app-cols) !important;
}

.finance-overview-row,
.reports-overview-row {
  display: grid !important;
  grid-template-columns: max-content minmax(0, 1fr) !important;
  justify-content: start !important;
  align-items: start !important;
  gap: 14px !important;
  overflow: visible !important;
}

.finance-stat-cluster {
  grid-template-columns: repeat(3, 132px) !important;
  gap: 10px !important;
  width: max-content !important;
}

.report-stat-cluster {
  grid-template-columns: repeat(4, 118px) !important;
  gap: 8px !important;
  width: max-content !important;
}

.finance-top-filters,
.reports-overview-row .reports-filters {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 126px)) !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  justify-content: start !important;
  align-content: start !important;
  padding: 14px !important;
  overflow: visible !important;
}

.finance-top-filters .multi-select,
.finance-top-filters .date-range-filter,
.finance-top-filters .filter-control,
.reports-overview-row .reports-filters .multi-select,
.reports-overview-row .reports-filters .date-range-filter,
.reports-overview-row .reports-filters .filter-control {
  width: 126px !important;
  min-width: 0 !important;
  max-width: 126px !important;
  box-sizing: border-box !important;
}

.finance-top-filters .multi-select-btn,
.finance-top-filters .date-range-btn,
.finance-top-filters .field,
.reports-overview-row .reports-filters .multi-select-btn,
.reports-overview-row .reports-filters .date-range-btn,
.reports-overview-row .reports-filters .field {
  width: 126px !important;
  min-width: 0 !important;
  max-width: 126px !important;
  box-sizing: border-box !important;
}

.finance-top-filters [data-multi-label],
.finance-top-filters [data-range-label],
.reports-overview-row .reports-filters [data-multi-label],
.reports-overview-row .reports-filters [data-range-label] {
  display: block !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.filters.smart-filters .date-range-filter {
  position: relative !important;
  min-width: 0 !important;
}

.compact-panel>.filters.smart-filters {
  grid-template-columns: 2fr 1fr repeat(6, minmax(0, 1fr)) !important;
}

.compact-panel>.filters.smart-filters .date-range-filter {
  min-width: 0 !important;
}

.compact-panel>.filters.smart-filters .date-range-btn {
  min-width: 0 !important;
  max-width: 100% !important;
}

@media(max-width:1500px) and (min-width:1101px) {

  .finance-overview-row,
  .reports-overview-row {
    grid-template-columns: 1fr !important;
  }

  .finance-stat-cluster,
  .report-stat-cluster {
    width: 100% !important;
  }

  .finance-stat-cluster {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .report-stat-cluster {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

  .finance-top-filters,
  .reports-overview-row .reports-filters {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    width: 100% !important;
  }

  .finance-top-filters .multi-select,
  .finance-top-filters .date-range-filter,
  .finance-top-filters .filter-control,
  .finance-top-filters .multi-select-btn,
  .finance-top-filters .date-range-btn,
  .finance-top-filters .field,
  .reports-overview-row .reports-filters .multi-select,
  .reports-overview-row .reports-filters .date-range-filter,
  .reports-overview-row .reports-filters .filter-control,
  .reports-overview-row .reports-filters .multi-select-btn,
  .reports-overview-row .reports-filters .date-range-btn,
  .reports-overview-row .reports-filters .field {
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media(max-width:1100px) {
  .compact-panel>.filters.smart-filters {
    grid-template-columns: 1fr 1fr !important;
  }

  .finance-top-filters,
  .reports-overview-row .reports-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
  }

  .finance-top-filters .multi-select,
  .finance-top-filters .date-range-filter,
  .finance-top-filters .filter-control,
  .finance-top-filters .multi-select-btn,
  .finance-top-filters .date-range-btn,
  .finance-top-filters .field,
  .reports-overview-row .reports-filters .multi-select,
  .reports-overview-row .reports-filters .date-range-filter,
  .reports-overview-row .reports-filters .filter-control,
  .reports-overview-row .reports-filters .multi-select-btn,
  .reports-overview-row .reports-filters .date-range-btn,
  .reports-overview-row .reports-filters .field {
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media(max-width:760px) {

  .finance-overview-row,
  .reports-overview-row {
    grid-template-columns: 1fr !important;
  }

  .finance-stat-cluster,
  .report-stat-cluster {
    grid-template-columns: 1fr 1fr !important;
    width: 100% !important;
  }

  .finance-top-filters,
  .reports-overview-row .reports-filters,
  .compact-panel>.filters.smart-filters {
    grid-template-columns: 1fr !important;
  }

  .application-row {
    grid-template-columns: 1fr 1fr !important;
  }

  .application-row>span:nth-child(2),
  .application-row>span:nth-child(4) {
    grid-column: auto !important;
  }
}

@media(max-width:330px) {
  .application-row {
    grid-template-columns: 1fr !important;
  }
}


/* v62: desktop filter geometry and centered period calendar */
@media (min-width: 1101px) {
  .finance-overview-row {
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr) !important;
    gap: 14px !important;
    align-items: start !important;
  }

  .finance-stat-cluster {
    display: grid !important;
    grid-template-columns: repeat(3, 124px) !important;
    gap: 10px !important;
    width: max-content !important;
  }

  .finance-stat-cluster .stat {
    min-height: 62px !important;
    padding: 14px 16px !important;
  }

  .finance-top-filters {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    justify-content: stretch !important;
    align-items: center !important;
    padding: 14px !important;
  }

  .finance-top-filters .multi-select,
  .finance-top-filters .date-range-filter,
  .finance-top-filters .filter-control,
  .finance-top-filters .multi-select-btn,
  .finance-top-filters .date-range-btn,
  .finance-top-filters .field {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .reports-overview-row {
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr) !important;
    gap: 14px !important;
    align-items: stretch !important;
  }

  .report-stat-cluster {
    display: grid !important;
    grid-template-columns: repeat(2, 112px) !important;
    grid-auto-rows: 60px !important;
    gap: 8px !important;
    width: max-content !important;
  }

  .report-stat-cluster .stat {
    min-height: 60px !important;
    height: 60px !important;
    padding: 10px 14px !important;
  }

  .report-stat-cluster .stat span {
    font-size: 12px !important;
    line-height: 14px !important;
  }

  .report-stat-cluster .stat b {
    font-size: 19px !important;
    line-height: 22px !important;
  }

  .reports-overview-row .reports-filters {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows: 42px !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 128px !important;
    align-content: center !important;
    padding: 13px !important;
  }

  .reports-overview-row .reports-filters .multi-select,
  .reports-overview-row .reports-filters .date-range-filter,
  .reports-overview-row .reports-filters .filter-control,
  .reports-overview-row .reports-filters .multi-select-btn,
  .reports-overview-row .reports-filters .date-range-btn,
  .reports-overview-row .reports-filters .field {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .compact-panel>.filters.smart-filters {
    display: grid !important;
    grid-template-columns: minmax(210px, 1.35fr) minmax(105px, .7fr) repeat(6, minmax(96px, 1fr)) !important;
    gap: 8px !important;
    align-items: center !important;
  }

  .compact-panel>.filters.smart-filters .multi-select,
  .compact-panel>.filters.smart-filters .date-range-filter,
  .compact-panel>.filters.smart-filters .filter-control,
  .compact-panel>.filters.smart-filters .search-combo,
  .compact-panel>.filters.smart-filters .multi-select-btn,
  .compact-panel>.filters.smart-filters .date-range-btn,
  .compact-panel>.filters.smart-filters .field {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

.date-range-filter {
  position: static !important;
}

.date-range-popover {
  position: fixed !important;
  left: 50% !important;
  top: 50% !important;
  right: auto !important;
  transform: translate(-50%, -50%) !important;
  width: min(720px, calc(100vw - 40px)) !important;
  max-height: calc(100vh - 40px) !important;
  overflow: auto !important;
  z-index: 1000 !important;
}

@media(max-width:760px) {
  .date-range-popover {
    width: calc(100vw - 24px) !important;
    top: 16px !important;
    left: 12px !important;
    right: auto !important;
    transform: none !important;
  }
}


/* v63: exact compact top filter layout for finance/reports/applications */
@media (min-width: 1101px) {
  .finance-overview-row {
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr) !important;
    gap: 14px !important;
    align-items: stretch !important;
  }

  .finance-stat-cluster {
    display: grid !important;
    grid-template-columns: repeat(3, 150px) !important;
    gap: 10px !important;
    width: max-content !important;
  }

  .finance-stat-cluster .stat {
    height: 86px !important;
    min-height: 86px !important;
    padding: 18px 18px !important;
  }

  .finance-stat-cluster .stat span {
    font-size: 14px !important;
    line-height: 17px !important;
  }

  .finance-stat-cluster .stat b {
    font-size: 22px !important;
    line-height: 25px !important;
    margin-top: 3px !important;
  }

  .finance-top-filters {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(118px, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    height: 86px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 24px 18px !important;
    align-items: center !important;
    align-content: center !important;
    justify-content: stretch !important;
    overflow: hidden !important;
  }

  .finance-top-filters .multi-select,
  .finance-top-filters .date-range-filter,
  .finance-top-filters .filter-control,
  .finance-top-filters .multi-select-btn,
  .finance-top-filters .date-range-btn,
  .finance-top-filters .field {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 42px !important;
    min-height: 42px !important;
    box-sizing: border-box !important;
  }

  .reports-overview-row {
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr) !important;
    gap: 14px !important;
    align-items: stretch !important;
  }

  .report-stat-cluster {
    display: grid !important;
    grid-template-columns: repeat(2, 118px) !important;
    grid-auto-rows: 58px !important;
    gap: 10px !important;
    width: max-content !important;
  }

  .report-stat-cluster .stat {
    height: 58px !important;
    min-height: 58px !important;
    padding: 9px 14px !important;
  }

  .report-stat-cluster .stat span {
    font-size: 12px !important;
    line-height: 14px !important;
  }

  .report-stat-cluster .stat b {
    font-size: 18px !important;
    line-height: 21px !important;
    margin-top: 2px !important;
  }

  .reports-overview-row .reports-filters {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(118px, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    height: 126px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 42px 18px !important;
    align-items: center !important;
    align-content: center !important;
    justify-content: stretch !important;
    overflow: hidden !important;
  }

  .reports-overview-row .reports-filters .multi-select,
  .reports-overview-row .reports-filters .date-range-filter,
  .reports-overview-row .reports-filters .filter-control,
  .reports-overview-row .reports-filters .multi-select-btn,
  .reports-overview-row .reports-filters .date-range-btn,
  .reports-overview-row .reports-filters .field {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    /* height: 42px !important; */
    /* min-height: 42px !important; */
    box-sizing: border-box !important;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters {
    display: grid !important;
    grid-template-columns: minmax(190px, 1.22fr) minmax(96px, .62fr) repeat(6, minmax(104px, 1fr)) !important;
    gap: 8px !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters .app-search-main,
  section[data-live-refresh="applications"]>.filters.smart-filters .app-search-id,
  section[data-live-refresh="applications"]>.filters.smart-filters .multi-select,
  section[data-live-refresh="applications"]>.filters.smart-filters .date-range-filter {
    grid-column: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters .field,
  section[data-live-refresh="applications"]>.filters.smart-filters .multi-select-btn,
  section[data-live-refresh="applications"]>.filters.smart-filters .date-range-btn,
  section[data-live-refresh="applications"]>.filters.smart-filters .search-combo input,
  section[data-live-refresh="applications"]>.filters.smart-filters .search-combo button {
    height: 34px !important;
    min-height: 34px !important;
  }
}

.date-range-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
}

.date-range-btn:before {
  content: "";
  width: 15px;
  height: 15px;
  flex: 0 0 auto;
  border: 1.7px solid #64748b;
  border-radius: 3px;
  box-shadow: inset 0 4px 0 0 rgba(100, 116, 139, .16);
}

.date-range-btn:after {
  content: "";
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  border-right: 2px solid #8a97a8;
  border-bottom: 2px solid #8a97a8;
  transform: rotate(45deg) translateY(-2px);
}

.date-range-btn [data-range-label] {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
}

@media(max-width:1500px) and (min-width:1101px) {
  .finance-stat-cluster {
    grid-template-columns: repeat(3, 136px) !important;
  }

  .finance-top-filters {
    grid-template-columns: repeat(6, minmax(106px, 1fr)) !important;
    gap: 8px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .reports-overview-row .reports-filters {
    grid-template-columns: repeat(6, minmax(100px, 1fr)) !important;
    gap: 8px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .report-stat-cluster {
    grid-template-columns: repeat(2, 108px) !important;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters {
    grid-template-columns: minmax(170px, 1.15fr) minmax(88px, .58fr) repeat(6, minmax(92px, 1fr)) !important;
    gap: 7px !important;
  }
}

@media(max-width:1100px) {

  .finance-overview-row,
  .reports-overview-row {
    grid-template-columns: 1fr !important;
  }

  .finance-stat-cluster {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    width: 100% !important;
  }

  .report-stat-cluster {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
  }

  .finance-top-filters,
  .reports-overview-row .reports-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    height: auto !important;
    padding: 12px !important;
  }
}

@media(max-width:760px) {

  .finance-stat-cluster,
  .report-stat-cluster,
  .finance-top-filters,
  .reports-overview-row .reports-filters {
    grid-template-columns: 1fr !important;
  }
}

/* v64: one exact size for all selectable filters */
:root {
  --filter-choice-width: 100%;
  --filter-choice-height: 34px;
  --filter-choice-gap: 10px;
}

/* Selection controls: same width and height on every page */
.filters .multi-select,
.filters .date-range-filter,
.finance-top-filters .multi-select,
.finance-top-filters .date-range-filter,
.reports-filters .multi-select,
.reports-filters .date-range-filter,
.smart-filters .multi-select,
.smart-filters .date-range-filter,
.filter-control.choice-filter,
.filter-control.date-range-filter {
  /* width: var(--filter-choice-width) !important; */
  /* min-width: var(--filter-choice-width) !important; */
  max-width: var(--filter-choice-width) !important;
}

.filters .multi-select-btn,
.filters .date-range-btn,
.filters select.field,
.finance-top-filters .multi-select-btn,
.finance-top-filters .date-range-btn,
.finance-top-filters select.field,
.reports-filters .multi-select-btn,
.reports-filters .date-range-btn,
.reports-filters select.field,
.smart-filters .multi-select-btn,
.smart-filters .date-range-btn,
.smart-filters select.field {
  /* width: var(--filter-choice-width) !important;
  min-width: var(--filter-choice-width) !important; */
  max-width: var(--filter-choice-width) !important;
  height: var(--filter-choice-height) !important;
  min-height: var(--filter-choice-height) !important;
  box-sizing: border-box !important;
}

/* Search controls use the same height, but not the same width. */
.filters .search-combo input,
.filters .search-combo button,
.smart-filters .search-combo input,
.smart-filters .search-combo button {
  height: var(--filter-choice-height) !important;
  min-height: var(--filter-choice-height) !important;
}

@media (min-width:1101px) {

  .finance-top-filters,
  .reports-overview-row .reports-filters {
    display: grid !important;
    grid-template-columns: repeat(6, var(--filter-choice-width)) !important;
    gap: var(--filter-choice-gap) !important;
    justify-content: start !important;
    align-items: center !important;
    align-content: center !important;
    padding: 22px 18px !important;
    overflow: hidden !important;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters {
    display: flex !important;
    /* grid-template-columns: minmax(220px, 1fr) 96px repeat(6, var(--filter-choice-width)) !important; */
    gap: var(--filter-choice-gap) !important;
    justify-content: start !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters .app-search-main,
  section[data-live-refresh="applications"]>.filters.smart-filters .app-search-id {
    grid-column: auto !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters .app-search-id {
    /* width: 96px !important; */
  }
}

@media(max-width:1400px) and (min-width:1101px) {
  :root {
    --filter-choice-width: 120px;
    --filter-choice-gap: 8px;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters {
    grid-template-columns: minmax(185px, 1fr) 88px repeat(6, var(--filter-choice-width)) !important;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters .app-search-id {
    /* width: 88px !important; */
  }
}

@media(max-width:1180px) and (min-width:1101px) {
  :root {
    --filter-choice-width: 112px;
    --filter-choice-gap: 7px;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters {
    grid-template-columns: minmax(165px, 1fr) 82px repeat(6, var(--filter-choice-width)) !important;
  }

  section[data-live-refresh="applications"]>.filters.smart-filters .app-search-id {
    /* width: 82px !important; */
  }
}

@media(max-width:1100px) {

  .filters .multi-select,
  .filters .date-range-filter,
  .finance-top-filters .multi-select,
  .finance-top-filters .date-range-filter,
  .reports-filters .multi-select,
  .reports-filters .date-range-filter,
  .smart-filters .multi-select,
  .smart-filters .date-range-filter,
  .filters .multi-select-btn,
  .filters .date-range-btn,
  .filters select.field,
  .finance-top-filters .multi-select-btn,
  .finance-top-filters .date-range-btn,
  .finance-top-filters select.field,
  .reports-filters .multi-select-btn,
  .reports-filters .date-range-btn,
  .reports-filters select.field,
  .smart-filters .multi-select-btn,
  .smart-filters .date-range-btn,
  .smart-filters select.field {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

/* v65: reports top block layout like approved reference */
@media (min-width: 1101px) {
  .reports-overview-row {
    display: flex !important;
    grid-template-columns: 1fr !important;
    gap: 36px !important;
    /* justify-content: space-between !important; */
    align-items: center !important;
    margin: 16px !important;
    padding: 14px 16px !important;
    background: #fff !important;
    border: 1px solid var(--line) !important;
    border-radius: 8px !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04) !important;
    overflow: visible !important;
  }

  .report-stat-cluster {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 56px !important;
    width: 100% !important;
    max-width: 780px !important;
  }

  .report-stat-cluster .stat,
  .report-stat-cluster .compact-stat {
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .report-stat-cluster .stat span,
  .report-stat-cluster .compact-stat span {
    display: block !important;
    font-size: 11px !important;
    line-height: 16px !important;
    font-weight: 700 !important;
    color: #64748b !important;
    /* margin-bottom: 6px !important; */
  }

  .report-stat-cluster .stat b,
  .report-stat-cluster .compact-stat b {
    display: block !important;
    font-size: 16px !important;
    line-height: 26px !important;
    font-weight: 900 !important;
    color: #111827 !important;
    margin: 0 !important;
  }

  .reports-overview-row .reports-filters {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
    width: 100% !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
    align-items: center !important;
    justify-content: stretch !important;
  }

  .reports-overview-row .reports-filters .multi-select,
  .reports-overview-row .reports-filters .date-range-filter,
  .reports-overview-row .reports-filters .filter-control {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  .reports-overview-row .reports-filters .multi-select-btn,
  .reports-overview-row .reports-filters .date-range-btn,
  .reports-overview-row .reports-filters select.field {
    width: 100% !important;
    min-width: 0 !important;
    /* max-width: none !important; */
    /* height: 44px !important; */
    /* min-height: 44px !important; */
    /* padding: 0 14px !important; */
    border-radius: 4px !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 1100px) {
  .reports-overview-row {
    margin: 12px !important;
    padding: 12px !important;
    background: #fff !important;
    border: 1px solid var(--line) !important;
    border-radius: 8px !important;
  }

  .report-stat-cluster {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .reports-overview-row .reports-filters {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }
}


/* v66: keep the user filter layout change scoped to the applications page only.
   Do not apply `.filters` globally, because it breaks finance/reports filter grids. */
@media (min-width: 1101px) {
  section[data-live-refresh="applications"] > .filters.smart-filters {
    display: flex !important;
    max-width: 1187px !important;
    width: 100% !important;
  }
}


/* v67: user design stabilization after local CSS edits.
   Fix dropdown layers, clipped application filters, column resizers, and finance/report popovers. */
@media (min-width: 1101px) {
  .finance-overview-row,
  .reports-overview-row,
  section[data-live-refresh="applications"] {
    position: relative !important;
    overflow: visible !important;
  }

  .finance-overview-row,
  .reports-overview-row {
    z-index: 120 !important;
  }

  .finance-list-panel,
  .reports-workspace,
  .application-table {
    position: relative !important;
    z-index: 1 !important;
  }

  .finance-top-filters,
  .reports-overview-row .reports-filters,
  section[data-live-refresh="applications"] > .filters.smart-filters {
    position: relative !important;
    overflow: visible !important;
    z-index: 130 !important;
  }

  .finance-top-filters .multi-select,
  .reports-overview-row .reports-filters .multi-select,
  section[data-live-refresh="applications"] > .filters.smart-filters .multi-select,
  .finance-top-filters .date-range-filter,
  .reports-overview-row .reports-filters .date-range-filter,
  section[data-live-refresh="applications"] > .filters.smart-filters .date-range-filter {
    position: relative !important;
    z-index: 140 !important;
  }

  .finance-top-filters .multi-select.open,
  .reports-overview-row .reports-filters .multi-select.open,
  section[data-live-refresh="applications"] > .filters.smart-filters .multi-select.open,
  .finance-top-filters .date-range-filter.open,
  .reports-overview-row .reports-filters .date-range-filter.open,
  section[data-live-refresh="applications"] > .filters.smart-filters .date-range-filter.open {
    z-index: 2600 !important;
  }
}

.multi-menu {
  z-index: 2700 !important;
}

.date-range-popover {
  z-index: 2800 !important;
}

/* Keep application header resize handles clickable after overflow-heavy layout edits. */
.application-head,
.application-head .resizable-head-cell {
  overflow: visible !important;
}

.application-head .resizable-head-cell {
  position: relative !important;
  z-index: 20 !important;
}

.application-head .col-resizer {
  display: block !important;
  pointer-events: auto !important;
  z-index: 300 !important;
}

.application-table.resizing,
.application-table.resizing * {
  cursor: col-resize !important;
  user-select: none !important;
}


/* v68: robust application column resize hit area after local filter layout edits.
   Keep dropdowns above the table, but make the header separators actually clickable. */
.application-table[data-resizable-grid="applications"] {
  position: relative !important;
  z-index: 50 !important;
  overflow: visible !important;
}

.application-table[data-resizable-grid="applications"] .application-head {
  position: relative !important;
  overflow: visible !important;
  z-index: 60 !important;
}

.application-table[data-resizable-grid="applications"] .application-head .resizable-head-cell {
  position: relative !important;
  overflow: visible !important;
  z-index: auto !important;
}

.application-table[data-resizable-grid="applications"] .application-head .sortable {
  position: relative !important;
  z-index: 1 !important;
}

.application-table[data-resizable-grid="applications"] .application-head .col-resizer {
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  right: -12px !important;
  width: 24px !important;
  height: 100% !important;
  min-width: 24px !important;
  padding: 0 !important;
  margin: 0 !important;
  cursor: col-resize !important;
  pointer-events: auto !important;
  touch-action: none !important;
  z-index: 5000 !important;
  background: transparent !important;
}

.application-table[data-resizable-grid="applications"] .application-head .col-resizer:before {
  content: "" !important;
  position: absolute !important;
  left: 11px !important;
  top: 4px !important;
  bottom: 4px !important;
  width: 2px !important;
  height: auto !important;
  border-radius: 2px !important;
  background: rgba(255, 255, 255, .86) !important;
}

.application-table[data-resizable-grid="applications"] .application-head .col-resizer:hover:before,
.application-table[data-resizable-grid="applications"].resizing .application-head .col-resizer:before {
  background: #fff !important;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .32) !important;
}

.application-table[data-resizable-grid="applications"].resizing,
.application-table[data-resizable-grid="applications"].resizing * {
  cursor: col-resize !important;
  user-select: none !important;
}

.finance-top-filters .multi-menu,
.reports-overview-row .reports-filters .multi-menu,
section[data-live-refresh="applications"] > .filters.smart-filters .multi-menu {
  z-index: 6000 !important;
}


/* v69: app.js now writes --app-cols with !important priority, so column dragging overrides the older CSS default. */

/* v70: office-bound users view-only notice */
.view-only-notice{
  margin: 10px 12px 0 !important;
  padding: 8px 10px !important;
  border: 1px solid #fed7aa !important;
  background: #fff7ed !important;
  color: #9a3412 !important;
  border-radius: 6px !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

/* v70: show hard office binding help in user editor */
.visible-help{
  display:block!important;
}

/* v73: debt mode in application list */
.application-row.application-debt {
  background: linear-gradient(90deg, rgba(251, 146, 60, .14), rgba(255, 255, 255, .96)) !important;
  border-color: rgba(249, 115, 22, .45) !important;
  box-shadow: inset 3px 0 0 rgba(249, 115, 22, .72), 0 1px 2px rgba(15, 23, 42, .04) !important;
}

.application-row.application-debt:hover {
  border-color: rgba(234, 88, 12, .72) !important;
  background: linear-gradient(90deg, rgba(251, 146, 60, .18), rgba(255, 255, 255, .98)) !important;
}

.application-row.application-debt .cell-money b,
.application-row.application-debt .debt-text {
  color: #c2410c !important;
  font-weight: 800 !important;
}

.debt-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: max-content !important;
  max-width: 100% !important;
  margin-top: 0 !important;
  margin-left: 5px !important;
  padding: 2px 7px !important;
  border-radius: 4px !important;
  background: #ffedd5 !important;
  color: #c2410c !important;
  border: 1px solid #fed7aa !important;
  font-size: 10px !important;
  line-height: 12px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .02em !important;
}

@media(max-width:1100px) {
  .application-row.application-debt {
    box-shadow: inset 3px 0 0 rgba(249, 115, 22, .72), 0 1px 2px rgba(15, 23, 42, .04) !important;
  }
}

/* v75: annual archive view mode */
.archive-mode-banner {
  margin: 12px 16px 0 !important;
  padding: 10px 12px !important;
  background: #fff7ed !important;
  border: 1px solid #fdba74 !important;
  border-radius: 6px !important;
  color: #9a3412 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04) !important;
}
.archive-mode-banner b { display:block !important; font-size:13px !important; line-height:16px !important; }
.archive-mode-banner span { display:block !important; font-size:12px !important; color:#c2410c !important; margin-top:2px !important; }
.archive-db-section {
  border-top: 1px solid var(--line) !important;
  margin-top: 16px !important;
  padding-top: 14px !important;
  text-align: left !important;
}
.archive-db-section h3 {
  margin: 0 0 6px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
}
.archive-db-list { display: grid !important; gap: 8px !important; margin-top: 10px !important; }
.archive-db-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
  align-items: center !important;
  border: 1px solid var(--line) !important;
  border-radius: 6px !important;
  background: #fff !important;
  padding: 10px !important;
}
.archive-db-row b { display:block !important; font-size:14px !important; color:#0f172a !important; }
.archive-db-row span { display:block !important; font-size:12px !important; color:#475569 !important; overflow:hidden !important; text-overflow:ellipsis !important; white-space:nowrap !important; }
.archive-db-row small { display:block !important; font-size:11px !important; color:#94a3b8 !important; margin-top:2px !important; }
.archive-mode-banner + .messages { top: 110px !important; }
@media(max-width:700px){
  .archive-mode-banner { margin: 10px !important; flex-direction: column !important; align-items: stretch !important; }
  .archive-db-row { grid-template-columns: 1fr !important; }
}

/* v76: debts in finance/reports, archive selector, archive banner layering */
.stat-debt span,
.stat-debt b {
  color: #c2410c !important;
}

.stat-debt {
  position: relative !important;
}

@media (min-width: 1101px) {
  .finance-stat-cluster {
    grid-template-columns: repeat(4, 132px) !important;
    gap: 10px !important;
  }

  .report-stat-cluster {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    max-width: 980px !important;
    gap: 42px !important;
  }

  .reports-overview-row .reports-filters {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1100px) {
  .finance-stat-cluster {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .report-stat-cluster {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .finance-stat-cluster,
  .report-stat-cluster {
    grid-template-columns: 1fr !important;
  }
}

.archive-mode-banner {
  position: relative !important;
  z-index: 900 !important;
  flex: 0 0 auto !important;
}

.archive-main .centered-editor-panel.database-tools-centered {
  top: 154px !important;
}

.archive-db-form {
  display: grid !important;
  gap: 8px !important;
}

.archive-db-select-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
  align-items: center !important;
}

.archive-db-select-row .field {
  height: 38px !important;
  min-height: 38px !important;
}

.archive-db-select-row .btn {
  height: 38px !important;
  min-height: 38px !important;
  white-space: nowrap !important;
}

@media(max-width:700px){
  .archive-main .centered-editor-panel.database-tools-centered {
    top: auto !important;
  }

  .archive-db-select-row {
    grid-template-columns: 1fr !important;
  }
}


/* v77: equal filter widths, profit/debt colors, full-width application filters, visible horizontal scroll */
.stat-profit span,
.stat-profit b,
.finance-overview-row .stat-profit span,
.finance-overview-row .stat-profit b,
.reports-overview-row .stat-profit span,
.reports-overview-row .stat-profit b {
  color: #15803d !important;
}

.stat-debt span,
.stat-debt b,
.finance-overview-row .stat-debt span,
.finance-overview-row .stat-debt b,
.reports-overview-row .stat-debt span,
.reports-overview-row .stat-debt b,
.report-stat-cluster .stat-debt span,
.report-stat-cluster .stat-debt b,
.report-stat-cluster .compact-stat.stat-debt span,
.report-stat-cluster .compact-stat.stat-debt b {
  color: #c2410c !important;
}

@media (min-width: 1101px) {
  .finance-stat-cluster {
    grid-template-columns: repeat(4, 118px) !important;
    gap: 10px !important;
    width: max-content !important;
  }

  .finance-stat-cluster .stat {
    min-width: 0 !important;
    padding: 12px 13px !important;
  }

  .finance-stat-cluster .stat span,
  .report-stat-cluster .stat span,
  .report-stat-cluster .compact-stat span {
    white-space: nowrap !important;
  }

  .finance-top-filters {
    display: grid !important;
    grid-template-columns: repeat(6, 126px) !important;
    gap: 8px !important;
    width: max-content !important;
    max-width: 100% !important;
    min-width: 0 !important;
    justify-content: start !important;
    align-items: center !important;
    overflow: visible !important;
  }

  .finance-top-filters .multi-select,
  .finance-top-filters .date-range-filter,
  .finance-top-filters .filter-control,
  .finance-top-filters .multi-select-btn,
  .finance-top-filters .date-range-btn,
  .finance-top-filters .field {
    width: 126px !important;
    min-width: 126px !important;
    max-width: 126px !important;
    box-sizing: border-box !important;
  }

  .finance-top-filters [data-multi-label],
  .finance-top-filters [data-range-label] {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  section[data-live-refresh="applications"] > .filters.smart-filters {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
    gap: 8px !important;
    align-items: center !important;
  }

  section[data-live-refresh="applications"] > .filters.smart-filters .app-search-main,
  section[data-live-refresh="applications"] > .filters.smart-filters .app-search-id,
  section[data-live-refresh="applications"] > .filters.smart-filters .multi-select,
  section[data-live-refresh="applications"] > .filters.smart-filters .date-range-filter,
  section[data-live-refresh="applications"] > .filters.smart-filters .search-combo,
  section[data-live-refresh="applications"] > .filters.smart-filters .multi-select-btn,
  section[data-live-refresh="applications"] > .filters.smart-filters .date-range-btn,
  section[data-live-refresh="applications"] > .filters.smart-filters .field {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

@media (min-width: 1441px) {
  section[data-live-refresh="applications"] > .filters.smart-filters {
    grid-template-columns: minmax(260px, 1.4fr) minmax(118px, .7fr) repeat(6, minmax(126px, 1fr)) !important;
  }
}

@media (max-width: 1440px) and (min-width: 1101px) {
  section[data-live-refresh="applications"] > .filters.smart-filters {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1500px) and (min-width: 1101px) {
  .finance-overview-row {
    grid-template-columns: 1fr !important;
  }

  .finance-stat-cluster {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    width: 100% !important;
  }

  .finance-top-filters {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    width: 100% !important;
  }

  .finance-top-filters .multi-select,
  .finance-top-filters .date-range-filter,
  .finance-top-filters .filter-control,
  .finance-top-filters .multi-select-btn,
  .finance-top-filters .date-range-btn,
  .finance-top-filters .field {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

@media (max-width: 1440px) and (min-width: 1101px) {
  .application-table[data-resizable-grid="applications"] {
    overflow-x: auto !important;
    overflow-y: visible !important;
    max-width: 100% !important;
    padding-bottom: 10px !important;
    scrollbar-width: auto !important;
    scrollbar-color: #64748b #e2e8f0 !important;
  }

  .application-table[data-resizable-grid="applications"]::-webkit-scrollbar {
    height: 12px !important;
  }

  .application-table[data-resizable-grid="applications"]::-webkit-scrollbar-thumb {
    background: #64748b !important;
    border-radius: 10px !important;
  }

  .application-table[data-resizable-grid="applications"]::-webkit-scrollbar-track {
    background: #e2e8f0 !important;
    border-radius: 10px !important;
  }

  .application-table[data-resizable-grid="applications"] .application-head,
  .application-table[data-resizable-grid="applications"] .application-row,
  .application-table[data-resizable-grid="applications"] [data-list-body] {
    min-width: 1120px !important;
  }
}

@media (max-width: 760px) {
  .finance-top-filters .multi-select,
  .finance-top-filters .date-range-filter,
  .finance-top-filters .filter-control,
  .finance-top-filters .multi-select-btn,
  .finance-top-filters .date-range-btn,
  .finance-top-filters .field {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}


/* v78: tighten top stats, equal right-aligned finance/report filters, visible application horizontal scroll */
@media (min-width: 1101px) {
  .finance-overview-row {
    grid-template-columns: max-content minmax(0, 1fr) !important;
    gap: 22px !important;
  }

  .finance-stat-cluster,
  .report-stat-cluster {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    width: max-content !important;
    max-width: 100% !important;
    gap: 56px !important;
  }

  .finance-stat-cluster .stat,
  .report-stat-cluster .stat,
  .report-stat-cluster .compact-stat {
    width: auto !important;
    min-width: max-content !important;
    max-width: none !important;
    padding: 0 !important;
  }

  .finance-stat-cluster .stat span,
  .finance-stat-cluster .stat b,
  .report-stat-cluster .stat span,
  .report-stat-cluster .stat b,
  .report-stat-cluster .compact-stat span,
  .report-stat-cluster .compact-stat b {
    white-space: nowrap !important;
  }

  .finance-stat-cluster .stat b,
  .report-stat-cluster .stat b,
  .report-stat-cluster .compact-stat b {
    line-height: 26px !important;
  }

  .finance-top-filters {
    display: grid !important;
    grid-template-columns: repeat(6, 126px) !important;
    gap: 16px !important;
    width: max-content !important;
    max-width: 100% !important;
    justify-content: end !important;
    justify-self: end !important;
    align-items: center !important;
    margin-left: auto !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .finance-top-filters .multi-select,
  .finance-top-filters .date-range-filter,
  .finance-top-filters .filter-control,
  .finance-top-filters .multi-select-btn,
  .finance-top-filters .date-range-btn,
  .finance-top-filters .field {
    width: 126px !important;
    min-width: 126px !important;
    max-width: 126px !important;
    box-sizing: border-box !important;
  }

  .reports-overview-row .reports-filters {
    display: grid !important;
    grid-template-columns: repeat(6, 142px) !important;
    gap: 16px !important;
    width: max-content !important;
    max-width: 100% !important;
    justify-content: start !important;
    align-items: center !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
  }

  .reports-overview-row .reports-filters .multi-select,
  .reports-overview-row .reports-filters .date-range-filter,
  .reports-overview-row .reports-filters .filter-control,
  .reports-overview-row .reports-filters .multi-select-btn,
  .reports-overview-row .reports-filters .date-range-btn,
  .reports-overview-row .reports-filters .field {
    /* width: 142px !important; */
    /* min-width: 142px !important; */
    /* max-width: 142px !important; */
    box-sizing: border-box !important;
  }

  .finance-top-filters [data-multi-label],
  .finance-top-filters [data-range-label],
  .reports-overview-row .reports-filters [data-multi-label],
  .reports-overview-row .reports-filters [data-range-label] {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

.stat-profit span,
.stat-profit b,
.finance-overview-row .stat-profit span,
.finance-overview-row .stat-profit b,
.reports-overview-row .stat-profit span,
.reports-overview-row .stat-profit b,
.report-stat-cluster .stat-profit span,
.report-stat-cluster .stat-profit b,
.report-stat-cluster .compact-stat.stat-profit span,
.report-stat-cluster .compact-stat.stat-profit b {
  color: #15803d !important;
}

.stat-debt span,
.stat-debt b,
.finance-overview-row .stat-debt span,
.finance-overview-row .stat-debt b,
.reports-overview-row .stat-debt span,
.reports-overview-row .stat-debt b,
.report-stat-cluster .stat-debt span,
.report-stat-cluster .stat-debt b,
.report-stat-cluster .compact-stat.stat-debt span,
.report-stat-cluster .compact-stat.stat-debt b {
  color: #c2410c !important;
}

@media (max-width: 1440px) and (min-width: 1101px) {
  section[data-live-refresh="applications"] > .filters.smart-filters {
    width: 100% !important;
    max-width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .application-table[data-resizable-grid="applications"] {
    display: block !important;
    overflow-x: scroll !important;
    overflow-y: visible !important;
    max-width: 100% !important;
    padding-bottom: 14px !important;
    scrollbar-width: auto !important;
    scrollbar-color: #475569 #dbe3ee !important;
  }

  .application-table[data-resizable-grid="applications"]::-webkit-scrollbar {
    height: 14px !important;
    display: block !important;
  }

  .application-table[data-resizable-grid="applications"]::-webkit-scrollbar-thumb {
    background: #475569 !important;
    border-radius: 999px !important;
    border: 3px solid #dbe3ee !important;
  }

  .application-table[data-resizable-grid="applications"]::-webkit-scrollbar-track {
    background: #dbe3ee !important;
    border-radius: 999px !important;
  }

  .application-table[data-resizable-grid="applications"] .application-head,
  .application-table[data-resizable-grid="applications"] .application-row,
  .application-table[data-resizable-grid="applications"] [data-list-body] {
    min-width: 1180px !important;
  }
}

@media (max-width: 1280px) and (min-width: 1101px) {
  .finance-overview-row {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .finance-stat-cluster,
  .report-stat-cluster {
    gap: 34px !important;
  }

  .finance-top-filters,
  .reports-overview-row .reports-filters {
    justify-self: start !important;
    margin-left: 0 !important;
  }
}


/* v79: stop finance stats/filter overlap; compact stats and stable equal filters */
@media (min-width: 1101px) {
  .finance-overview-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 24px !important;
    overflow: visible !important;
  }

  .finance-stat-cluster,
  .report-stat-cluster {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    gap: 20px !important;
    overflow: visible !important;
  }

  .finance-stat-cluster .stat,
  .report-stat-cluster .stat,
  .report-stat-cluster .compact-stat {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: max-content !important;
    max-width: none !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .finance-stat-cluster .stat span,
  .finance-stat-cluster .stat b,
  .report-stat-cluster .stat span,
  .report-stat-cluster .stat b,
  .report-stat-cluster .compact-stat span,
  .report-stat-cluster .compact-stat b {
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }

  .finance-top-filters {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    gap: 16px !important;
    margin: 0 !important;
    margin-left: auto !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .finance-top-filters > .multi-select,
  .finance-top-filters > .date-range-filter,
  .finance-top-filters > .filter-control {
    flex: 0 0 126px !important;
    width: 126px !important;
    min-width: 126px !important;
    max-width: 126px !important;
  }

  .finance-top-filters .multi-select-btn,
  .finance-top-filters .date-range-btn,
  .finance-top-filters .field {
    width: 126px !important;
    min-width: 126px !important;
    max-width: 126px !important;
    box-sizing: border-box !important;
  }

  .reports-overview-row .reports-filters {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .reports-overview-row .reports-filters > .multi-select,
  .reports-overview-row .reports-filters > .date-range-filter,
  .reports-overview-row .reports-filters > .filter-control {
    /* flex: 0 0 126px !important; */
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 34px !important;
    min-height: 34px !important;
  }

  .reports-overview-row .reports-filters .multi-select-btn,
  .reports-overview-row .reports-filters .date-range-btn,
  .reports-overview-row .reports-filters .field {
    /* width: 126px !important; */
    /* min-width: 126px !important; */
    /* max-width: 126px !important; */
    box-sizing: border-box !important;
  }

  .finance-top-filters [data-multi-label],
  .finance-top-filters [data-range-label],
  .reports-overview-row .reports-filters [data-multi-label],
  .reports-overview-row .reports-filters [data-range-label] {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

@media (max-width: 1320px) and (min-width: 1101px) {
  .finance-overview-row {
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 12px !important;
  }

  .finance-top-filters {
    justify-content: flex-start !important;
    margin-left: 0 !important;
    flex-wrap: wrap !important;
  }

  .finance-stat-cluster,
  .report-stat-cluster {
    gap: 30px !important;
    flex-wrap: wrap !important;
  }

  .reports-overview-row .reports-filters {
    flex-wrap: wrap !important;
  }
}

@media (max-width: 760px) {
  .finance-top-filters > .multi-select,
  .finance-top-filters > .date-range-filter,
  .finance-top-filters > .filter-control,
  .reports-overview-row .reports-filters > .multi-select,
  .reports-overview-row .reports-filters > .date-range-filter,
  .reports-overview-row .reports-filters > .filter-control {
    flex: 1 1 100% !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

/* v80: finance top row copied from approved Chrome layout */
@media (min-width: 1101px) {
  .finance-overview-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 72px !important;
    overflow: visible !important;
    padding: 0 16px !important;
  }

  .finance-stat-cluster {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    gap: 36px !important;
    overflow: visible !important;
  }

  .finance-stat-cluster .stat {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 66px !important;
    max-width: none !important;
    padding: 0 !important;
    overflow: visible !important;
    display: flex !important;
    flex-direction: column !important;
    /* align-items: center !important; */
    justify-content: center !important;
  }

  .finance-stat-cluster .stat span,
  .finance-stat-cluster .stat b {
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }

  .finance-top-filters {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 16px !important;
    margin: 0 !important;
    margin-left: auto !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .finance-top-filters > .multi-select,
  .finance-top-filters > .date-range-filter,
  .finance-top-filters > .filter-control {
    flex: 1 1 0 !important;
    width: 100% !important;
    min-width: 126px !important;
    max-width: 100% !important;
  }

  .finance-top-filters .multi-select-btn,
  .finance-top-filters .date-range-btn,
  .finance-top-filters .period-trigger,
  .finance-top-filters .field {
    width: 100% !important;
    min-width: 126px !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 1500px) and (min-width: 1101px) {
  .finance-overview-row {
    gap: 36px !important;
  }

  .finance-stat-cluster {
    gap: 28px !important;
  }
}

@media (max-width: 1320px) and (min-width: 1101px) {
  .finance-overview-row {
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 12px !important;
  }

  .finance-top-filters {
    justify-content: flex-start !important;
    margin-left: 0 !important;
    flex-wrap: wrap !important;
  }

  .finance-top-filters > .multi-select,
  .finance-top-filters > .date-range-filter,
  .finance-top-filters > .filter-control {
    flex: 1 1 calc(33.333% - 12px) !important;
    min-width: 126px !important;
  }

  .finance-stat-cluster {
    gap: 30px !important;
    flex-wrap: wrap !important;
  }
}



/* v81: finance medium desktop layout, 1101px-1620px */
@media (max-width: 1620px) and (min-width: 1101px) {
  .finance-overview-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 36px !important;
    overflow: visible !important;
    padding: 0 16px !important;
  }

  .finance-stat-cluster {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    grid-auto-rows: max-content !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    gap: 0 36px !important;
    overflow: visible !important;
  }

  .finance-stat-cluster .stat {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 66px !important;
    max-width: none !important;
    padding: 0 !important;
    overflow: visible !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .finance-stat-cluster .stat span,
  .finance-stat-cluster .stat b {
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }

  .finance-top-filters {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(126px, 1fr)) !important;
    align-items: center !important;
    justify-content: stretch !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 16px !important;
    margin: 0 !important;
    margin-left: auto !important;
    padding: 0 !important;
    overflow: visible !important;
    flex-wrap: nowrap !important;
  }

  .finance-top-filters > .multi-select,
  .finance-top-filters > .date-range-filter,
  .finance-top-filters > .filter-control {
    flex: 1 1 0 !important;
    width: 100% !important;
    min-width: 126px !important;
    max-width: 100% !important;
  }

  .finance-top-filters .multi-select-btn,
  .finance-top-filters .date-range-btn,
  .finance-top-filters .period-trigger,
  .finance-top-filters .field {
    width: 100% !important;
    min-width: 126px !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .finance-top-filters [data-multi-label],
  .finance-top-filters [data-range-label] {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

/* v82: finance medium desktop layout exactly like approved Chrome view (1101px-1620px) */
@media (min-width: 1101px) and (max-width: 1620px) {
  .finance-overview-row {
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr) !important;
    align-items: center !important;
    justify-content: stretch !important;
    gap: 24px !important;
    padding: 0 14px !important;
    overflow: visible !important;
  }

  .finance-stat-cluster {
    display: grid !important;
    grid-template-columns: repeat(2, 92px) !important;
    grid-template-rows: repeat(2, 42px) !important;
    grid-auto-flow: row !important;
    align-items: center !important;
    justify-content: start !important;
    gap: 12px 18px !important;
    width: max-content !important;
    min-width: 0 !important;
    max-width: none !important;
    flex: 0 0 auto !important;
    overflow: visible !important;
  }

  .finance-stat-cluster .stat {
    width: 92px !important;
    /* min-width: 92px !important; */
    max-width: 92px !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: visible !important;
  }

  .finance-stat-cluster .stat span {
    display: block !important;
    font-size: 12px !important;
    line-height: 14px !important;
    margin: 0 0 2px !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    text-align: center !important;
  }

  .finance-stat-cluster .stat b {
    display: block !important;
    font-size: 19px !important;
    line-height: 22px !important;
    margin: 0 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    text-align: center !important;
  }

  .finance-top-filters {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows: 34px !important;
    align-items: center !important;
    align-content: center !important;
    justify-content: stretch !important;
    gap: 10px 14px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
    flex: none !important;
    overflow: visible !important;
  }

  .finance-top-filters > .multi-select,
  .finance-top-filters > .date-range-filter,
  .finance-top-filters > .filter-control {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 34px !important;
    min-height: 34px !important;
    flex: none !important;
    box-sizing: border-box !important;
  }

  .finance-top-filters .multi-select-btn,
  .finance-top-filters .date-range-btn,
  .finance-top-filters .period-trigger,
  .finance-top-filters .field {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 34px !important;
    min-height: 34px !important;
    box-sizing: border-box !important;
  }

  .finance-top-filters [data-multi-label],
  .finance-top-filters [data-range-label] {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}


/* v83: finance medium layout must trigger by content width, not full viewport.
   Sidebar is 205px, so 1620px content width means about 1825px viewport. */
@media (min-width: 1101px) and (max-width: 1825px) {
  .finance-overview-row {
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr) !important;
    align-items: center !important;
    justify-content: stretch !important;
    gap: 24px !important;
    padding: 0 14px !important;
    overflow: visible !important;
  }

  .finance-stat-cluster {
    display: grid !important;
    grid-template-columns: repeat(2, 92px) !important;
    grid-template-rows: repeat(2, 42px) !important;
    grid-auto-flow: row !important;
    align-items: center !important;
    justify-content: start !important;
    gap: 12px 18px !important;
    width: max-content !important;
    min-width: 0 !important;
    max-width: none !important;
    flex: 0 0 auto !important;
    overflow: visible !important;
  }

  .finance-stat-cluster .stat {
    width: 92px !important;
    /* min-width: 92px !important; */
    max-width: 92px !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: visible !important;
  }

  .finance-stat-cluster .stat span {
    display: block !important;
    font-size: 12px !important;
    line-height: 14px !important;
    margin: 0 0 2px !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    text-align: center !important;
  }

  .finance-stat-cluster .stat b {
    display: block !important;
    font-size: 19px !important;
    line-height: 22px !important;
    margin: 0 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    text-align: center !important;
  }

  .finance-top-filters {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows: 34px !important;
    align-items: center !important;
    align-content: center !important;
    justify-content: stretch !important;
    gap: 10px 14px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    margin-left: 0 !important;
    padding: 0 !important;
    flex: none !important;
    flex-wrap: unset !important;
    overflow: visible !important;
  }

  .finance-top-filters > .multi-select,
  .finance-top-filters > .date-range-filter,
  .finance-top-filters > .filter-control {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 34px !important;
    min-height: 34px !important;
    flex: none !important;
    box-sizing: border-box !important;
  }

  .finance-top-filters .multi-select-btn,
  .finance-top-filters .date-range-btn,
  .finance-top-filters .period-trigger,
  .finance-top-filters .field {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 34px !important;
    min-height: 34px !important;
    box-sizing: border-box !important;
  }

  .finance-top-filters [data-multi-label],
  .finance-top-filters [data-range-label] {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}


/* v84: finance top row copied from approved Chrome layout, forced over old .filters.smart-filters rules */
@media (min-width: 1101px) {
  .finance-overview-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 72px !important;
    overflow: visible !important;
    padding: 0 16px !important;
  }

  .finance-stat-cluster {
    display: grid !important;
    grid-template-columns: repeat(2, max-content) !important;
    grid-auto-rows: auto !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    gap: 0 36px !important;
    overflow: visible !important;
  }

  .finance-stat-cluster .stat {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 66px !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    /* align-items: center !important; */
    justify-content: center !important;
  }

  .finance-stat-cluster .stat span,
  .finance-stat-cluster .stat b {
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    /* text-align: center !important; */
  }

  .finance-overview-row > .filters.smart-filters.finance-top-filters,
  .finance-overview-row > form.filters.smart-filters.finance-top-filters {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(126px, 1fr)) !important;
    grid-auto-flow: row !important;
    grid-auto-rows: 34px !important;
    align-items: center !important;
    align-content: center !important;
    justify-content: stretch !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 16px !important;
    margin: 0 !important;
    margin-left: auto !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .finance-overview-row > .filters.smart-filters.finance-top-filters > .multi-select,
  .finance-overview-row > .filters.smart-filters.finance-top-filters > .date-range-filter,
  .finance-overview-row > .filters.smart-filters.finance-top-filters > .filter-control {
    flex: none !important;
    width: 100% !important;
    min-width: 126px !important;
    max-width: 100% !important;
    height: 34px !important;
    min-height: 34px !important;
    box-sizing: border-box !important;
  }

  .finance-overview-row > .filters.smart-filters.finance-top-filters .multi-select-btn,
  .finance-overview-row > .filters.smart-filters.finance-top-filters .date-range-btn,
  .finance-overview-row > .filters.smart-filters.finance-top-filters .period-trigger,
  .finance-overview-row > .filters.smart-filters.finance-top-filters .field {
    width: 100% !important;
    min-width: 126px !important;
    max-width: 100% !important;
    height: 34px !important;
    min-height: 34px !important;
    box-sizing: border-box !important;
  }

  .finance-overview-row > .filters.smart-filters.finance-top-filters [data-multi-label],
  .finance-overview-row > .filters.smart-filters.finance-top-filters [data-range-label] {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

@media (min-width: 1101px) and (max-width: 1500px) {
  .finance-overview-row {
    gap: 36px !important;
  }

  .finance-stat-cluster {
    gap: 0 28px !important;
  }
}

@media (min-width: 1101px) and (max-width: 1320px) {
  .finance-overview-row {
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 12px !important;
  }

  .finance-overview-row > .filters.smart-filters.finance-top-filters {
    justify-content: stretch !important;
    margin-left: 0 !important;
    grid-template-columns: repeat(3, minmax(126px, 1fr)) !important;
  }

  .finance-stat-cluster {
    gap: 0 30px !important;
  }
}

/* v88: finance top block final verified layout. Do not replace full CSS; override only finance overview. */
@media (min-width: 1621px) {
  .finance-overview-row {
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 56px !important;
    padding: 14px 16px !important;
    overflow: visible !important;
  }

  .finance-stat-cluster {
    display: grid !important;
    grid-template-columns: repeat(4, max-content) !important;
    grid-template-rows: auto !important;
    grid-auto-rows: auto !important;
    align-items: center !important;
    justify-content: start !important;
    gap: 36px !important;
    width: max-content !important;
    min-width: 0 !important;
    max-width: none !important;
    overflow: visible !important;
  }

  .finance-stat-cluster .stat {
    display: flex !important;
    flex-direction: column !important;
    /* align-items: center !important; */
    justify-content: center !important;
    width: auto !important;
    min-width: 70px !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .finance-overview-row > .filters.smart-filters.finance-top-filters,
  .finance-overview-row > form.filters.smart-filters.finance-top-filters {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    grid-auto-rows: 34px !important;
    align-items: center !important;
    align-content: center !important;
    justify-content: stretch !important;
    gap: 16px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    flex: none !important;
  }
}

@media (min-width: 1101px) and (max-width: 1620px) {
  .finance-overview-row {
    display: grid !important;
    grid-template-columns: 205px minmax(0, 1fr) !important;
    align-items: center !important;
    justify-content: stretch !important;
    gap: 26px !important;
    padding: 14px 16px !important;
    min-height: 94px !important;
    overflow: visible !important;
  }

  .finance-stat-cluster {
    display: grid !important;
    grid-template-columns: repeat(2, 90px) !important;
    grid-template-rows: repeat(2, 34px) !important;
    grid-auto-flow: row !important;
    align-items: center !important;
    justify-content: start !important;
    gap: 10px 14px !important;
    width: 194px !important;
    min-width: 194px !important;
    max-width: 194px !important;
    overflow: visible !important;
    flex: none !important;
  }

  .finance-stat-cluster .stat {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 90px !important;
    min-width: 90px !important;
    max-width: 90px !important;
    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .finance-stat-cluster .stat span,
  .finance-stat-cluster .stat b {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }

  .finance-stat-cluster .stat span {
    font-size: 12px !important;
    line-height: 13px !important;
    margin-bottom: 2px !important;
  }

  .finance-stat-cluster .stat b {
    font-size: 18px !important;
    line-height: 19px !important;
  }

  .finance-overview-row > .filters.smart-filters.finance-top-filters,
  .finance-overview-row > form.filters.smart-filters.finance-top-filters {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    grid-auto-rows: 34px !important;
    align-items: center !important;
    align-content: center !important;
    justify-content: stretch !important;
    gap: 10px 14px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    flex: none !important;
    flex-wrap: unset !important;
  }
}

@media (min-width: 1101px) {
  .finance-overview-row > .filters.smart-filters.finance-top-filters > .multi-select,
  .finance-overview-row > .filters.smart-filters.finance-top-filters > .date-range-filter,
  .finance-overview-row > .filters.smart-filters.finance-top-filters > .filter-control,
  .finance-overview-row > form.filters.smart-filters.finance-top-filters > .multi-select,
  .finance-overview-row > form.filters.smart-filters.finance-top-filters > .date-range-filter,
  .finance-overview-row > form.filters.smart-filters.finance-top-filters > .filter-control {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 34px !important;
    min-height: 34px !important;
    flex: none !important;
    box-sizing: border-box !important;
  }

  .finance-overview-row > .filters.smart-filters.finance-top-filters .multi-select-btn,
  .finance-overview-row > .filters.smart-filters.finance-top-filters .date-range-btn,
  .finance-overview-row > .filters.smart-filters.finance-top-filters .period-trigger,
  .finance-overview-row > .filters.smart-filters.finance-top-filters .field,
  .finance-overview-row > form.filters.smart-filters.finance-top-filters .multi-select-btn,
  .finance-overview-row > form.filters.smart-filters.finance-top-filters .date-range-btn,
  .finance-overview-row > form.filters.smart-filters.finance-top-filters .period-trigger,
  .finance-overview-row > form.filters.smart-filters.finance-top-filters .field {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 34px !important;
    min-height: 34px !important;
    box-sizing: border-box !important;
  }

  .finance-overview-row > .filters.smart-filters.finance-top-filters [data-multi-label],
  .finance-overview-row > .filters.smart-filters.finance-top-filters [data-range-label],
  .finance-overview-row > form.filters.smart-filters.finance-top-filters [data-multi-label],
  .finance-overview-row > form.filters.smart-filters.finance-top-filters [data-range-label] {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}


/* v93: finance top filters true vertical centering, not pixel offset */
@media (min-width: 1101px) {
  .finance-overview-row {
    align-items: center !important;
  }

  .finance-overview-row > .filters.smart-filters.finance-top-filters,
  .finance-overview-row > form.filters.smart-filters.finance-top-filters {
    position: static !important;
    top: auto !important;
    transform: none !important;
    align-self: center !important;
    align-content: center !important;
    align-items: center !important;
    height: auto !important;
    min-height: 34px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}

/* v95: returned applications in list and debt/return quick filters */
.application-row.application-returned-list {
  background: linear-gradient(90deg, rgba(217, 70, 239, .12), rgba(255, 255, 255, .96)) !important;
  border-color: rgba(192, 38, 211, .38) !important;
  box-shadow: inset 3px 0 0 rgba(192, 38, 211, .62), 0 1px 2px rgba(15, 23, 42, .04) !important;
}

.application-row.application-returned-list:hover {
  border-color: rgba(168, 85, 247, .66) !important;
  background: linear-gradient(90deg, rgba(217, 70, 239, .16), rgba(255, 255, 255, .98)) !important;
}

.application-row.application-returned-list .cell-money b {
  color: #a21caf !important;
  font-weight: 800 !important;
}

.return-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: max-content !important;
  max-width: 100% !important;
  margin-top: 0 !important;
  margin-left: 5px !important;
  padding: 2px 7px !important;
  border-radius: 4px !important;
  background: #fae8ff !important;
  color: #a21caf !important;
  border: 1px solid #f5d0fe !important;
  font-size: 10px !important;
  line-height: 12px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .02em !important;
}

.application-flag-filters {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  align-items: stretch !important;
  min-width: 190px !important;
}

.application-flag-check {
  height: 34px !important;
  min-height: 34px !important;
  margin: 0 !important;
  padding: 0 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  /* border: 1px solid var(--field) !important; */
  /* border-radius: 4px !important; */
  /* background: #fff !important; */
  color: #374151 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 14px !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}

.application-flag-check input[type="checkbox"] {
  width: 16px !important;
  min-width: 16px !important;
  max-width: 16px !important;
  height: 16px !important;
  min-height: 16px !important;
  max-height: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  accent-color: #3b82f6 !important;
  flex: 0 0 16px !important;
}

.application-flag-check span {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.application-flag-check:has(input:checked) {
  border-color: #3b82f6 !important;
  background: #eff6ff !important;
  color: #1d4ed8 !important;
}

@media (min-width: 1101px) {
  section[data-live-refresh="applications"] > .filters.smart-filters {
    max-width: 1390px !important;
  }
}

@media (max-width: 1440px) and (min-width: 1101px) {
  .application-flag-filters {
    min-width: 0 !important;
  }
}

@media(max-width:1100px) {
  .application-row.application-returned-list {
    box-shadow: inset 3px 0 0 rgba(192, 38, 211, .62), 0 1px 2px rgba(15, 23, 42, .04) !important;
  }

  .application-flag-filters {
    grid-column: 1/-1 !important;
    min-width: 0 !important;
  }
}

@media(max-width:640px) {
  .application-flag-filters {
    grid-template-columns: 1fr !important;
  }
}


/* v98: restore reports from v96 and apply finance-only compact desktop stats */
@media (min-width: 1621px) {
  .finance-overview-row {
    grid-template-columns: max-content minmax(0, 1fr) !important;
    gap: 34px !important;
    padding: 14px 16px !important;
    /* min-height: 82px !important; */
    align-items: center !important;
  }

  .finance-stat-cluster {
    grid-template-columns: repeat(4, max-content) !important;
    gap: 24px !important;
    width: max-content !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  .finance-stat-cluster .stat {
    min-width: 70px !important;
    width: auto !important;
    /* height: 38px !important; */
    /* min-height: 38px !important; */
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .finance-stat-cluster .stat span {
    font-size: 11px !important;
    line-height: 16px !important;
    /* margin: 0 0 2px !important; */
    /* text-align: center !important; */
    white-space: nowrap !important;
    font-weight: 700 !important;
  }

  .finance-stat-cluster .stat b {
    font-size: 16px !important;
    line-height: 20px !important;
    margin: 0 !important;
    /* text-align: center !important; */
    white-space: nowrap !important;
    font-weight: 900 !important;
    line-height: 26px !important;
  }

  .finance-overview-row > .filters.smart-filters.finance-top-filters,
  .finance-overview-row > form.filters.smart-filters.finance-top-filters {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 16px !important;
    align-items: center !important;
    align-content: center !important;
  }
}


/* v101: move debt/return quick filters to applications header and submit instantly */
.head-left-actions .application-flag-filters-head {
  display: inline-grid !important;
  grid-template-columns: repeat(2, max-content) !important;
  gap: 8px !important;
  align-items: center !important;
  min-width: 0 !important;
  margin-left: 0 !important;
}

.head-left-actions .application-flag-filters-head .application-flag-check {
  /* min-width: 92px !important; */
}

@media(max-width:1100px) {
  .head-left-actions {
    flex-wrap: wrap !important;
  }
  .head-left-actions .application-flag-filters-head {
    grid-template-columns: repeat(2, max-content) !important;
    grid-column: auto !important;
  }
}

@media(max-width:640px) {
  .head-left-actions .application-flag-filters-head {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
  }
}


/* v102: clean debt/return header checks and reliable instant submit */
.application-flag-check {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 4px !important;
}
.application-flag-check:has(input:checked) {
  border-color: transparent !important;
  background: transparent !important;
  color: #1d4ed8 !important;
}
.head-left-actions .application-flag-filters-head .application-flag-check {
  min-width: 0 !important;
}

/* v103: debt/return quick filters in finance and reports filter rows */
.head-left-actions {
  gap: 24px !important;
}
.finance-report-flag-filters {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  min-width: max-content !important;
  height: 34px !important;
  min-height: 34px !important;
  align-self: center !important;
}
.finance-report-flag-filters .application-flag-check {
  height: 34px !important;
  min-height: 34px !important;
  padding-left: 0 !important;
  padding-right: 4px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.finance-report-flag-filters .application-flag-check:has(input:checked) {
  border-color: transparent !important;
  background: transparent !important;
  color: #1d4ed8 !important;
}
@media (min-width: 1621px) {
  .finance-overview-row > .filters.smart-filters.finance-top-filters,
  .finance-overview-row > form.filters.smart-filters.finance-top-filters {
    grid-template-columns: repeat(6, minmax(0, 1fr)) max-content !important;
  }
  .reports-overview-row .reports-filters {
    grid-template-columns: repeat(6, minmax(0, 1fr)) max-content !important;
  }
}
@media(max-width:1320px) {
  .finance-report-flag-filters {
    min-width: 0 !important;
  }
}
@media(max-width:640px) {
  .finance-report-flag-filters {
    width: 100% !important;
    justify-content: flex-start !important;
  }
}

/* v104: inline finance operation creation on finance page */
.finance-search-actions-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 0 12px !important;
  min-width: 0 !important;
}
.finance-search-actions-row .finance-search-row {
  flex: 0 0 360px !important;
  width: 360px !important;
  margin: 0 !important;
}
.finance-inline-divider {
  flex: 0 0 1px !important;
  width: 1px !important;
  height: 34px !important;
  background: #cbd5e1 !important;
  opacity: .75 !important;
}
.finance-inline-add-form {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  margin: 0 !important;
}
.finance-inline-add-form .field,
.finance-inline-add-form .btn {
  height: 34px !important;
  min-height: 34px !important;
}
.finance-inline-amount {
  flex: 0 0 120px !important;
  width: 120px !important;
}
.finance-inline-note {
  flex: 1 1 280px !important;
  min-width: 180px !important;
}
.finance-inline-type {
  flex: 0 0 130px !important;
  width: 130px !important;
}
.finance-inline-submit {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}
@media(max-width:1100px) {
  .finance-search-actions-row {
    flex-wrap: wrap !important;
  }
  .finance-search-actions-row .finance-search-row {
    flex: 1 1 100% !important;
    width: 100% !important;
  }
  .finance-inline-divider {
    display: none !important;
  }
  .finance-inline-add-form {
    flex: 1 1 100% !important;
    flex-wrap: wrap !important;
  }
}
@media(max-width:640px) {
  .finance-inline-add-form {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
  .finance-inline-amount,
  .finance-inline-note,
  .finance-inline-type,
  .finance-inline-submit {
    width: 100% !important;
    min-width: 0 !important;
    flex-basis: auto !important;
  }
}


/* v105: standalone finance operation fields */
.finance-inline-add-form {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.finance-inline-amount { flex: 0 0 92px !important; }
.finance-inline-note { flex: 1 1 180px !important; min-width: 150px !important; }
.finance-inline-operation { flex: 0 1 150px !important; min-width: 130px !important; }
.finance-inline-payment { flex: 0 1 150px !important; min-width: 130px !important; }
.finance-inline-office { flex: 0 1 135px !important; min-width: 120px !important; }
.finance-inline-type { flex: 0 0 112px !important; }
.finance-inline-submit { flex: 0 0 auto !important; white-space: nowrap !important; }
@media(max-width:1320px) {
  .finance-search-actions-row { flex-wrap: wrap !important; }
  .finance-inline-divider { display: none !important; }
  .finance-inline-add-form { flex: 1 1 100% !important; flex-wrap: wrap !important; }
}
@media(max-width:700px) {
  .finance-inline-add-form { display: grid !important; grid-template-columns: 1fr !important; }
  .finance-inline-amount,
  .finance-inline-note,
  .finance-inline-operation,
  .finance-inline-payment,
  .finance-inline-office,
  .finance-inline-type,
  .finance-inline-submit { width: 100% !important; min-width: 0 !important; flex-basis: auto !important; }
}

/* v106: compact finance inline add row from browser adjustment */
.finance-search-actions-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 0 12px !important;
  min-width: 0 !important;
  width: 100% !important;
}
.finance-search-actions-row .finance-search-row {
  flex: 0 0 232px !important;
  width: 232px !important;
  min-width: 232px !important;
  margin: 0 !important;
}
.finance-search-actions-row .finance-search-control {
  width: 100% !important;
}
.finance-inline-divider {
  flex: 0 0 1px !important;
  width: 1px !important;
  height: 34px !important;
  background: #cbd5e1 !important;
  opacity: .78 !important;
}
.finance-inline-add-form {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  margin: 0 !important;
}
.finance-inline-add-form .field,
.finance-inline-add-form .btn {
  height: 34px !important;
  min-height: 34px !important;
}
.finance-inline-amount {
  flex: 0 0 120px !important;
  width: 120px !important;
  min-width: 120px !important;
}
.finance-inline-note {
  flex: 1 1 520px !important;
  min-width: 240px !important;
}
.finance-inline-operation {
  flex: 0 0 150px !important;
  width: 150px !important;
  min-width: 150px !important;
}
.finance-inline-payment {
  flex: 0 0 150px !important;
  width: 150px !important;
  min-width: 150px !important;
}
.finance-inline-office {
  flex: 0 0 135px !important;
  width: 135px !important;
  min-width: 135px !important;
}
.finance-inline-type {
  flex: 0 0 112px !important;
  width: 112px !important;
  min-width: 112px !important;
}
.finance-inline-submit {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  padding-left: 14px !important;
  padding-right: 14px !important;
}
@media(max-width:1500px) {
  .finance-search-actions-row { flex-wrap: wrap !important; }
  .finance-search-actions-row .finance-search-row {
    flex: 0 0 260px !important;
    width: 260px !important;
    min-width: 260px !important;
  }
  .finance-inline-divider { display: none !important; }
  .finance-inline-add-form { flex: 1 1 100% !important; flex-wrap: wrap !important; }
}
@media(max-width:700px) {
  .finance-search-actions-row .finance-search-row {
    flex: 1 1 100% !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  .finance-inline-add-form { display: grid !important; grid-template-columns: 1fr !important; }
  .finance-inline-amount,
  .finance-inline-note,
  .finance-inline-operation,
  .finance-inline-payment,
  .finance-inline-office,
  .finance-inline-type,
  .finance-inline-submit {
    width: 100% !important;
    min-width: 0 !important;
    flex-basis: auto !important;
  }
}

/* v107: database backup email settings */
.backup-email-section {
  border-top: 1px solid var(--line);
  padding-top: 12px;
  margin-top: 4px;
  display: grid;
  gap: 8px;
  text-align: left;
}

.backup-email-section h3,
.archive-db-section h3 {
  margin: 0;
  font-size: 13px;
  font-weight: 800;
  color: #0f172a;
}

.backup-email-status {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #64748b;
  font-size: 12px;
}

.backup-email-status b {
  color: #0f172a;
  font-weight: 800;
}

.backup-email-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 132px;
  gap: 8px;
  margin: 0;
}

.backup-email-form .btn,
.backup-email-form .field {
  height: 34px !important;
  min-height: 34px !important;
}

.backup-email-warning {
  padding: 8px 10px;
  border: 1px solid #fed7aa;
  background: #fffbeb;
  color: #92400e;
  border-radius: 4px;
  font-size: 12px;
  line-height: 1.35;
}

.backup-email-hint {
  color: #64748b;
  font-size: 12px;
  line-height: 1.35;
}

@media(max-width:700px) {
  .backup-email-form {
    grid-template-columns: 1fr;
  }
}

/* v108: database email backup SMTP/IMAP settings stored in DB */
.mail-settings-section {
  display: grid !important;
  gap: 10px !important;
  text-align: left !important;
}

.mail-settings-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px 10px !important;
}

.mail-settings-grid label {
  margin: 0 !important;
  min-width: 0 !important;
}

.mail-settings-switches {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  margin-top: 10px !important;
  flex-wrap: wrap !important;
}

.mail-settings-switches .check-row {
  margin: 0 !important;
  min-height: 34px !important;
}

.mail-settings-switches .btn {
  min-width: 160px !important;
}

.mail-settings-form {
  display: grid !important;
  gap: 0 !important;
}

.backup-email-status small {
  color: #94a3b8 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}

.backup-email-confirm-form {
  grid-template-columns: minmax(0, 1fr) auto !important;
}

@media(max-width:900px) {
  .mail-settings-grid {
    grid-template-columns: 1fr !important;
  }

  .mail-settings-switches {
    justify-content: flex-start !important;
  }
}

/* v109: month navigation arrows inside shared date range picker */
.range-month-nav {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  margin: 0 0 12px !important;
  padding: 0 2px !important;
}

.range-month-nav-title {
  min-width: 0 !important;
  flex: 1 1 auto !important;
  text-align: center !important;
  font-size: 13px !important;
  line-height: 16px !important;
  font-weight: 800 !important;
  color: #334155 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.range-month-arrow {
  width: 34px !important;
  min-width: 34px !important;
  height: 32px !important;
  min-height: 32px !important;
  padding: 0 !important;
  border: 1px solid #dbe4f0 !important;
  border-radius: 8px !important;
  background: #f8fafc !important;
  color: #334155 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 24px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
}

.range-month-arrow:hover {
  background: #eaf2ff !important;
  border-color: #bfdbfe !important;
  color: #2563eb !important;
}

/* v112: custom vehicle make/model suggestions */
.vehicle-suggest-menu {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 4px);
  z-index: 750;
  max-height: 220px;
  overflow: auto;
  padding: 4px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 6px;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .16);
}

.vehicle-suggest-menu[hidden] {
  display: none !important;
}

.vehicle-suggest-item {
  width: 100%;
  height: 30px;
  min-height: 30px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: #334155;
  padding: 0 8px;
  font-size: 12px;
  font-weight: 700;
  line-height: 15px;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.vehicle-suggest-item:hover,
.vehicle-suggest-item.active {
  background: #eff6ff;
  color: #1d4ed8;
}

@media(max-width:700px) {
  .vehicle-suggest-menu {
    max-height: 190px;
  }
}


/* v117: PTS paper/electronic combined control */
.pts-field {
  min-width: 0;
}
.pts-combo {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 104px;
  align-items: stretch;
  width: 100%;
}
.pts-combo input {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}
.pts-combo select {
  border-left: 0 !important;
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
  padding-left: 8px !important;
  padding-right: 6px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #475569 !important;
  background-color: #f8fafc !important;
}
.pts-combo:focus-within input,
.pts-combo:focus-within select {
  border-color: var(--blue) !important;
}
@media(max-width:700px) {
  .pts-combo { grid-template-columns: minmax(0, 1fr) 98px; }
}


/* v118: live VIN length validation */
.field-invalid {
  border-color: #ef4444 !important;
  box-shadow: 0 0 0 2px rgba(239, 68, 68, .10) !important;
}
.field-live-error {
  margin-top: 4px;
  color: #dc2626;
  font-size: 11px;
  line-height: 1.25;
  font-weight: 700;
}


/* v120: widen PTS input by narrowing only the first vehicle row fields */
@media (min-width: 901px) {
  .section-vehicle .vehicle-grid-v38 {
    grid-template-columns: minmax(86px, .62fr) minmax(240px, 1.72fr) minmax(105px, .72fr) minmax(105px, .72fr) !important;
  }

  .section-vehicle .vehicle-grid-v38 .pts-combo {
    grid-template-columns: minmax(0, 1fr) 104px !important;
  }
}

@media (min-width: 901px) and (max-width: 1450px) {
  .section-vehicle .vehicle-grid-v38 {
    grid-template-columns: minmax(82px, .62fr) minmax(220px, 1.65fr) minmax(96px, .72fr) minmax(96px, .72fr) !important;
  }
}

@media (max-width: 900px) {
  .section-vehicle .vehicle-grid-v38 {
    grid-template-columns: 1fr !important;
  }
}


/* v121: desktop detail layout — give edit form more width by narrowing finance/summary/history columns */
@media (min-width: 1451px) {
  .application-window-v50 {
    grid-template-columns: 620px minmax(300px, .78fr) minmax(360px, .92fr) !important;
  }
}

@media (min-width: 1101px) and (max-width: 1450px) {
  .application-window-v50 {
    grid-template-columns: 560px minmax(280px, .78fr) minmax(320px, .9fr) !important;
  }
}

/* v121: after widening the edit form, return brand/model to usable widths while keeping PTS wider */
@media (min-width: 901px) {
  .section-vehicle .vehicle-grid-v38 {
    grid-template-columns: minmax(105px, .78fr) minmax(250px, 1.55fr) minmax(145px, 1fr) minmax(145px, 1fr) !important;
  }
}

@media (min-width: 901px) and (max-width: 1450px) {
  .section-vehicle .vehicle-grid-v38 {
    grid-template-columns: minmax(96px, .74fr) minmax(230px, 1.52fr) minmax(130px, .95fr) minmax(130px, .95fr) !important;
  }
}

/* v122: keep vehicle row inside edit form; give freed desktop space to make/model/VIN without horizontal overflow */
@media (min-width: 1451px) {
  .application-window-v50 {
    grid-template-columns: 640px minmax(250px, .70fr) minmax(300px, .84fr) !important;
  }
}

@media (min-width: 1101px) and (max-width: 1450px) {
  .application-window-v50 {
    grid-template-columns: 600px minmax(240px, .70fr) minmax(280px, .82fr) !important;
  }
}

@media (min-width: 901px) {
  .section-vehicle .vehicle-grid-v38 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
    grid-template-columns: minmax(0, .74fr) minmax(0, 1.58fr) minmax(0, 1.08fr) minmax(0, 1.08fr) !important;
  }

  .section-vehicle .vehicle-grid-v38 > div,
  .section-vehicle .vehicle-grid-v38 .filter-control,
  .section-vehicle .vehicle-grid-v38 .pts-field,
  .section-vehicle .vehicle-grid-v38 input,
  .section-vehicle .vehicle-grid-v38 select {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .section-vehicle .vehicle-grid-v38 .pts-combo {
    grid-template-columns: minmax(0, 1fr) 104px !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .section-vehicle .vehicle-grid-v38 .vin-field {
    grid-column: span 2 !important;
  }
}

@media (min-width: 901px) and (max-width: 1450px) {
  .section-vehicle .vehicle-grid-v38 {
    grid-template-columns: minmax(0, .72fr) minmax(0, 1.56fr) minmax(0, 1.06fr) minmax(0, 1.06fr) !important;
  }
}

/* v123: swap vehicle year/STS with make/model; make+model as one full-width combined block */
@media (min-width: 901px) {
  .section-vehicle .vehicle-grid-v38 {
    grid-template-columns: minmax(0, .74fr) minmax(0, 1.58fr) minmax(0, 1.08fr) minmax(0, 1.08fr) !important;
  }

  .section-vehicle .vehicle-grid-v38 .make-model-field {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 0 !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  .section-vehicle .vehicle-grid-v38 .make-model-part {
    min-width: 0 !important;
    position: relative !important;
  }

  .section-vehicle .vehicle-grid-v38 .make-model-part:first-child input {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-right: 0 !important;
  }

  .section-vehicle .vehicle-grid-v38 .make-model-part:last-child input {
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
  }

  .section-vehicle .vehicle-grid-v38 .make-model-part:last-child input:focus {
    position: relative !important;
    z-index: 2 !important;
  }

  .section-vehicle .vehicle-grid-v38 .vin-field {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 900px) {
  .section-vehicle .vehicle-grid-v38 .make-model-field {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .section-vehicle .vehicle-grid-v38 .make-model-part input {
    border-radius: 4px !important;
    border-right: 1px solid var(--field) !important;
  }
}

/* v124: shrink year and STS in first vehicle row; give freed width to PTS */
@media (min-width: 901px) {
  .section-vehicle .vehicle-grid-v38 {
    grid-template-columns: minmax(0, .74fr) minmax(0, 2.23fr) minmax(0, .54fr) minmax(0, .97fr) !important;
  }
}

@media (min-width: 901px) and (max-width: 1450px) {
  .section-vehicle .vehicle-grid-v38 {
    grid-template-columns: minmax(0, .72fr) minmax(0, 2.19fr) minmax(0, .53fr) minmax(0, .95fr) !important;
  }
}


/* v125: increase year field so the label stays on one line; keep freed width mostly in PTS */
@media (min-width: 901px) {
  .section-vehicle .vehicle-grid-v38 {
    grid-template-columns: minmax(0, .74fr) minmax(0, 2.07fr) minmax(0, .70fr) minmax(0, .97fr) !important;
  }

  .section-vehicle .vehicle-grid-v38 label {
    white-space: nowrap !important;
  }
}

@media (min-width: 901px) and (max-width: 1450px) {
  .section-vehicle .vehicle-grid-v38 {
    grid-template-columns: minmax(0, .72fr) minmax(0, 2.03fr) minmax(0, .69fr) minmax(0, .95fr) !important;
  }
}

/* v126: keep make/model suggestions attached to inputs on <=900px layout */
.make-model-field,
.make-model-part {
  position: relative !important;
  min-width: 0 !important;
  overflow: visible !important;
}

.vehicle-suggest-menu {
  left: 0 !important;
  right: 0 !important;
  top: calc(100% + 4px) !important;
  width: auto !important;
}

@media (max-width: 900px) {
  .section-vehicle .vehicle-grid-v38,
  .section-vehicle .vehicle-grid-v38 .make-model-field,
  .section-vehicle .vehicle-grid-v38 .make-model-part {
    overflow: visible !important;
  }

  .section-vehicle .vehicle-grid-v38 .make-model-part {
    position: relative !important;
    z-index: 30 !important;
  }

  .section-vehicle .vehicle-grid-v38 .make-model-part:focus-within {
    z-index: 1200 !important;
  }

  .section-vehicle .vehicle-grid-v38 .make-model-part .vehicle-suggest-menu {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: calc(100% + 4px) !important;
    width: 100% !important;
    max-height: 210px !important;
    z-index: 1300 !important;
  }
}

/* v127: up to five application photos */
.document-uploader-multi {
  width: 90%;
  margin: 0 auto;
}

.document-count {
  color: #94a3b8;
  font-weight: 800;
  margin-left: 4px;
}

.document-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(104px, 1fr));
  gap: 8px;
  align-items: stretch;
}

.document-thumb {
  position: relative;
  min-height: 86px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #f8fafc;
  padding: 0;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.document-thumb:hover {
  border-color: var(--blue);
  box-shadow: 0 0 0 2px rgba(59, 130, 246, .10);
}

.document-thumb img {
  width: 100%;
  height: 100%;
  min-height: 86px;
  object-fit: cover;
  display: block;
  background: #fff;
}

.document-thumb span {
  position: absolute;
  right: 6px;
  bottom: 6px;
  border-radius: 4px;
  background: rgba(15, 23, 42, .72);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  padding: 3px 6px;
}

.document-thumb-pending {
  border-style: dashed;
  border-color: #3b82f6;
}

.document-preview-empty-state {
  min-height: 110px;
  grid-column: 1/-1;
}

@media(max-width:900px) {
  .document-uploader-multi {
    width: 100%;
  }

  .document-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* v128: replace/delete individual application photos and temporary photo queue */
.document-thumb-wrap {
  min-width: 0;
  display: grid;
  gap: 6px;
}

.document-thumb-wrap .document-thumb {
  width: 100%;
  min-height: 86px;
}

.document-thumb-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.document-mini-btn {
  height: 26px;
  border: 1px solid #cbd5e1;
  border-radius: 4px;
  background: #fff;
  color: #334155;
  font-size: 11px;
  font-weight: 800;
  padding: 0 6px;
}

.document-mini-btn:hover {
  border-color: #3b82f6;
  color: #2563eb;
  background: #eff6ff;
}

.document-mini-btn.danger {
  border-color: #fecaca;
  color: #dc2626;
}

.document-mini-btn.danger:hover {
  background: #fef2f2;
  border-color: #ef4444;
}

.document-thumb-replaced .document-thumb,
.document-thumb-pending-wrap .document-thumb {
  border-color: #3b82f6;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, .10);
}

.document-thumb-replaced:after,
.document-thumb-pending-wrap:after {
  content: "после сохранения";
  color: #64748b;
  font-size: 10px;
  font-weight: 800;
  line-height: 12px;
  text-align: center;
}

.document-uploader-multi .document-upload-btn {
  min-width: 120px;
}

@media(max-width:640px) {
  .document-thumb-actions {
    grid-template-columns: 1fr;
  }
}


/* v129: single photo add button and clear save hint */
.document-actions-single {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
}

.document-actions-single .btn {
  width: 100% !important;
}

.document-save-hint {
  color: #64748b;
  font-size: 11px;
  line-height: 14px;
  font-weight: 700;
  margin-top: -2px;
}

.document-uploader-multi .document-change-btn {
  min-width: 120px;
}

/* v132: icon buttons for document photo actions */
.document-thumb-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
}

.document-mini-btn.document-icon-btn {
  width: 28px !important;
  min-width: 28px !important;
  height: 28px !important;
  min-height: 28px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 4px !important;
  background: transparent !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 0 !important;
}

.document-mini-btn.document-icon-btn:hover {
  background: #f8fafc !important;
  box-shadow: 0 0 0 1px rgba(148, 163, 184, .22) !important;
}

.document-mini-btn.document-icon-btn.danger:hover {
  background: #fef2f2 !important;
  box-shadow: 0 0 0 1px rgba(239, 68, 68, .18) !important;
}

.document-icon {
  display: block;
  width: 18px;
  height: 18px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
}

.document-icon-replace {
  width: 19px;
  height: 19px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M20 12a8 8 0 0 1-13.657 5.657A8 8 0 0 1 12 4h4.5' stroke='%233B82F6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M14 2h5v5' stroke='%233B82F6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M19 2l-6 6' stroke='%233B82F6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.document-icon-delete {
  width: 17px;
  height: 17px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='17 0 15 15' fill='none'%3E%3Cpath d='M21.6902 0.486343C21.3474 0.577164 21.0223 0.832047 20.8611 1.13087C20.7205 1.39455 20.6912 1.58791 20.6912 2.33498V3.01759H19.282C17.8875 3.01759 17.8699 3.01759 17.7674 3.08205C17.6326 3.16701 17.5447 3.36037 17.5711 3.5215C17.5974 3.66798 17.7674 3.84962 17.908 3.87599C17.9607 3.88771 18.2771 3.8965 18.614 3.8965H19.2264V4.01369C19.2264 4.29201 19.7537 13.2744 19.7801 13.4444C19.8592 13.9629 20.2459 14.3819 20.7703 14.5166C21.0223 14.584 27.9773 14.584 28.2293 14.5166C28.7537 14.3819 29.1375 13.9629 29.2195 13.4473C29.2459 13.2774 29.7732 4.27736 29.7732 4.0049V3.8965H30.3855C30.7224 3.8965 31.0389 3.88771 31.0916 3.87599C31.2322 3.84962 31.4021 3.66798 31.4285 3.5215C31.4549 3.36037 31.367 3.16701 31.2322 3.08205C31.1297 3.01759 31.1121 3.01759 29.7205 3.01759H28.3113L28.3025 2.26173C28.2879 1.40919 28.2732 1.33302 28.0681 1.02541C27.9305 0.817398 27.6873 0.624039 27.4353 0.5215L27.2683 0.454117L24.5584 0.448257C22.2586 0.442398 21.825 0.448257 21.6902 0.486343ZM27.1482 1.35939C27.201 1.38283 27.283 1.45021 27.3299 1.51173L27.4148 1.62013V2.31154V3.00294H24.4998H21.5848V2.31154V1.62013L21.6697 1.51173C21.8221 1.30959 21.6697 1.3213 24.4939 1.31837C26.615 1.31837 27.0662 1.32423 27.1482 1.35939ZM28.8943 3.96974C28.8943 4.12502 28.367 13.1777 28.3523 13.292C28.3318 13.4414 28.2205 13.585 28.0828 13.6406C27.9422 13.7022 21.0574 13.7022 20.9168 13.6406C20.7791 13.585 20.6678 13.4414 20.6473 13.292C20.6326 13.1777 20.1053 4.12794 20.1053 3.96974V3.8965H24.4998H28.8943V3.96974Z' fill='%23F04444'/%3E%3Cpath d='M22.7977 6.95215C22.6131 7.0752 22.5457 7.31543 22.6424 7.50879C22.6687 7.56153 22.9559 7.86914 23.2781 8.19727L23.8699 8.78907L23.2635 9.39844C22.9295 9.73242 22.6424 10.043 22.6248 10.0869C22.5457 10.3008 22.6424 10.5469 22.8387 10.6377C23.1199 10.7637 23.1961 10.7197 23.9051 10.0107L24.4998 9.42188L25.0945 10.0107C25.8035 10.7197 25.8797 10.7637 26.1609 10.6377C26.3572 10.5469 26.4539 10.3008 26.3748 10.0869C26.3572 10.043 26.0701 9.73242 25.7361 9.39844L25.1297 8.78907L25.7215 8.19727C26.0437 7.86914 26.3309 7.56153 26.3572 7.50879C26.4978 7.22754 26.2869 6.88477 25.9734 6.88477C25.9031 6.88477 25.8152 6.89942 25.7801 6.917C25.7449 6.93457 25.4432 7.22168 25.1092 7.55274L24.4998 8.15918L23.8934 7.55274C23.5564 7.22168 23.2547 6.93457 23.2195 6.917C23.1111 6.86133 22.9061 6.87891 22.7977 6.95215Z' fill='%23F04444'/%3E%3C/svg%3E");
}

@media(max-width:640px) {
  .document-thumb-actions {
    flex-direction: row !important;
  }
}


/* v133: drag-and-drop photo upload area */
.document-uploader-multi {
  border: 1px dashed transparent;
  border-radius: 8px;
  padding: 8px;
  transition: border-color .14s ease, background .14s ease, box-shadow .14s ease;
}

.document-uploader-multi.is-dragover {
  border-color: #3b82f6;
  background: #eff6ff;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, .10);
}

.document-uploader-multi.is-dragover .document-gallery {
  opacity: .92;
}

.document-uploader-multi.is-dragover .document-save-hint {
  color: #2563eb;
}

/* v137: Замена ВУ — отдельный блок вместо авто-данных */
.license-grid-v137 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 6px 8px !important;
}

.license-grid-v137 .license-issued-by-field {
  grid-column: span 1 !important;
}

@media (max-width: 900px) {
  .license-grid-v137 {
    grid-template-columns: 1fr !important;
  }

  .license-grid-v137 .license-issued-by-field {
    grid-column: 1 / -1 !important;
  }
}


/* v140: desktop sidebar must stay fixed while the page scrolls. */
@media (min-width: 901px) {
  .layout {
    display: block !important;
    min-height: 100vh !important;
    padding-left: 205px !important;
    background: var(--bg) !important;
  }

  .sidebar {
    position: fixed !important;
    left: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 205px !important;
    height: 100vh !important;
    min-height: 100vh !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  .main {
    min-width: 0 !important;
  }
}

/* v141: compact operation/suboperation pair */
@media (min-width: 901px) {
  .section-operation .operation-row-v141 {
    grid-template-columns: minmax(0, 1.55fr) minmax(0, .72fr) minmax(0, .72fr) !important;
  }
}

.operation-combo-field {
  min-width: 0;
}

.operation-combo-field > label {
  display: block;
}

.operation-combo {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  gap: 0;
  min-width: 0;
}

.operation-combo-part {
  min-width: 0;
}

.operation-combo-part select {
  width: 100%;
}

.operation-combo-part:first-child select {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
  border-right: 0 !important;
}

.operation-combo-part:last-child select {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.operation-combo-part:last-child select:focus {
  position: relative;
  z-index: 2;
}

@media (max-width: 900px) {
  .operation-combo {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .operation-combo-part:first-child select,
  .operation-combo-part:last-child select {
    border-radius: 4px !important;
    border-right: 1px solid var(--field) !important;
  }
}

/* v143: nested operation/suboperation filters */
.operation-tree-filter .operation-tree-menu {
    min-width: 320px;
    max-width: min(420px, calc(100vw - 24px));
}
.operation-tree-options {
    gap: 4px;
}
.operation-tree-group {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.operation-tree-parent {
    font-weight: 800;
    background: #f8fafc;
    border-radius: 8px;
}
.operation-tree-children {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding-left: 18px;
    margin: 0 0 4px 0;
}
.operation-tree-child {
    min-height: 28px;
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 12px;
}
.operation-tree-child span:before {
    content: '↳';
    color: #94a3b8;
    margin-right: 5px;
}
@media (max-width: 640px) {
    .operation-tree-filter .operation-tree-menu {
        min-width: min(320px, calc(100vw - 24px));
    }
    .operation-tree-children {
        padding-left: 10px;
    }
}

/* v145: DКП document page */
.dkp-page {
  display: grid;
  grid-template-columns: minmax(320px, 520px) minmax(500px, 1fr);
  gap: 14px;
  align-items: start;
}

.dkp-form-panel,
.dkp-preview-wrap {
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(15, 23, 42, .06);
}

.dkp-form-panel {
  padding: 14px;
}

.dkp-panel-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 12px;
}

.dkp-panel-head h2 {
  margin: 0 0 4px;
  font-size: 18px;
}

.dkp-panel-head p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}

.dkp-form-grid,
.dkp-form-columns,
.dkp-form-columns fieldset,
.dkp-vehicle-fieldset {
  display: grid;
  gap: 8px;
}

.dkp-form-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.dkp-form-grid.vehicle {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.dkp-form-columns {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 10px;
}

.dkp-form-panel fieldset {
  border: 1px solid var(--line-2);
  border-radius: 10px;
  padding: 10px;
  min-width: 0;
}

.dkp-form-panel legend {
  padding: 0 6px;
  color: var(--text);
  font-size: 13px;
  font-weight: 800;
}

.dkp-form-panel label {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.dkp-form-panel label span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.dkp-form-panel input,
.dkp-form-panel select,
.dkp-form-panel textarea {
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 0 8px;
  font-size: 13px;
  background: #fff;
}

.dkp-form-panel textarea {
  min-height: 56px;
  padding-top: 7px;
  resize: vertical;
}

.dkp-wide {
  grid-column: 1 / -1;
}

.dkp-vehicle-fieldset {
  margin-top: 10px;
}

.dkp-preview-wrap {
  padding: 16px;
  overflow: auto;
}

.dkp-sheet {
  width: 210mm;
  min-height: 297mm;
  margin: 0 auto;
  padding: 16mm 15mm;
  background: #fff;
  color: #111827;
  border: 1px solid #d1d5db;
  box-shadow: 0 18px 40px rgba(15, 23, 42, .12);
  font-family: "Times New Roman", Times, serif;
  font-size: 13px;
  line-height: 1.28;
}

.dkp-sheet h1 {
  margin: 0 0 12px;
  text-align: center;
  font-size: 20px;
  line-height: 1.2;
}

.dkp-doc-top {
  display: flex;
  justify-content: space-between;
  margin-bottom: 12px;
}

.dkp-sheet p,
.dkp-sheet li {
  text-align: justify;
}

.dkp-doc-table {
  width: 100%;
  border-collapse: collapse;
  margin: 10px 0 12px;
  font-size: 12px;
}

.dkp-doc-table th,
.dkp-doc-table td {
  border: 1px solid #111827;
  padding: 4px 6px;
  vertical-align: top;
}

.dkp-doc-table th {
  width: 20%;
  text-align: left;
  background: #f8fafc;
}

.dkp-signatures {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  margin-top: 32px;
}

.dkp-signatures div {
  display: grid;
  gap: 18px;
}

.dkp-signatures span {
  border-top: 1px solid #111827;
  padding-top: 5px;
}

@media (max-width: 1280px) {
  .dkp-page {
    grid-template-columns: 1fr;
  }

  .dkp-preview-wrap {
    max-width: 100%;
  }
}

@media (max-width: 760px) {
  .dkp-form-grid,
  .dkp-form-grid.vehicle,
  .dkp-form-columns {
    grid-template-columns: 1fr;
  }

  .dkp-panel-head {
    display: grid;
  }

  .dkp-sheet {
    width: 100%;
    min-height: auto;
    padding: 12mm 8mm;
  }
}

@media print {
  body {
    background: #fff !important;
  }

  .sidebar,
  .topbar,
  .messages,
  .dkp-form-panel {
    display: none !important;
  }

  .layout,
  .main,
  .dkp-page,
  .dkp-preview-wrap {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    min-width: 0 !important;
    background: #fff !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .dkp-sheet {
    width: auto !important;
    min-height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  @page {
    size: A4;
    margin: 14mm 12mm;
  }
}

/* v164: database clear selective dictionary preservation */
.database-tools-box .db-clear-keepers {
  display: flex !important;
  flex-direction: column;
  gap: 10px;
}

.database-tools-box .db-keep-card {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #d9e2ef;
  border-radius: 12px;
  background: #f8fafc;
  padding: 12px;
  text-align: left;
}

.database-tools-box .db-keep-title {
  font-weight: 800;
  color: #172033;
  margin-bottom: 10px;
}

.database-tools-box .db-keep-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 12px;
}

.database-tools-box .db-keep-toggle {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 28px;
  font-weight: 700;
  color: #24324a;
  cursor: pointer;
  user-select: none;
}

.database-tools-box .db-keep-toggle input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.database-tools-box .db-switch {
  position: relative;
  flex: 0 0 38px;
  width: 38px;
  height: 22px;
  border-radius: 999px;
  background: #cbd5e1;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, .08);
  transition: background .16s ease;
}

.database-tools-box .db-switch::after {
  content: '';
  position: absolute;
  width: 18px;
  height: 18px;
  left: 2px;
  top: 2px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, .22);
  transition: transform .16s ease;
}

.database-tools-box .db-keep-toggle input:checked + .db-switch {
  background: #2563eb;
}

.database-tools-box .db-keep-toggle input:checked + .db-switch::after {
  transform: translateX(16px);
}

.database-tools-box .db-keep-note {
  margin-top: 9px;
  font-size: 12px;
  line-height: 1.35;
  color: #64748b;
}

@media(max-width:640px) {
  .database-tools-box .db-keep-grid {
    grid-template-columns: 1fr;
  }
}

/* v165: show database preservation toggles only after Clear click */
.database-tools-box .db-keep-card[hidden] {
  display: none !important;
}

.database-tools-box .db-clear-keepers {
  gap: 8px !important;
}

.database-tools-box .db-keep-card {
  margin-top: 0 !important;
  padding: 10px !important;
  border-radius: 10px !important;
}

.database-tools-box .db-keep-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.database-tools-box .db-keep-title {
  margin-bottom: 2px !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
}

.database-tools-box .db-keep-note {
  margin-top: 0 !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
}

.database-tools-box .db-keep-grid-compact {
  grid-template-columns: 1fr 1fr !important;
  gap: 6px 10px !important;
}

.database-tools-box .db-keep-toggle-compact {
  min-height: 24px !important;
  gap: 7px !important;
  font-size: 12px !important;
  line-height: 1.15 !important;
}

.database-tools-box .db-keep-toggle-compact .db-switch {
  flex-basis: 32px !important;
  width: 32px !important;
  height: 18px !important;
}

.database-tools-box .db-keep-toggle-compact .db-switch::after {
  width: 14px !important;
  height: 14px !important;
}

.database-tools-box .db-keep-toggle-compact input:checked + .db-switch::after {
  transform: translateX(14px) !important;
}

.database-tools-box .db-clear-confirm-row {
  display: flex;
  justify-content: flex-end;
  margin-top: 9px;
}

.database-tools-box .db-clear-confirm-btn {
  min-height: 30px !important;
  padding: 6px 12px !important;
  font-size: 12px !important;
  background: #ef4444 !important;
  border-color: #ef4444 !important;
  color: #fff !important;
}

@media(max-width:640px) {
  .database-tools-box .db-keep-grid-compact {
    grid-template-columns: 1fr !important;
  }
  .database-tools-box .db-clear-confirm-btn {
    width: 100% !important;
  }
}

/* v166: finance quick operation add + returned row restore */
.finance-quick-add {
  display: grid !important;
  grid-template-columns: minmax(220px, 1.35fr) minmax(110px, .55fr) minmax(120px, .55fr) minmax(260px, 1.2fr) minmax(150px, .8fr) minmax(150px, .8fr) auto !important;
  gap: 8px !important;
  align-items: end !important;
  padding: 10px !important;
  margin: 0 0 10px !important;
  border: 1px solid rgba(15, 23, 42, .08) !important;
  border-radius: 14px !important;
  background: #f8fafc !important;
}
.finance-quick-add .quick-field {
  min-width: 0 !important;
}
.finance-quick-add label {
  display: block !important;
  margin: 0 0 4px !important;
  color: #64748b !important;
  font-size: 11px !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
}
.finance-quick-add .field {
  width: 100% !important;
  min-width: 0 !important;
  height: 36px !important;
}
.finance-operation-combo {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(148, 163, 184, .45) !important;
  border-radius: 10px !important;
  background: #fff !important;
}
.finance-operation-combo .field {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.finance-operation-combo .field + .field {
  border-left: 1px solid rgba(148, 163, 184, .35) !important;
}
.finance-quick-submit {
  height: 36px !important;
  white-space: nowrap !important;
}
.application-row.application-returned-list,
.application-card.application-returned-list {
  background: linear-gradient(90deg, rgba(244, 114, 182, .16), rgba(255, 255, 255, .98)) !important;
  border-color: rgba(219, 39, 119, .42) !important;
  box-shadow: inset 3px 0 0 rgba(219, 39, 119, .62), 0 1px 2px rgba(15, 23, 42, .04) !important;
}
.application-row.application-returned-list:hover,
.application-card.application-returned-list:hover {
  border-color: rgba(190, 24, 93, .66) !important;
  background: linear-gradient(90deg, rgba(244, 114, 182, .20), rgba(255, 255, 255, 1)) !important;
}
.application-row.application-returned-list .cell-money b,
.application-row.application-returned-list .return-text {
  color: #be185d !important;
  font-weight: 800 !important;
}
@media (max-width: 1280px) {
  .finance-quick-add {
    grid-template-columns: repeat(3, minmax(0, 1fr)) auto !important;
  }
  .finance-quick-add .quick-operation {
    grid-column: span 2 !important;
  }
}
@media (max-width: 900px) {
  .finance-quick-add {
    grid-template-columns: 1fr !important;
  }
  .finance-quick-add .quick-operation {
    grid-column: auto !important;
  }
}

.form-global-errors {
    grid-column: 1 / -1;
    margin: 0 0 12px;
    padding: 10px 12px;
    border: 1px solid #d92d20;
    background: #fff4f2;
    color: #912018;
    font-size: 14px;
}
.form-global-errors .errorlist { margin: 0; padding-left: 18px; }
