:root {
  --app-bg: #f3eadf;
  --app-surface: #fffaf2;
  --app-surface-soft: #f9efe3;
  --app-sidebar: #e7d3bb;
  --app-sidebar-strong: #d8bea1;
  --app-text: #4f321f;
  --app-muted: #8a725f;
  --app-border: #e3d2bf;
  --app-primary: #658653;
  --app-primary-strong: #4f6f3f;
  --app-success: #6f925f;
  --app-warning: #d9ad56;
  --app-danger: #b96549;
  --app-terracotta: #b96549;
  --app-focus: rgba(101, 134, 83, .2);
  --app-shadow: 0 18px 38px rgba(91, 60, 38, .12);
  --app-shadow-soft: 0 8px 22px rgba(91, 60, 38, .1);
}

@media (max-width: 767.98px) {
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table {
    max-width: 100% !important;
    table-layout: fixed !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table tr {
    max-width: 100%;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td {
    grid-template-columns: minmax(5.75rem, 34%) minmax(0, 1fr) !important;
    min-width: 0;
    overflow: hidden;
    overflow-wrap: anywhere;
    padding: .62rem .75rem !important;
    word-break: break-word;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td[data-mobile-important="false"] {
    display: none !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table tr.is-expanded td[data-mobile-important="false"] {
    background: rgba(248, 244, 238, .62);
    display: grid !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td[data-mobile-important="true"] {
    display: grid !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td > *,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td a,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td span,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td code,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td label {
    max-width: 100%;
    overflow-wrap: anywhere;
    white-space: normal !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td .btn,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td button {
    margin-bottom: .25rem;
    max-width: 100%;
  }

  .omdin-mobile-row-toggle {
    align-items: center;
    background: rgba(111, 146, 95, .1);
    border: 1px solid rgba(111, 146, 95, .25);
    border-radius: 8px;
    color: var(--app-primary);
    cursor: pointer;
    display: inline-flex;
    font-size: .78rem;
    font-weight: 800;
    grid-column: 1 / -1;
    justify-content: center;
    margin-top: .45rem;
    min-height: 2.1rem;
    padding: .35rem .65rem;
    width: 100%;
  }

  .omdin-mobile-row-toggle::after {
    content: "\\25BE";
    font-size: .7rem;
    margin-left: .45rem;
  }

  tr.is-expanded .omdin-mobile-row-toggle::after {
    content: "\\25B4";
  }
}

@media (max-width: 767.98px) {
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table {
    table-layout: fixed !important;
    max-width: 100% !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table tr {
    max-width: 100%;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td {
    grid-template-columns: minmax(5.75rem, 34%) minmax(0, 1fr);
    min-width: 0;
    overflow: hidden;
    overflow-wrap: anywhere;
    padding: .62rem .75rem !important;
    word-break: break-word;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td[data-mobile-important="false"] {
    display: none !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table tr.is-expanded td[data-mobile-important="false"] {
    background: rgba(248, 244, 238, .62);
    display: grid !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td[data-mobile-important="true"] {
    display: grid !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td[data-mobile-important="true"]:first-child,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table tr.is-expanded td[data-mobile-important="false"]:first-child {
    border-top: 0 !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td > *,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td a,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td span,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td code,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td label {
    max-width: 100%;
    overflow-wrap: anywhere;
    white-space: normal !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td:has(.btn),
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td:has(button) {
    align-items: center;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td .btn,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td button {
    margin-bottom: .25rem;
    max-width: 100%;
  }

  .omdin-mobile-row-toggle {
    align-items: center;
    background: rgba(111, 146, 95, .1);
    border: 1px solid rgba(111, 146, 95, .25);
    border-radius: 8px;
    color: var(--app-primary);
    cursor: pointer;
    display: inline-flex;
    font-size: .78rem;
    font-weight: 800;
    grid-column: 1 / -1;
    justify-content: center;
    margin-top: .45rem;
    min-height: 2.1rem;
    padding: .35rem .65rem;
    width: 100%;
  }

  .omdin-mobile-row-toggle::after {
    content: "▾";
    font-size: .7rem;
    margin-left: .45rem;
  }

  tr.is-expanded .omdin-mobile-row-toggle::after {
    content: "▴";
  }
}

html,
body {
  min-height: 100%;
}

body {
  color: var(--app-text);
  font-family: Kanit, Nunito, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  letter-spacing: 0;
}

body.omdin-app,
.omdin-app #content-wrapper {
  background: var(--app-bg) !important;
}

.omdin-app #wrapper {
  min-height: 100vh;
}

.omdin-app * {
  scrollbar-color: #b8c3d1 transparent;
  scrollbar-width: thin;
}

.omdin-app ::selection {
  background: rgba(15, 118, 110, .18);
}

.omdin-app .sidebar {
  background: var(--app-sidebar) !important;
  background-image: none !important;
  border-right: 1px solid rgba(255, 255, 255, .08);
  box-shadow: 8px 0 24px rgba(17, 24, 39, .08);
  width: 16.5rem !important;
}

.omdin-app .sidebar.toggled {
  width: 6.75rem !important;
}

.omdin-app .sidebar .sidebar-brand {
  height: 4.75rem;
  padding: 0 1rem;
  justify-content: flex-start !important;
}

.omdin-app .sidebar .sidebar-brand-icon {
  align-items: center;
  background: rgba(255, 255, 255, .12);
  border-radius: 8px;
  display: inline-flex;
  height: 2.25rem;
  justify-content: center;
  width: 2.25rem;
}

.omdin-app .sidebar .sidebar-brand-icon.rotate-n-15 {
  transform: none;
}

.omdin-app .sidebar .sidebar-brand-text {
  font-size: .9rem;
  font-weight: 700;
  letter-spacing: 0;
}

.omdin-app .sidebar-dark .sidebar-heading {
  color: rgba(255, 255, 255, .52);
  font-size: .68rem;
  letter-spacing: 0;
  margin-top: .75rem;
}

.omdin-app .sidebar-dark .nav-item .nav-link {
  align-items: center;
  border-radius: 8px;
  color: rgba(255, 255, 255, .72);
  display: flex;
  gap: .55rem;
  margin: .14rem .75rem;
  min-height: 2.75rem;
  padding: .76rem .85rem;
  width: auto;
}

.omdin-app .sidebar-dark .nav-item .nav-link i {
  color: rgba(255, 255, 255, .72);
  font-size: .96rem;
  min-width: 1.15rem;
  text-align: center;
}

.omdin-app .sidebar-dark .nav-item.active .nav-link,
.omdin-app .sidebar-dark .nav-item .nav-link:hover,
.omdin-app .sidebar-dark .nav-item .nav-link.btn:hover {
  background: rgba(255, 255, 255, .12);
  color: #ffffff;
}

.omdin-app .sidebar-dark .nav-item.active .nav-link i,
.omdin-app .sidebar-dark .nav-item .nav-link:hover i {
  color: #ffffff;
}

.omdin-app .sidebar .nav-link.btn {
  background: transparent !important;
  border: 0;
  box-shadow: none;
  text-align: left;
}

.omdin-app .sidebar-divider {
  border-top-color: rgba(255, 255, 255, .1);
  margin: .65rem .95rem;
}

.omdin-app .sidebar-card {
  background: rgba(255, 255, 255, .08);
  border-radius: 8px;
  color: #ffffff;
  margin: 1rem .75rem;
  padding: 1rem;
}

.omdin-app .topbar {
  background: rgba(255, 255, 255, .92) !important;
  border-bottom: 1px solid var(--app-border);
  box-shadow: none !important;
  min-height: 4.25rem;
  position: sticky;
  top: 0;
  z-index: 90;
}

.omdin-app.app-scrolled .topbar {
  box-shadow: var(--app-shadow-soft) !important;
}

.omdin-app .topbar .img-profile {
  border: 2px solid var(--app-border);
  height: 2.15rem;
  width: 2.15rem;
}

.omdin-app .container-fluid {
  max-width: 1480px;
  padding: 1.5rem;
}

.omdin-app .container-fluid > .d-sm-flex.align-items-center.justify-content-between.mb-4 {
  align-items: center !important;
  background: var(--app-surface);
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: var(--app-shadow);
  margin-bottom: 1.25rem !important;
  min-height: 4.25rem;
  padding: 1rem 1.15rem;
}

.omdin-app .app-content-grid {
  margin-left: -.6rem;
  margin-right: -.6rem;
  row-gap: 1.2rem;
}

.omdin-app .app-content-grid > [class*="col-"],
.omdin-app .app-content-grid > .col-lg-12,
.omdin-app .app-content-grid > .col-md-12,
.omdin-app .app-content-grid > .col-12 {
  padding-left: .6rem;
  padding-right: .6rem;
}

.omdin-app h1,
.omdin-app .h1,
.omdin-app h2,
.omdin-app .h2,
.omdin-app h3,
.omdin-app .h3,
.omdin-app h4,
.omdin-app .h4,
.omdin-app h5,
.omdin-app .h5,
.omdin-app h6,
.omdin-app .h6 {
  color: var(--app-text) !important;
  letter-spacing: 0;
}

.omdin-app .container-fluid > .d-sm-flex h1 {
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1.35;
}

.omdin-app .badge {
  border-radius: 6px;
  font-weight: 600;
  padding: .38rem .55rem;
}

.omdin-app .badge-primary,
.omdin-login .badge-primary {
  background-color: var(--app-primary);
}

.omdin-app .card,
.omdin-login .card {
  border: 1px solid var(--app-border) !important;
  border-radius: 8px !important;
  box-shadow: var(--app-shadow-soft) !important;
}

.omdin-app .card-header {
  background: var(--app-surface);
  border-bottom: 1px solid var(--app-border);
  border-radius: 8px 8px 0 0 !important;
  padding: 1rem 1.15rem;
}

.omdin-app .card-body {
  padding: 1.15rem;
}

.omdin-app .card .text-xs {
  font-size: .74rem;
  letter-spacing: 0;
}

.omdin-app .border-left-primary,
.omdin-app .border-left-success,
.omdin-app .border-left-info,
.omdin-app .border-left-warning,
.omdin-app .border-left-danger {
  border-left: 0 !important;
  position: relative;
}

.omdin-app .border-left-primary::before,
.omdin-app .border-left-success::before,
.omdin-app .border-left-info::before,
.omdin-app .border-left-warning::before,
.omdin-app .border-left-danger::before {
  border-radius: 8px 0 0 8px;
  content: "";
  inset: 0 auto 0 0;
  position: absolute;
  width: 4px;
}

.omdin-app .border-left-primary::before,
.omdin-app .border-left-info::before {
  background: var(--app-primary);
}

.omdin-app .border-left-success::before {
  background: var(--app-success);
}

.omdin-app .border-left-warning::before {
  background: #f2b94b;
}

.omdin-app .border-left-danger::before {
  background: var(--app-danger);
}

.omdin-app .shadow,
.omdin-app .shadow-lg {
  box-shadow: var(--app-shadow) !important;
}

.omdin-app .table-responsive {
  border: 1px solid var(--app-border);
  border-radius: 8px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.omdin-app .table {
  background: var(--app-surface);
  color: var(--app-text);
  margin-bottom: 0;
}

.omdin-app .table thead th {
  background: #f8fafc;
  border-bottom: 1px solid var(--app-border);
  color: #344054;
  font-size: .78rem;
  font-weight: 700;
  text-transform: uppercase;
  white-space: nowrap;
}

.omdin-app .table td,
.omdin-app .table th {
  border-color: var(--app-border);
  padding: .82rem .85rem;
  vertical-align: middle;
}

.omdin-app .table-hover tbody tr:hover {
  background-color: #eef4ff;
}

.omdin-app .form-control,
.omdin-app .custom-select,
.omdin-app select,
.omdin-app textarea,
.omdin-login .form-control {
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  box-shadow: none;
  color: var(--app-text);
  min-height: 2.55rem;
}

.omdin-app .form-control:focus,
.omdin-app .custom-select:focus,
.omdin-app select:focus,
.omdin-app textarea:focus,
.omdin-login .form-control:focus {
  border-color: var(--app-primary);
  box-shadow: 0 0 0 .18rem var(--app-focus);
}

.omdin-app label {
  color: #344054;
  font-size: .88rem;
  font-weight: 600;
}

.omdin-app .form-group {
  margin-bottom: 1rem;
}

.omdin-app .btn,
.omdin-login .btn {
  border-radius: 8px;
  font-weight: 600;
  letter-spacing: 0;
  min-height: 2.35rem;
}

.omdin-app .btn-circle {
  align-items: center;
  border-radius: 999px;
  display: inline-flex;
  justify-content: center;
}

.omdin-app .btn-primary,
.omdin-login .btn-primary,
.omdin-login .btn-danger {
  background: var(--app-primary);
  border-color: var(--app-primary);
}

.omdin-app .btn-primary:hover,
.omdin-login .btn-primary:hover,
.omdin-login .btn-danger:hover {
  background: var(--app-primary-strong);
  border-color: var(--app-primary-strong);
}

.omdin-app .btn-success,
.omdin-login .btn-success {
  background: var(--app-success);
  border-color: var(--app-success);
}

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

.omdin-app .btn-warning {
  background: #f2b94b;
  border-color: #f2b94b;
  color: #1f2937;
}

.omdin-app .btn-sm {
  min-height: 2rem;
}

.omdin-app .alert,
.omdin-login .alert {
  border: 1px solid transparent;
  border-radius: 8px;
}

.omdin-app .modal-content {
  border: 0;
  border-radius: 8px;
  box-shadow: 0 22px 60px rgba(17, 24, 39, .22);
}

.omdin-app .modal-header,
.omdin-app .modal-footer {
  border-color: var(--app-border);
}

.omdin-app footer.sticky-footer {
  background: transparent !important;
  color: var(--app-muted);
  padding: 1.5rem 0 2rem;
}

.omdin-mobile-nav {
  display: none;
}

.omdin-topbar-brand {
  align-items: center;
  color: var(--app-text);
  display: inline-flex;
  gap: .75rem;
  margin-right: 1.2rem;
  min-width: 0;
  text-decoration: none;
}

.omdin-topbar-brand:hover {
  color: var(--app-primary);
  text-decoration: none;
}

.omdin-topbar-brand .brand-mark {
  align-items: center;
  background: rgba(15, 118, 110, .1);
  border: 1px solid rgba(15, 118, 110, .18);
  border-radius: 8px;
  color: var(--app-primary);
  display: inline-flex;
  height: 2.4rem;
  justify-content: center;
  width: 2.4rem;
}

.omdin-topbar-brand .brand-copy {
  display: flex;
  flex-direction: column;
  line-height: 1.1;
  min-width: 0;
}

.omdin-topbar-brand strong {
  font-size: 1rem;
  letter-spacing: 0;
}

.omdin-topbar-brand small {
  color: var(--app-muted);
  font-size: .74rem;
  font-weight: 600;
}

.omdin-workspace-nav {
  background: rgba(255, 255, 255, .96);
  border-bottom: 1px solid var(--app-border);
  display: flex;
  gap: .35rem;
  overflow-x: auto;
  padding: .7rem 1.5rem;
  position: sticky;
  top: 4.25rem;
  z-index: 80;
}

.omdin-workspace-nav a {
  align-items: center;
  border: 1px solid transparent;
  border-radius: 8px;
  color: var(--app-muted);
  display: inline-flex;
  flex: 0 0 auto;
  font-weight: 700;
  gap: .45rem;
  min-height: 2.55rem;
  padding: .55rem .85rem;
  text-decoration: none;
}

.omdin-workspace-nav a:hover {
  background: #f8fafc;
  border-color: var(--app-border);
  color: var(--app-text);
  text-decoration: none;
}

.omdin-workspace-nav a.active {
  background: rgba(15, 118, 110, .1);
  border-color: rgba(15, 118, 110, .2);
  color: var(--app-primary);
}

.omdin-workspace-nav i {
  font-size: .96rem;
}

.omdin-inc-page,
.omdin-filter-shell {
  flex: 0 0 100%;
  max-width: 100%;
  width: 100%;
}

.omdin-module-hero {
  align-items: center;
  background: linear-gradient(135deg, #ffffff 0%, #eef8f6 100%);
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: var(--app-shadow-soft);
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 1rem;
  min-height: 5.25rem;
  padding: 1rem 1.15rem;
}

.omdin-module-hero h2 {
  font-size: 1.25rem;
  font-weight: 800;
  margin: 0;
}

.omdin-module-hero p {
  color: var(--app-muted);
  font-size: .9rem;
  margin: .22rem 0 0;
}

.omdin-module-eyebrow {
  align-items: center;
  color: var(--app-primary);
  display: inline-flex;
  font-size: .74rem;
  font-weight: 800;
  gap: .38rem;
  letter-spacing: 0;
  margin-bottom: .35rem;
  text-transform: uppercase;
}

.omdin-module-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  justify-content: flex-end;
}

.omdin-module-actions .btn {
  min-width: 2.75rem;
}

.omdin-section-eyebrow {
  align-items: center;
  color: var(--app-primary);
  display: inline-flex;
  font-size: .72rem;
  font-weight: 800;
  gap: .35rem;
  letter-spacing: 0;
  margin-bottom: .35rem;
  text-transform: uppercase;
}

.omdin-payment-monitor {
  background: var(--app-surface);
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: var(--app-shadow-soft);
  overflow: hidden;
}

.omdin-payment-monitor-header {
  align-items: flex-start;
  border-bottom: 1px solid var(--app-border);
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  padding: 1rem 1.15rem;
}

.omdin-payment-monitor-header h3 {
  color: var(--app-text);
  font-size: 1.08rem;
  font-weight: 800;
  margin: 0;
}

.omdin-payment-monitor-header p {
  color: var(--app-muted);
  font-size: .88rem;
  margin: .24rem 0 0;
}

.omdin-payment-actions {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  gap: .45rem;
  justify-content: flex-end;
}

.omdin-payment-actions .btn {
  align-items: center;
  display: inline-flex;
  gap: .35rem;
  min-height: 2.2rem;
}

.omdin-payment-summary {
  display: grid;
  gap: .75rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 1rem 1.15rem .75rem;
}

.omdin-payment-summary-item {
  background: #f8fafc;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  padding: .85rem;
}

.omdin-payment-summary-item span {
  color: var(--app-muted);
  display: block;
  font-size: .76rem;
  font-weight: 700;
  margin-bottom: .25rem;
}

.omdin-payment-summary-item strong {
  color: var(--app-text);
  display: block;
  font-size: 1.35rem;
  line-height: 1.1;
}

.omdin-payment-summary-item.is-paid strong {
  color: #15803d;
}

.omdin-payment-summary-item.is-unpaid strong {
  color: #b91c1c;
}

.omdin-payment-progress {
  background: #eef2f7;
  border-radius: 999px;
  height: .58rem;
  margin: 0 1.15rem 1rem;
  overflow: hidden;
}

.omdin-payment-progress span {
  background: linear-gradient(90deg, #15803d, var(--app-primary));
  border-radius: inherit;
  display: block;
  height: 100%;
}

.omdin-payment-list {
  display: grid;
  gap: .75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: 0 1.15rem 1.15rem;
}

.omdin-payment-row {
  background: #ffffff;
  border: 1px solid var(--app-border);
  border-left: 4px solid #b91c1c;
  border-radius: 8px;
  padding: .95rem;
}

.omdin-payment-row.is-paid {
  border-left-color: #15803d;
}

.omdin-payment-row-main {
  align-items: flex-start;
  display: grid;
  gap: .65rem;
  grid-template-columns: auto minmax(0, 1fr) auto;
}

.omdin-payment-index {
  align-items: center;
  background: #f1f5f9;
  border-radius: 8px;
  color: var(--app-muted);
  display: flex;
  font-size: .82rem;
  font-weight: 800;
  height: 2.25rem;
  justify-content: center;
  width: 2.25rem;
}

.omdin-payment-person h4 {
  color: var(--app-text);
  font-size: .98rem;
  font-weight: 800;
  line-height: 1.25;
  margin: 0 0 .35rem;
  overflow-wrap: anywhere;
}

.omdin-payment-meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: .35rem .7rem;
}

.omdin-payment-meta a,
.omdin-payment-meta span {
  align-items: center;
  color: var(--app-muted);
  display: inline-flex;
  font-size: .82rem;
  font-weight: 700;
  gap: .28rem;
  text-decoration: none;
}

.omdin-payment-meta a:hover {
  color: var(--app-primary);
}

.omdin-payment-status {
  border-radius: 999px;
  font-size: .76rem;
  font-weight: 800;
  padding: .36rem .58rem;
  white-space: nowrap;
}

.omdin-payment-status.is-paid {
  background: rgba(21, 128, 61, .1);
  color: #15803d;
}

.omdin-payment-status.is-unpaid {
  background: rgba(185, 28, 28, .1);
  color: #b91c1c;
}

.omdin-payment-row-detail {
  display: grid;
  gap: .55rem;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, .8fr);
  margin-top: .8rem;
}

.omdin-payment-row-detail span {
  background: #f8fafc;
  border-radius: 8px;
  padding: .62rem .7rem;
}

.omdin-payment-row-detail small {
  color: var(--app-muted);
  display: block;
  font-size: .72rem;
  font-weight: 700;
}

.omdin-payment-row-detail strong {
  color: var(--app-text);
  display: block;
  font-size: .86rem;
  line-height: 1.35;
  margin-top: .12rem;
  overflow-wrap: anywhere;
}

.omdin-payment-zero-action {
  align-items: center;
  background: rgba(185, 28, 28, .08);
  border-radius: 8px;
  color: #b91c1c;
  display: inline-flex;
  font-size: .82rem;
  font-weight: 800;
  gap: .35rem;
  margin-top: .75rem;
  padding: .55rem .7rem;
  text-decoration: none;
}

.omdin-payment-zero-action:hover {
  background: rgba(185, 28, 28, .13);
  color: #991b1b;
  text-decoration: none;
}

.omdin-empty-state {
  align-items: center;
  color: var(--app-muted);
  display: flex;
  flex-direction: column;
  gap: .35rem;
  padding: 2rem 1rem;
  text-align: center;
}

.omdin-empty-state i {
  background: #f1f5f9;
  border-radius: 8px;
  color: var(--app-primary);
  font-size: 1.15rem;
  height: 2.7rem;
  line-height: 2.7rem;
  width: 2.7rem;
}

.omdin-empty-state strong {
  color: var(--app-text);
}

.omdin-inc-page > button[data-target="#deletedPropsModal"],
.omdin-inc-page > button[data-target="#deletedPayModal"],
.omdin-app .app-content-grid > button[data-target="#deletedInterestModal"] {
  display: none;
}

.omdin-filter-shell,
.omdin-app .app-content-grid > .form-group,
.omdin-app .app-content-grid > .clearfix + .form-group {
  background: var(--app-surface);
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: var(--app-shadow-soft);
  margin-bottom: 1rem !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: 1rem;
}

.omdin-filter-shell .form-control,
.omdin-app .app-content-grid > .form-group .form-control {
  min-width: min(100%, 280px);
}

.omdin-app .app-content-grid > .clearfix {
  display: none;
}

.omdin-app .app-content-grid > .col-xl-2,
.omdin-app .app-content-grid > .col-xl-3,
.omdin-app .app-content-grid > .col-xl-4 {
  display: flex;
}

.omdin-app .app-content-grid > .col-xl-2 > .card,
.omdin-app .app-content-grid > .col-xl-3 > .card,
.omdin-app .app-content-grid > .col-xl-4 > .card {
  width: 100%;
}

.omdin-app .app-content-grid .card.border-left-info,
.omdin-app .app-content-grid .card.border-left-primary,
.omdin-app .app-content-grid .card.border-left-success,
.omdin-app .app-content-grid .card.border-left-warning,
.omdin-app .app-content-grid .card.border-left-danger {
  background: var(--app-surface);
  min-height: 8.5rem;
}

.omdin-app .app-content-grid .card.border-left-info .card-body,
.omdin-app .app-content-grid .card.border-left-primary .card-body,
.omdin-app .app-content-grid .card.border-left-success .card-body,
.omdin-app .app-content-grid .card.border-left-warning .card-body,
.omdin-app .app-content-grid .card.border-left-danger .card-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.omdin-app .app-content-grid .card .fa-2x {
  background: #f4f7fb;
  border-radius: 8px;
  font-size: 1.1rem;
  height: 2.5rem;
  line-height: 2.5rem;
  text-align: center;
  width: 2.5rem;
}

.omdin-app .app-content-grid .card .h5 {
  font-size: 1.28rem;
  line-height: 1.35;
}

.omdin-app .card-header[data-toggle],
.omdin-app a.card-header[data-toggle],
.omdin-app .card > a.card-header {
  align-items: center;
  color: var(--app-text);
  display: flex !important;
  justify-content: space-between;
  text-decoration: none;
}

.omdin-app .card > a.card-header::after {
  color: var(--app-muted);
  content: "เปิด/ปิด";
  font-size: .76rem;
  font-weight: 700;
}

.omdin-app .card > a.card-header:hover {
  background: #f8fafc;
  color: var(--app-primary);
}

.omdin-app .modal-body .table-responsive,
.omdin-app .modal-body table {
  font-size: .9rem;
}

.omdin-app .table .btn,
.omdin-app td .btn {
  margin: .12rem;
}

.omdin-app .form-check {
  align-items: center;
  background: #f8fafc;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  display: flex;
  gap: .5rem;
  padding: .75rem .9rem;
}

.omdin-app .dropdown-menu {
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: var(--app-shadow-soft);
}

.omdin-app .dropdown-item {
  color: var(--app-text);
  font-weight: 600;
  padding: .65rem 1rem;
}

.omdin-app .dropdown-item:hover {
  background: rgba(15, 118, 110, .08);
  color: var(--app-primary);
}

.omdin-app .omdin-user-menu {
  min-width: 13rem;
  padding: .45rem;
}

.omdin-app .omdin-user-menu-head {
  display: flex;
  flex-direction: column;
  gap: .1rem;
  padding: .45rem .55rem .35rem;
}

.omdin-app .omdin-user-menu-head span {
  color: var(--app-muted);
  font-size: .72rem;
  font-weight: 700;
}

.omdin-app .omdin-user-menu-head strong {
  color: var(--app-text);
  font-size: .88rem;
  overflow-wrap: anywhere;
}

.omdin-app .dropdown-item.omdin-user-logout {
  align-items: center;
  border-radius: 8px;
  color: var(--app-danger);
  display: flex;
  font-weight: 800;
}

.omdin-app .dropdown-item.omdin-user-logout:hover {
  background: rgba(185, 101, 73, .12);
  color: var(--app-danger);
}

.omdin-app .dataTables_wrapper .dataTables_length select,
.omdin-app .dataTables_wrapper .dataTables_filter input,
.omdin-app .select2-container .select2-choice,
.omdin-app .select2-container .select2-selection,
.omdin-app .select2-container--default .select2-selection--single {
  border: 1px solid #cbd5e1 !important;
  border-radius: 8px !important;
  min-height: 2.45rem;
}

.omdin-app .select2-container {
  max-width: 100%;
  width: 100% !important;
}

.omdin-app .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--app-text);
  line-height: 2.45rem;
  padding-left: .85rem;
  padding-right: 2rem;
}

.omdin-app .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 2.45rem;
  right: .35rem;
}

.omdin-app .select2-container--default.select2-container--focus .select2-selection--single,
.omdin-app .select2-container--default.select2-container--open .select2-selection--single {
  border-color: rgba(111, 146, 95, .72) !important;
  box-shadow: 0 0 0 3px rgba(111, 146, 95, .14);
}

.omdin-app .select2-dropdown {
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: var(--app-shadow-soft);
  overflow: hidden;
  z-index: 2055;
}

.mfp-wrap .select2-container,
.mfp-wrap .select2-dropdown,
.omdin-ajax-layer .select2-container,
.omdin-ajax-layer .select2-dropdown,
body.omdin-ajax-layer-open > .select2-container {
  z-index: 12050 !important;
}

.omdin-app .select2-search--dropdown {
  padding: .65rem;
}

.omdin-app .select2-search--dropdown .select2-search__field {
  border: 1px solid var(--app-border);
  border-radius: 8px;
  min-height: 2.25rem;
  outline: none;
  padding: .4rem .65rem;
}

.omdin-app .select2-results__option {
  color: var(--app-text);
  padding: .55rem .75rem;
}

.omdin-app .select2-container--default .select2-results__option--highlighted[aria-selected] {
  background: var(--app-primary);
  color: #fff;
}

/* Hide the select2 "clear selection" (x) button everywhere. The app loads a mix of
   select2 v3.x and v4.x across different pages, so both markup variants are covered:
   select2-selection__clear (v4) and select2-search-choice-close (v3). */
.select2-selection__clear,
.select2-search-choice-close {
  display: none !important;
}

.omdin-app .dataTables_wrapper .dataTables_filter input {
  margin-left: .5rem;
  padding: .45rem .75rem;
}

.omdin-app .dataTables_wrapper .dataTables_paginate .paginate_button,
.omdin-app .page-link {
  border-radius: 8px !important;
}

.omdin-app .page-item.active .page-link {
  background: var(--app-primary);
  border-color: var(--app-primary);
}

.omdin-app .dataTables_wrapper .row {
  row-gap: .75rem;
}

.omdin-app .dataTables_wrapper .dataTables_length label,
.omdin-app .dataTables_wrapper .dataTables_filter label {
  color: var(--app-muted);
  font-size: .86rem;
  font-weight: 800;
}

.omdin-app .dataTables_wrapper .dataTables_info {
  color: var(--app-muted);
  font-size: .86rem;
  font-weight: 700;
}

.omdin-app .text-primary {
  color: var(--app-primary) !important;
}

.omdin-app .bg-gradient-primary,
.omdin-login .bg-gradient-primary {
  background-color: var(--app-primary) !important;
  background-image: none !important;
}

.omdin-app .swal-modal {
  border-radius: 8px;
}

.omdin-app .swal-button {
  background-color: var(--app-primary);
  border-radius: 8px;
}

.omdin-login .custom-control-label {
  color: var(--app-muted);
  font-weight: 600;
}

.omdin-login .btn-google,
.omdin-login .btn-info {
  border: 1px solid var(--app-border);
}

.omdin-login .btn-info {
  background: var(--app-primary);
  border-color: var(--app-primary);
}

.omdin-login .btn-google {
  background: #ffffff;
  color: var(--app-text);
}

.omdin-login .btn-google:hover {
  background: #f8fafc;
  color: var(--app-primary);
}

.omdin-login hr {
  border-color: var(--app-border);
}

.omdin-login .card-body.p-0 {
  padding: .9rem !important;
}

body.omdin-login.bg-gradient-primary {
  align-items: center;
  background:
    linear-gradient(135deg, rgba(32, 36, 44, .94), rgba(15, 118, 110, .78)),
    url("../img/bg-login.jpg") center / cover no-repeat !important;
  display: flex;
  min-height: 100vh;
}

.omdin-login .container {
  max-width: 1040px;
}

.omdin-login .row.justify-content-center {
  align-items: center;
  min-height: calc(100vh - 3rem);
}

.omdin-login .card.o-hidden {
  overflow: hidden;
}

.omdin-login .card.o-hidden .row {
  min-height: 520px;
}

.omdin-login .bg-login-image {
  background-position: center;
  background-size: cover;
  min-height: 520px;
  position: relative;
}

.omdin-login .bg-login-image::after {
  background: linear-gradient(180deg, rgba(23, 32, 51, .08), rgba(23, 32, 51, .34));
  content: "";
  inset: 0;
  position: absolute;
}

.omdin-login .p-5 {
  padding: 3rem !important;
}

.omdin-login .alert {
  background: #edf7f5;
  border-color: #b9dfd8;
  color: #0b5f59;
}

.omdin-login .form-control-user {
  border-radius: 8px !important;
  font-size: .95rem;
  height: auto;
  padding: .9rem 1rem;
}

.omdin-login .btn-user {
  border-radius: 8px !important;
  padding: .85rem 1rem;
}

.omdin-login #installButton {
  background: var(--app-primary);
  border-radius: 8px;
}

.omdin-login .card:not(.o-hidden) {
  background: rgba(255, 255, 255, .92);
  margin-bottom: 1.5rem;
}

@media (min-width: 768px) {
  .omdin-app #wrapper {
    display: block !important;
  }

  .omdin-app .omdin-legacy-menu {
    display: none !important;
  }

  .omdin-app #content-wrapper {
    margin-left: 0 !important;
    min-height: 100vh;
    width: 100% !important;
  }

  .omdin-app .topbar {
    margin-bottom: 0 !important;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .omdin-app .topbar #sidebarToggleTop {
    display: none;
  }

  .omdin-app .sidebar.toggled .nav-link span,
  .omdin-app .sidebar.toggled .sidebar-brand-text {
    display: none;
  }
}

@media (max-width: 991.98px) {
  .omdin-login .card.o-hidden .row,
  .omdin-login .bg-login-image {
    min-height: auto;
  }

  .omdin-login .p-5 {
    padding: 2rem !important;
  }

  .omdin-app .dataTables_wrapper .row {
    row-gap: .7rem;
  }

  .omdin-app .dataTables_wrapper .dataTables_filter,
  .omdin-app .dataTables_wrapper .dataTables_length {
    text-align: left;
  }
}

@media (max-width: 767.98px) {
  body.omdin-app {
    padding-bottom: 5.25rem;
  }

  .omdin-app #wrapper {
    display: block;
  }

  .omdin-app .sidebar {
    bottom: 0;
    box-shadow: 14px 0 36px rgba(17, 24, 39, .22);
    height: 100vh;
    left: 0;
    overflow-y: auto;
    padding-bottom: 1rem;
    position: fixed;
    top: 0;
    transform: translateX(-105%);
    transition: transform .22s ease;
    width: min(84vw, 19rem) !important;
    z-index: 1050;
  }

  .omdin-app.sidebar-mobile-open .sidebar {
    transform: translateX(0);
  }

  .omdin-app.sidebar-mobile-open::before {
    background: rgba(15, 23, 42, .42);
    content: "";
    inset: 0;
    position: fixed;
    z-index: 1040;
  }

  .omdin-app .sidebar .sidebar-brand {
    justify-content: flex-start !important;
  }

  .omdin-app .sidebar .sidebar-brand-text,
  .omdin-app .sidebar .nav-link span {
    display: inline !important;
  }

  .omdin-app #content-wrapper {
    margin-left: 0;
    min-height: 100vh;
    width: 100%;
  }

  .omdin-app .topbar {
    border-bottom: 1px solid var(--app-border);
    gap: .55rem;
    min-height: 3.75rem;
    padding-left: .75rem;
    padding-right: .75rem;
  }

  .omdin-app .topbar #sidebarToggleTop {
    background: rgba(15, 118, 110, .1);
    border-radius: 8px !important;
    color: var(--app-primary) !important;
    flex: 0 0 auto;
    height: 2.55rem;
    margin-right: 0 !important;
    order: -1;
    width: 2.55rem;
  }

  .omdin-topbar-brand {
    flex: 1 1 auto;
    margin-right: 0;
  }

  .omdin-topbar-brand .brand-mark {
    height: 2.25rem;
    width: 2.25rem;
  }

  .omdin-topbar-brand small {
    display: none;
  }

  .omdin-workspace-nav {
    display: none;
  }

  .omdin-app .container-fluid {
    padding: .9rem;
  }

  .omdin-app .container-fluid > .d-sm-flex.align-items-center.justify-content-between.mb-4 {
    padding: .9rem;
  }

  .omdin-app .container-fluid > .d-sm-flex h1 {
    font-size: 1rem;
  }

  .omdin-app .app-content-grid {
    margin-left: -.45rem;
    margin-right: -.45rem;
    row-gap: .9rem;
  }

  .omdin-module-hero {
    align-items: flex-start;
    flex-direction: column;
    gap: .8rem;
    min-height: auto;
    padding: .9rem;
  }

  .omdin-module-hero h2 {
    font-size: 1.05rem;
  }

  .omdin-module-hero p {
    font-size: .84rem;
  }

  .omdin-module-actions {
    justify-content: flex-start;
    width: 100%;
  }

  .omdin-payment-monitor-header {
    flex-direction: column;
    padding: .95rem;
  }

  .omdin-payment-monitor-header h3 {
    font-size: 1rem;
  }

  .omdin-payment-monitor-header p {
    font-size: .82rem;
  }

  .omdin-payment-actions {
    justify-content: flex-start;
    width: 100%;
  }

  .omdin-payment-actions .btn {
    flex: 1 1 7rem;
    justify-content: center;
  }

  .omdin-payment-summary {
    gap: .55rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: .85rem .95rem .7rem;
  }

  .omdin-payment-summary-item {
    padding: .75rem;
  }

  .omdin-payment-summary-item strong {
    font-size: 1.16rem;
  }

  .omdin-payment-progress {
    margin-left: .95rem;
    margin-right: .95rem;
  }

  .omdin-payment-list {
    grid-template-columns: 1fr;
    padding: 0 .95rem .95rem;
  }

  .omdin-payment-row {
    padding: .82rem;
  }

  .omdin-payment-row-main {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .omdin-payment-status {
    grid-column: 1 / -1;
    justify-self: start;
  }

  .omdin-payment-row-detail {
    grid-template-columns: 1fr;
  }

  .omdin-app .app-content-grid > [class*="col-"],
  .omdin-app .app-content-grid > .col-lg-12,
  .omdin-app .app-content-grid > .col-md-12,
  .omdin-app .app-content-grid > .col-12 {
    padding-left: .45rem;
    padding-right: .45rem;
  }

  .omdin-app .card-body {
    padding: .95rem;
  }

  .omdin-app .table-responsive {
    margin-bottom: .35rem;
  }

  .omdin-app .table {
    min-width: 680px;
  }

  .omdin-app .btn {
    min-height: 2.75rem;
    padding-left: .8rem;
    padding-right: .8rem;
  }

  .omdin-app .btn-circle {
    min-height: 2.55rem;
    min-width: 2.55rem;
  }

  .omdin-app .form-control,
  .omdin-app .custom-select,
  .omdin-app select,
  .omdin-app textarea {
    font-size: 16px;
    min-height: 2.8rem;
  }

  .omdin-app .topbar .navbar-nav {
    margin-left: auto;
  }

  .omdin-app .topbar .dropdown-toggle {
    min-height: 2.75rem;
  }

  .omdin-app .topbar .omdin-user-menu {
    position: absolute;
    right: 0;
    left: auto;
    min-width: min(82vw, 15rem);
  }

  .omdin-app .modal-dialog {
    margin: .7rem;
  }

  .omdin-app .modal-content {
    max-height: calc(100vh - 1.4rem);
    overflow: auto;
  }

  .omdin-app .dataTables_wrapper .dataTables_filter input {
    margin-left: 0;
    margin-top: .35rem;
    width: 100%;
  }

  .omdin-app .dataTables_wrapper .dataTables_length select {
    min-width: 4.5rem;
  }

  .omdin-mobile-nav {
    align-items: center;
    background: rgba(255, 255, 255, .96);
    border: 1px solid var(--app-border);
    border-radius: 8px 8px 0 0;
    bottom: 0;
    box-shadow: 0 -8px 28px rgba(31, 41, 51, .12);
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: .15rem;
    left: .5rem;
    padding: .4rem .35rem calc(.45rem + env(safe-area-inset-bottom));
    position: fixed;
    right: .5rem;
    z-index: 1030;
  }

  .omdin-mobile-nav a {
    align-items: center;
    border-radius: 8px;
    color: var(--app-muted);
    display: flex;
    flex-direction: column;
    font-size: .68rem;
    font-weight: 700;
    gap: .22rem;
    justify-content: center;
    line-height: 1.1;
    min-height: 3.15rem;
    text-decoration: none;
  }

  .omdin-mobile-nav a i {
    font-size: 1rem;
  }

  .omdin-mobile-nav a.active {
    background: rgba(15, 118, 110, .1);
    color: var(--app-primary);
  }

  .omdin-login .row.justify-content-center {
    min-height: auto;
    padding: 1rem 0;
  }
}

/* Warm natural theme inspired by the requested dashboard direction. */
body.omdin-app,
.omdin-app #content-wrapper {
  background:
    linear-gradient(180deg, #fbf4eb 0%, #f2e5d4 46%, #ead6c2 100%) !important;
}

.omdin-app * {
  scrollbar-color: #c8a888 transparent;
}

.omdin-app ::selection {
  background: rgba(101, 134, 83, .2);
}

.omdin-app .sidebar {
  background: linear-gradient(180deg, #ead8c1 0%, #d7b995 100%) !important;
  border-right: 1px solid rgba(118, 78, 48, .12);
  box-shadow: 10px 0 26px rgba(91, 60, 38, .1);
}

.omdin-app .sidebar-dark .sidebar-heading,
.omdin-app .sidebar-dark .nav-item .nav-link,
.omdin-app .sidebar-dark .nav-item .nav-link i,
.omdin-app .sidebar .sidebar-brand-text {
  color: #704b31;
}

.omdin-app .sidebar .sidebar-brand-icon,
.omdin-topbar-brand .brand-mark {
  background: rgba(101, 134, 83, .14);
  border: 1px solid rgba(101, 134, 83, .24);
  color: var(--app-primary);
}

.omdin-app .sidebar-dark .nav-item.active .nav-link,
.omdin-app .sidebar-dark .nav-item .nav-link:hover,
.omdin-app .sidebar-dark .nav-item .nav-link.btn:hover {
  background: rgba(255, 250, 242, .72);
  color: var(--app-text);
}

.omdin-app .sidebar-dark .nav-item.active .nav-link i,
.omdin-app .sidebar-dark .nav-item .nav-link:hover i {
  color: var(--app-primary);
}

.omdin-app .topbar,
.omdin-workspace-nav {
  background: rgba(255, 250, 242, .88) !important;
  border-color: rgba(118, 78, 48, .13);
  backdrop-filter: blur(12px);
}

.omdin-app.app-scrolled .topbar,
.omdin-app .topbar {
  box-shadow: 0 10px 26px rgba(91, 60, 38, .08) !important;
}

.omdin-workspace-nav {
  box-shadow: 0 8px 18px rgba(91, 60, 38, .06);
}

.omdin-workspace-nav a {
  color: #76553c;
}

.omdin-workspace-nav a:hover {
  background: rgba(255, 250, 242, .82);
  border-color: rgba(118, 78, 48, .18);
  color: var(--app-text);
}

.omdin-workspace-nav a.active {
  background: rgba(101, 134, 83, .16);
  border-color: rgba(101, 134, 83, .28);
  color: var(--app-primary-strong);
}

.omdin-app .container-fluid > .d-sm-flex.align-items-center.justify-content-between.mb-4,
.omdin-app .card,
.omdin-login .card,
.omdin-filter-shell,
.omdin-app .app-content-grid > .form-group,
.omdin-app .app-content-grid > .clearfix + .form-group,
.omdin-payment-monitor {
  background: rgba(255, 250, 242, .92) !important;
  border-color: rgba(118, 78, 48, .15) !important;
  box-shadow: 0 16px 34px rgba(91, 60, 38, .11) !important;
}

.omdin-app .card-header {
  background: rgba(255, 250, 242, .9);
  border-color: rgba(118, 78, 48, .12);
}

.omdin-module-hero {
  background:
    linear-gradient(135deg, rgba(255, 250, 242, .96) 0%, rgba(243, 230, 211, .92) 58%, rgba(227, 210, 191, .88) 100%);
  border-color: rgba(118, 78, 48, .14);
  box-shadow: 0 18px 38px rgba(91, 60, 38, .1);
}

.omdin-module-eyebrow,
.omdin-section-eyebrow {
  color: var(--app-primary-strong);
}

.omdin-app .form-control,
.omdin-app .custom-select,
.omdin-app select,
.omdin-app textarea,
.omdin-login .form-control,
.omdin-app .dataTables_wrapper .dataTables_length select,
.omdin-app .dataTables_wrapper .dataTables_filter input,
.omdin-app .select2-container .select2-choice,
.omdin-app .select2-container .select2-selection,
.omdin-app .select2-container--default .select2-selection--single {
  background-color: #fffdf8 !important;
  border-color: #d9c4ad !important;
  color: var(--app-text);
}

.omdin-app .input-group-text {
  background: #f0dfcb;
  border-color: #d9c4ad;
  color: var(--app-muted);
  font-weight: 700;
}

.omdin-app label,
.omdin-app .table thead th {
  color: #68462e;
}

.omdin-app .btn-primary,
.omdin-login .btn-primary,
.omdin-login .btn-danger,
.omdin-app .swal-button,
.omdin-login #installButton {
  background: linear-gradient(180deg, #78955f 0%, #5f7f48 100%);
  border-color: #5f7f48;
  color: #ffffff;
}

.omdin-app .btn-primary:hover,
.omdin-login .btn-primary:hover,
.omdin-login .btn-danger:hover {
  background: linear-gradient(180deg, #6a8754 0%, #4f6f3f 100%);
  border-color: #4f6f3f;
}

.omdin-app .btn-success,
.omdin-login .btn-success {
  background: linear-gradient(180deg, #78955f 0%, #5e7b4b 100%);
  border-color: #5e7b4b;
}

.omdin-app .btn-warning {
  background: linear-gradient(180deg, #e3bd67 0%, #c99b46 100%);
  border-color: #c99b46;
  color: #fffaf2;
}

.omdin-app .btn-danger {
  background: linear-gradient(180deg, #c87859 0%, #aa563f 100%);
  border-color: #aa563f;
}

.omdin-app .btn-info {
  background: linear-gradient(180deg, #8ca186 0%, #6f8a67 100%);
  border-color: #6f8a67;
  color: #fffaf2;
}

.omdin-app .btn-outline-secondary {
  background: rgba(255, 250, 242, .72);
  border-color: #b99b7d;
  color: var(--app-text);
}

.omdin-app .btn-outline-secondary:hover {
  background: #ead8c1;
  border-color: #a17b5c;
  color: var(--app-text);
}

.omdin-app .badge-primary {
  background-color: #6f8a67;
}

.omdin-app .badge-success {
  background-color: #6f925f;
}

.omdin-app .badge-danger {
  background-color: #b96549;
}

.omdin-app .badge-warning {
  background-color: #d9ad56;
  color: #fffaf2;
}

.omdin-app .table-responsive {
  border-color: rgba(118, 78, 48, .14);
  box-shadow: 0 10px 24px rgba(91, 60, 38, .07);
}

.omdin-app .table {
  background: rgba(255, 250, 242, .96);
}

.omdin-app .table thead th {
  background: #efe1ce;
  border-color: rgba(118, 78, 48, .13);
  text-transform: none;
}

.omdin-app .table td,
.omdin-app .table th {
  border-color: rgba(118, 78, 48, .1);
}

.omdin-app .table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(243, 230, 211, .36);
}

.omdin-app .table-hover tbody tr:hover {
  background-color: rgba(101, 134, 83, .08);
}

.omdin-app .app-content-grid .card.border-left-info,
.omdin-app .app-content-grid .card.border-left-primary,
.omdin-app .app-content-grid .card.border-left-success,
.omdin-app .app-content-grid .card.border-left-warning,
.omdin-app .app-content-grid .card.border-left-danger {
  border: 0 !important;
  box-shadow: 0 18px 34px rgba(91, 60, 38, .14) !important;
}

.omdin-app .app-content-grid .card.border-left-info {
  background: linear-gradient(135deg, #efd177 0%, #c99b46 100%) !important;
}

.omdin-app .app-content-grid .card.border-left-primary {
  background: linear-gradient(135deg, #8aa676 0%, #5f7f48 100%) !important;
}

.omdin-app .app-content-grid .card.border-left-success {
  background: linear-gradient(135deg, #7f9a68 0%, #4f6f3f 100%) !important;
}

.omdin-app .app-content-grid .card.border-left-warning {
  background: linear-gradient(135deg, #dfbd6d 0%, #b97947 100%) !important;
}

.omdin-app .app-content-grid .card.border-left-danger {
  background: linear-gradient(135deg, #c87859 0%, #a9513f 100%) !important;
}

.omdin-app .border-left-primary::before,
.omdin-app .border-left-success::before,
.omdin-app .border-left-info::before,
.omdin-app .border-left-warning::before,
.omdin-app .border-left-danger::before {
  display: none;
}

.omdin-app .app-content-grid .card.border-left-info [class*="text-"],
.omdin-app .app-content-grid .card.border-left-primary [class*="text-"],
.omdin-app .app-content-grid .card.border-left-success [class*="text-"],
.omdin-app .app-content-grid .card.border-left-warning [class*="text-"],
.omdin-app .app-content-grid .card.border-left-danger [class*="text-"],
.omdin-app .app-content-grid .card.border-left-info .h5,
.omdin-app .app-content-grid .card.border-left-primary .h5,
.omdin-app .app-content-grid .card.border-left-success .h5,
.omdin-app .app-content-grid .card.border-left-warning .h5,
.omdin-app .app-content-grid .card.border-left-danger .h5 {
  color: rgba(255, 250, 242, .98) !important;
  text-shadow: 0 2px 8px rgba(74, 44, 26, .18);
}

.omdin-app .app-content-grid .card.border-left-info .fa-2x,
.omdin-app .app-content-grid .card.border-left-primary .fa-2x,
.omdin-app .app-content-grid .card.border-left-success .fa-2x,
.omdin-app .app-content-grid .card.border-left-warning .fa-2x,
.omdin-app .app-content-grid .card.border-left-danger .fa-2x {
  background: rgba(255, 250, 242, .16);
  color: rgba(255, 250, 242, .8) !important;
}

.omdin-app .progress {
  background-color: rgba(255, 250, 242, .3);
}

.omdin-app .progress-bar,
.omdin-payment-progress span {
  background: linear-gradient(90deg, #f0cd70 0%, #6f925f 100%) !important;
}

.omdin-payment-monitor-header {
  background: rgba(255, 250, 242, .55);
  border-color: rgba(118, 78, 48, .12);
}

.omdin-payment-summary-item,
.omdin-payment-row-detail span,
.omdin-empty-state i,
.omdin-payment-index,
.omdin-app .form-check {
  background: rgba(243, 230, 211, .62);
  border-color: rgba(118, 78, 48, .12);
}

.omdin-payment-row {
  background: rgba(255, 250, 242, .9);
  border-color: rgba(118, 78, 48, .14);
  border-left-color: #b96549;
  box-shadow: 0 8px 18px rgba(91, 60, 38, .08);
}

.omdin-payment-row.is-paid {
  border-left-color: #6f925f;
}

.omdin-payment-status.is-paid {
  background: rgba(111, 146, 95, .16);
  color: #4f6f3f;
}

.omdin-payment-status.is-unpaid,
.omdin-payment-zero-action {
  background: rgba(185, 101, 73, .14);
  color: #9f4e38;
}

.omdin-payment-summary-item.is-paid strong {
  color: #4f6f3f;
}

.omdin-payment-summary-item.is-unpaid strong {
  color: #9f4e38;
}

.omdin-app .dropdown-menu,
.omdin-app .modal-content {
  background: #fffaf2;
  border-color: rgba(118, 78, 48, .13);
}

.omdin-app .dropdown-item:hover,
.omdin-app .card > a.card-header:hover {
  background: rgba(101, 134, 83, .1);
  color: var(--app-primary-strong);
}

.omdin-app .page-item.active .page-link {
  background: var(--app-primary);
  border-color: var(--app-primary);
}

.omdin-app .text-primary {
  color: var(--app-primary-strong) !important;
}

.omdin-app .text-info {
  color: #6f8a67 !important;
}

.omdin-app .text-success {
  color: #5f7f48 !important;
}

.omdin-app .text-warning {
  color: #c99b46 !important;
}

.omdin-app .text-danger {
  color: #b96549 !important;
}

.omdin-app .bg-primary,
.omdin-app .bg-info {
  background-color: #6f8a67 !important;
}

.omdin-app .bg-success {
  background-color: #6f925f !important;
}

.omdin-app .bg-warning {
  background-color: #d9ad56 !important;
}

.omdin-app .bg-danger {
  background-color: #b96549 !important;
}

.omdin-login .card:not(.o-hidden),
.omdin-login .card.o-hidden {
  background: rgba(255, 250, 242, .93);
  border-color: rgba(118, 78, 48, .15) !important;
}

body.omdin-login.bg-gradient-primary {
  background:
    linear-gradient(135deg, rgba(193, 113, 77, .88) 0%, rgba(237, 213, 177, .92) 44%, rgba(111, 146, 95, .72) 100%) !important;
}

.omdin-login .bg-login-image::after {
  background: linear-gradient(180deg, rgba(255, 250, 242, .08), rgba(91, 60, 38, .28));
}

.omdin-login .alert {
  background: #f1ead8;
  border-color: #d9c4ad;
  color: var(--app-primary-strong);
}

@media (max-width: 767.98px) {
  body.omdin-app,
  .omdin-app #content-wrapper {
    background: linear-gradient(180deg, #fbf4eb 0%, #f2e4d3 100%) !important;
  }

  .omdin-app .topbar {
    background: rgba(255, 250, 242, .94) !important;
  }

  .omdin-app .topbar #sidebarToggleTop {
    background: rgba(101, 134, 83, .14);
    color: var(--app-primary-strong) !important;
  }

  .omdin-mobile-nav {
    background: rgba(255, 250, 242, .95);
    border-color: rgba(118, 78, 48, .16);
    box-shadow: 0 -12px 30px rgba(91, 60, 38, .14);
    backdrop-filter: blur(10px);
  }

  .omdin-mobile-nav a {
    color: #7a5a43;
  }

  .omdin-mobile-nav a.active {
    background: rgba(101, 134, 83, .16);
    color: var(--app-primary-strong);
  }

  .omdin-app .sidebar {
    background: linear-gradient(180deg, #ead8c1 0%, #d7b995 100%) !important;
    box-shadow: 18px 0 44px rgba(91, 60, 38, .22);
  }
}

body.omdin-app.bg-gradient-primary {
  background:
    linear-gradient(180deg, #fbf4eb 0%, #f2e5d4 46%, #ead6c2 100%) !important;
  background-image: linear-gradient(180deg, #fbf4eb 0%, #f2e5d4 46%, #ead6c2 100%) !important;
}

.omdin-standalone-page,
.omdin-print-page {
  color: var(--app-text);
  min-height: 100vh;
  padding: 1.25rem 0;
}

.omdin-standalone-page .container,
.omdin-print-page .container {
  background: rgba(255, 250, 242, .94) !important;
  border: 1px solid rgba(118, 78, 48, .15);
  border-radius: 8px;
  box-shadow: 0 18px 38px rgba(91, 60, 38, .12);
  margin-bottom: 1.25rem;
  padding-bottom: 1.25rem;
  padding-top: 1.25rem;
}

.omdin-print-page .invoice {
  background: transparent;
}

.omdin-print-page .table-striped tbody tr:nth-of-type(odd),
.omdin-print-page .table-striped tbody tr:nth-of-type(2n+1) {
  background-color: rgba(243, 230, 211, .45) !important;
}

@media print {
  body.omdin-print-page {
    background: #ffffff !important;
    padding: 0;
  }

  .omdin-print-page .container {
    border: 0;
    box-shadow: none;
    margin: 0;
    max-width: none;
    padding: 0;
  }
}

/* Premium minimal refinement: quieter colors, lighter cards, denser information. */
:root {
  --app-bg: #f6f3ee;
  --app-surface: #fffdf9;
  --app-surface-soft: #f8f2ea;
  --app-sidebar: #fbf6ef;
  --app-sidebar-strong: #eee3d4;
  --app-text: #312a24;
  --app-muted: #756b61;
  --app-border: #e9dfd3;
  --app-primary: #5d7558;
  --app-primary-strong: #435f40;
  --app-success: #5d7f55;
  --app-warning: #b48743;
  --app-danger: #a85f4e;
  --app-terracotta: #a85f4e;
  --app-focus: rgba(93, 117, 88, .18);
  --app-shadow: 0 14px 32px rgba(49, 42, 36, .07);
  --app-shadow-soft: 0 6px 18px rgba(49, 42, 36, .055);
}

body.omdin-app,
.omdin-app #content-wrapper,
body.omdin-app.bg-gradient-primary {
  background: #f6f3ee !important;
  background-image:
    radial-gradient(circle at top left, rgba(184, 137, 82, .1), transparent 34rem),
    linear-gradient(180deg, #faf7f2 0%, #f6f3ee 45%, #f2ece4 100%) !important;
}

.omdin-app .container-fluid {
  max-width: 1640px;
}

.omdin-app .topbar,
.omdin-workspace-nav {
  background: rgba(255, 253, 249, .94) !important;
  border-color: rgba(76, 63, 51, .09);
  box-shadow: 0 1px 0 rgba(76, 63, 51, .06) !important;
}

.omdin-workspace-nav {
  gap: .25rem;
  padding-bottom: .55rem;
  padding-top: .55rem;
}

.omdin-workspace-nav a {
  border-radius: 8px;
  color: #655a4f;
  min-height: 2.35rem;
  padding: .48rem .74rem;
}

.omdin-workspace-nav a:hover {
  background: #f4eee6;
  border-color: transparent;
}

.omdin-workspace-nav a.active {
  background: #eaf1e7;
  border-color: transparent;
  color: var(--app-primary-strong);
}

.omdin-topbar-brand .brand-mark,
.omdin-app .sidebar .sidebar-brand-icon {
  background: #eaf1e7;
  border-color: #d7e4d2;
  color: var(--app-primary-strong);
}

.omdin-app .container-fluid > .d-sm-flex.align-items-center.justify-content-between.mb-4,
.omdin-app .card,
.omdin-login .card,
.omdin-filter-shell,
.omdin-app .app-content-grid > .form-group,
.omdin-app .app-content-grid > .clearfix + .form-group,
.omdin-payment-monitor,
.omdin-standalone-page .container,
.omdin-print-page .container {
  background: rgba(255, 253, 249, .96) !important;
  border: 1px solid var(--app-border) !important;
  box-shadow: var(--app-shadow-soft) !important;
}

.omdin-module-hero {
  background: rgba(255, 253, 249, .96);
  border-color: var(--app-border);
  box-shadow: var(--app-shadow-soft);
  min-height: 4.7rem;
  position: relative;
}

.omdin-module-hero::before {
  background: var(--app-primary);
  border-radius: 8px 0 0 8px;
  content: "";
  inset: 0 auto 0 0;
  position: absolute;
  width: 3px;
}

.omdin-module-hero h2,
.omdin-payment-monitor-header h3 {
  color: var(--app-text) !important;
}

.omdin-module-hero p,
.omdin-payment-monitor-header p {
  color: var(--app-muted);
}

.omdin-app .card-header {
  background: rgba(255, 253, 249, .96);
  border-color: var(--app-border);
}

.omdin-app .form-control,
.omdin-app .custom-select,
.omdin-app select,
.omdin-app textarea,
.omdin-login .form-control,
.omdin-app .dataTables_wrapper .dataTables_length select,
.omdin-app .dataTables_wrapper .dataTables_filter input,
.omdin-app .select2-container .select2-choice,
.omdin-app .select2-container .select2-selection,
.omdin-app .select2-container--default .select2-selection--single {
  background: #fffdf9 !important;
  border-color: #dcd1c5 !important;
}

.omdin-app .input-group-text {
  background: #f3ece4;
  border-color: #dcd1c5;
}

.omdin-app .btn,
.omdin-login .btn {
  box-shadow: none !important;
}

.omdin-app .btn-primary,
.omdin-login .btn-primary,
.omdin-login .btn-danger,
.omdin-app .swal-button,
.omdin-login #installButton,
.omdin-app .btn-success,
.omdin-login .btn-success {
  background: var(--app-primary);
  border-color: var(--app-primary);
  color: #ffffff;
}

.omdin-app .btn-primary:hover,
.omdin-login .btn-primary:hover,
.omdin-login .btn-danger:hover,
.omdin-app .btn-success:hover {
  background: var(--app-primary-strong);
  border-color: var(--app-primary-strong);
}

.omdin-app .btn-warning {
  background: #f2e6d4;
  border-color: #e0ccb4;
  color: #6b4c2f;
}

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

.omdin-app .btn-info {
  background: #edf3ea;
  border-color: #d9e6d4;
  color: var(--app-primary-strong);
}

.omdin-app .btn-info:hover {
  background: #dfeadd;
  color: var(--app-primary-strong);
}

.omdin-app .app-content-grid .card.border-left-info,
.omdin-app .app-content-grid .card.border-left-primary,
.omdin-app .app-content-grid .card.border-left-success,
.omdin-app .app-content-grid .card.border-left-warning,
.omdin-app .app-content-grid .card.border-left-danger {
  background: rgba(255, 253, 249, .98) !important;
  border: 1px solid var(--app-border) !important;
  box-shadow: var(--app-shadow-soft) !important;
  min-height: 6.7rem;
  overflow: hidden;
  position: relative;
}

.omdin-app .app-content-grid .card.border-left-info::before,
.omdin-app .app-content-grid .card.border-left-primary::before,
.omdin-app .app-content-grid .card.border-left-success::before,
.omdin-app .app-content-grid .card.border-left-warning::before,
.omdin-app .app-content-grid .card.border-left-danger::before {
  border-radius: 8px 0 0 8px;
  content: "";
  display: block;
  inset: 0 auto 0 0;
  position: absolute;
  width: 3px;
}

.omdin-app .app-content-grid .card.border-left-info::before,
.omdin-app .app-content-grid .card.border-left-warning::before {
  background: var(--app-warning);
}

.omdin-app .app-content-grid .card.border-left-primary::before,
.omdin-app .app-content-grid .card.border-left-success::before {
  background: var(--app-primary);
}

.omdin-app .app-content-grid .card.border-left-danger::before {
  background: var(--app-danger);
}

.omdin-app .app-content-grid .card.border-left-info [class*="text-"],
.omdin-app .app-content-grid .card.border-left-primary [class*="text-"],
.omdin-app .app-content-grid .card.border-left-success [class*="text-"],
.omdin-app .app-content-grid .card.border-left-warning [class*="text-"],
.omdin-app .app-content-grid .card.border-left-danger [class*="text-"] {
  color: var(--app-muted) !important;
  text-shadow: none;
}

.omdin-app .app-content-grid .card.border-left-info .h5,
.omdin-app .app-content-grid .card.border-left-primary .h5,
.omdin-app .app-content-grid .card.border-left-success .h5,
.omdin-app .app-content-grid .card.border-left-warning .h5,
.omdin-app .app-content-grid .card.border-left-danger .h5 {
  color: var(--app-text) !important;
  font-size: 1.08rem;
  text-shadow: none;
}

.omdin-app .app-content-grid .card.border-left-info .fa-2x,
.omdin-app .app-content-grid .card.border-left-primary .fa-2x,
.omdin-app .app-content-grid .card.border-left-success .fa-2x,
.omdin-app .app-content-grid .card.border-left-warning .fa-2x,
.omdin-app .app-content-grid .card.border-left-danger .fa-2x {
  background: #f3ece4;
  color: #9d8b78 !important;
  height: 2.15rem;
  line-height: 2.15rem;
  width: 2.15rem;
}

.omdin-app .table-responsive {
  box-shadow: none;
}

.omdin-app .table {
  background: #fffdf9;
}

.omdin-app .table thead th {
  background: #f5efe7;
  color: #554b42;
}

.omdin-app .table-striped tbody tr:nth-of-type(odd) {
  background-color: #fbf7f1;
}

.omdin-app .table-hover tbody tr:hover {
  background-color: #f3f7f1;
}

.omdin-app .chart-area,
.omdin-app .chart-bar {
  height: 17rem;
}

.omdin-app .chart-pie {
  height: 15.5rem;
}

.omdin-payment-monitor {
  overflow: hidden;
}

.omdin-payment-monitor-header {
  background: #fffdf9;
  padding: .95rem 1rem;
}

.omdin-payment-actions .btn {
  min-height: 2rem;
}

.omdin-payment-summary {
  gap: .5rem;
  padding: .8rem 1rem .65rem;
}

.omdin-payment-summary-item {
  background: #fbf7f1;
  border: 1px solid var(--app-border);
  padding: .62rem .7rem;
}

.omdin-payment-summary-item span {
  font-size: .7rem;
  margin-bottom: .12rem;
}

.omdin-payment-summary-item strong {
  font-size: 1.05rem;
}

.omdin-payment-progress {
  background: #ede5da;
  height: .38rem;
  margin: 0 1rem .85rem;
}

.omdin-payment-progress span,
.omdin-app .progress-bar {
  background: var(--app-primary) !important;
}

.omdin-payment-list {
  gap: .55rem;
  padding: 0 1rem 1rem;
}

.omdin-payment-row {
  background: #fffdf9;
  border: 1px solid var(--app-border);
  border-left: 2px solid var(--app-danger);
  box-shadow: none;
  padding: .68rem;
}

.omdin-payment-row.is-paid {
  border-left-color: var(--app-primary);
}

.omdin-payment-row-main {
  gap: .5rem;
}

.omdin-payment-index {
  background: #f3ece4;
  font-size: .74rem;
  height: 1.85rem;
  width: 1.85rem;
}

.omdin-payment-person h4 {
  font-size: .88rem;
  margin-bottom: .22rem;
}

.omdin-payment-meta a,
.omdin-payment-meta span {
  font-size: .73rem;
}

.omdin-payment-status {
  font-size: .68rem;
  padding: .26rem .46rem;
}

.omdin-payment-status.is-paid {
  background: #edf3ea;
  color: var(--app-primary-strong);
}

.omdin-payment-status.is-unpaid,
.omdin-payment-zero-action {
  background: #f7ebe6;
  color: #8f4d3d;
}

.omdin-payment-row-detail {
  gap: .42rem;
  margin-top: .52rem;
}

.omdin-payment-row-detail span {
  background: #fbf7f1;
  padding: .46rem .52rem;
}

.omdin-payment-row-detail small {
  font-size: .66rem;
}

.omdin-payment-row-detail strong {
  font-size: .76rem;
}

.omdin-empty-state {
  padding: 1.35rem 1rem 1.6rem;
}

.omdin-empty-state i {
  background: #edf3ea;
  color: var(--app-primary-strong);
}

.omdin-mobile-nav {
  background: rgba(255, 253, 249, .96);
  border-color: var(--app-border);
  box-shadow: 0 -8px 24px rgba(49, 42, 36, .1);
  grid-template-columns: repeat(auto-fit, minmax(3.2rem, 1fr));
}

.omdin-mobile-nav a {
  color: #665b51;
}

.omdin-mobile-nav a.active {
  background: #eaf1e7;
  color: var(--app-primary-strong);
}

@media (max-width: 767.98px) {
  .omdin-app .container-fluid {
    padding: .7rem;
  }

  .omdin-app .app-content-grid {
    row-gap: .7rem;
  }

  .omdin-module-hero {
    padding: .85rem .9rem;
  }

  .omdin-app .app-content-grid .card.border-left-info,
  .omdin-app .app-content-grid .card.border-left-primary,
  .omdin-app .app-content-grid .card.border-left-success,
  .omdin-app .app-content-grid .card.border-left-warning,
  .omdin-app .app-content-grid .card.border-left-danger {
    min-height: 5.75rem;
  }

  .omdin-app .app-content-grid .card.border-left-info .h5,
  .omdin-app .app-content-grid .card.border-left-primary .h5,
  .omdin-app .app-content-grid .card.border-left-success .h5,
  .omdin-app .app-content-grid .card.border-left-warning .h5,
  .omdin-app .app-content-grid .card.border-left-danger .h5 {
    font-size: 1rem;
  }

  .omdin-app .chart-area,
  .omdin-app .chart-bar {
    height: 13.5rem;
  }

  .omdin-app .chart-pie {
    height: 12rem;
  }

  .omdin-payment-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding-left: .75rem;
    padding-right: .75rem;
  }

  .omdin-payment-list {
    padding-left: .75rem;
    padding-right: .75rem;
  }
}

.omdin-project-hero {
  margin-bottom: .85rem;
}

.omdin-project-studio {
  background: rgba(255, 253, 249, .98);
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: var(--app-shadow-soft);
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(14rem, .38fr) minmax(0, 1fr);
  margin-bottom: 1rem;
  padding: 1rem;
}

.omdin-project-studio-copy {
  border-right: 1px solid var(--app-border);
  padding-right: 1rem;
}

.omdin-project-studio-copy h3,
.omdin-project-card h3 {
  color: var(--app-text);
  font-size: 1.05rem;
  font-weight: 800;
  margin: .15rem 0 .35rem;
}

.omdin-project-studio-copy p {
  color: var(--app-muted);
  font-size: .84rem;
  font-weight: 600;
  line-height: 1.7;
  margin: 0;
}

.omdin-project-create-form,
.omdin-asset-bulk-form,
.omdin-project-field,
.omdin-asset-clone-list,
.omdin-asset-list {
  display: grid;
  gap: .65rem;
}

.omdin-project-field label {
  color: var(--app-muted);
  font-size: .78rem;
  font-weight: 800;
  margin: 0;
}

.omdin-asset-bulk-head {
  align-items: center;
  background: #fbf7f1;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  display: flex;
  gap: .8rem;
  justify-content: space-between;
  padding: .65rem .75rem;
}

.omdin-asset-bulk-head strong,
.omdin-asset-list-head h4 {
  color: var(--app-text);
  display: block;
  font-size: .9rem;
  font-weight: 800;
  margin: 0;
}

.omdin-asset-bulk-head span,
.omdin-asset-list-head span {
  color: var(--app-muted);
  display: block;
  font-size: .76rem;
  font-weight: 700;
  margin-top: .1rem;
}

.omdin-asset-clone-row {
  align-items: center;
  background: #fffdf9;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  display: grid;
  gap: .5rem;
  grid-template-columns: 2rem minmax(10rem, 1.15fr) minmax(7rem, .7fr) minmax(8rem, .7fr) minmax(8rem, 1fr) auto;
  padding: .55rem;
}

.omdin-asset-row-number {
  align-items: center;
  background: #edf3e7;
  border: 1px solid #dce8d2;
  border-radius: 999px;
  color: var(--app-primary-strong);
  display: inline-flex;
  font-size: .78rem;
  font-weight: 800;
  height: 1.75rem;
  justify-content: center;
  width: 1.75rem;
}

.omdin-project-form-actions {
  display: flex;
  gap: .5rem;
  justify-content: flex-end;
}

.omdin-project-form-actions .btn,
.omdin-asset-bulk-head .btn,
.omdin-project-name-form .btn,
.omdin-project-delete-form .btn {
  align-items: center;
  display: inline-flex;
  gap: .35rem;
  justify-content: center;
}

.omdin-project-summary {
  display: grid;
  gap: .75rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.omdin-project-summary > div {
  background: rgba(255, 253, 249, .96);
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: var(--app-shadow-soft);
  padding: .85rem .95rem;
}

.omdin-project-summary span {
  color: var(--app-muted);
  display: block;
  font-size: .76rem;
  font-weight: 800;
}

.omdin-project-summary strong {
  color: var(--app-text);
  display: block;
  font-size: 1.28rem;
  font-weight: 800;
  margin-top: .1rem;
}

.omdin-project-filter {
  align-items: end;
  background: rgba(255, 253, 249, .98);
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: var(--app-shadow-soft);
  display: grid;
  gap: .75rem;
  grid-template-columns: minmax(16rem, 1fr) minmax(10rem, .32fr) auto;
  margin-bottom: 1rem;
  padding: .8rem;
}

.omdin-project-filter label {
  color: var(--app-muted);
  font-size: .78rem;
  font-weight: 800;
  margin-bottom: .35rem;
}

.omdin-project-search-box {
  position: relative;
}

.omdin-project-search-box i {
  color: var(--app-muted);
  font-size: .85rem;
  left: .8rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.omdin-project-search-box .form-control {
  padding-left: 2.15rem;
}

.omdin-project-filter-actions {
  align-items: center;
  display: flex;
  gap: .55rem;
  justify-content: flex-end;
}

.omdin-project-filter-actions .btn {
  align-items: center;
  display: inline-flex;
  gap: .35rem;
  justify-content: center;
  min-height: 2.35rem;
}

.omdin-project-filter-count {
  align-items: center;
  background: #fbf7f1;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  color: var(--app-muted);
  display: flex;
  gap: .28rem;
  min-height: 2.35rem;
  padding: 0 .7rem;
  white-space: nowrap;
}

.omdin-project-filter-count strong {
  color: var(--app-text);
  font-size: .95rem;
  font-weight: 800;
}

.omdin-project-filter-count span {
  font-size: .76rem;
  font-weight: 800;
}

.omdin-project-filter-empty {
  margin-bottom: 1rem;
}

.omdin-project-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr;
}

.omdin-project-card {
  background: rgba(255, 253, 249, .98);
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: var(--app-shadow-soft);
  padding: 1rem;
}

.omdin-project-card-head {
  align-items: flex-start;
  display: flex;
  gap: .85rem;
  justify-content: space-between;
}

.omdin-project-card h3 {
  margin: 0;
}

.omdin-project-stats {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  justify-content: flex-end;
}

.omdin-project-stats span {
  background: #fbf7f1;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  color: var(--app-muted);
  font-size: .78rem;
  font-weight: 800;
  padding: .35rem .55rem;
  white-space: nowrap;
}

.omdin-project-stats strong {
  color: var(--app-text);
}

.omdin-project-edit,
.omdin-asset-row {
  align-items: center;
  display: grid;
  gap: .55rem;
  grid-template-columns: minmax(0, 1fr) auto;
}

.omdin-project-edit {
  border-bottom: 1px solid var(--app-border);
  margin-top: .85rem;
  padding-bottom: .9rem;
}

.omdin-inline-form,
.omdin-asset-edit-form {
  align-items: center;
  display: grid;
  gap: .5rem;
}

.omdin-project-name-form {
  grid-template-columns: minmax(0, 1fr) auto;
}

.omdin-project-delete-form,
.omdin-asset-delete-form {
  margin: 0;
}

.omdin-asset-panel {
  margin-top: .9rem;
}

.omdin-asset-add-form {
  background: #fbf7f1;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  margin-bottom: .85rem;
  padding: .75rem;
}

.omdin-asset-list-head {
  align-items: center;
  display: flex;
  gap: .65rem;
  justify-content: space-between;
  margin: .15rem 0 .55rem;
}

.omdin-asset-list-head h4 i {
  color: var(--app-primary);
  margin-right: .25rem;
}

.omdin-asset-row {
  background: #fffdf9;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  padding: .55rem;
}

.omdin-asset-edit-form {
  grid-template-columns: minmax(10rem, 1.15fr) minmax(7rem, .65fr) minmax(8rem, .7fr) minmax(8rem, 1fr) auto;
}

.omdin-asset-empty {
  background: #fbf7f1;
  border: 1px dashed #d8cbbc;
  border-radius: 8px;
  color: var(--app-muted);
  font-size: .84rem;
  font-weight: 800;
  margin-bottom: .55rem;
  padding: .8rem;
  text-align: center;
}

.omdin-project-card .btn[disabled] {
  cursor: not-allowed;
  opacity: .45;
}

.omdin-project-card.is-filter-hidden,
.omdin-asset-row.is-filter-hidden {
  display: none;
}

.omdin-contract-modal .modal-content {
  background: #fffdf9;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: var(--app-shadow);
}

.omdin-contract-modal .modal-header,
.omdin-contract-modal .modal-footer {
  border-color: var(--app-border);
}

.omdin-contract-modal .modal-header {
  align-items: flex-start;
  gap: .75rem;
}

.omdin-contract-modal-tools {
  align-items: center;
  display: inline-flex;
  gap: .5rem;
  margin-left: auto;
}

.omdin-contract-modal-tools .btn {
  align-items: center;
  display: inline-flex;
  gap: .35rem;
  min-height: 2.1rem;
}

.omdin-contract-modal-tools .close {
  margin: 0;
  padding: .2rem .35rem;
}

.omdin-contract-modal .modal-title {
  color: var(--app-text);
  font-size: 1.15rem;
  font-weight: 800;
  margin: .1rem 0 0;
}

.omdin-wizard-steps {
  display: grid;
  gap: .55rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.omdin-wizard-steps button {
  align-items: center;
  background: #fbf7f1;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  color: var(--app-muted);
  display: inline-flex;
  font-weight: 800;
  gap: .5rem;
  justify-content: center;
  padding: .7rem;
}

.omdin-wizard-steps button span {
  align-items: center;
  background: #e9dfd1;
  border-radius: 999px;
  color: var(--app-text);
  display: inline-flex;
  height: 1.65rem;
  justify-content: center;
  width: 1.65rem;
}

.omdin-wizard-steps button.active {
  background: #edf3e7;
  border-color: #dce8d2;
  color: var(--app-primary-strong);
}

.omdin-wizard-steps button.active span {
  background: var(--app-primary);
  color: #fff;
}

.omdin-wizard-step {
  display: none;
}

.omdin-wizard-step.active {
  display: block;
}

.omdin-wizard-choice {
  display: grid;
  gap: .6rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: .9rem;
}

.omdin-wizard-choice.compact {
  margin-bottom: 0;
}

.omdin-wizard-choice label {
  margin: 0;
}

.omdin-wizard-choice input {
  position: absolute;
  opacity: 0;
}

.omdin-wizard-choice span {
  align-items: center;
  background: #fbf7f1;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  color: var(--app-muted);
  cursor: pointer;
  display: flex;
  font-weight: 800;
  gap: .45rem;
  justify-content: center;
  min-height: 2.55rem;
  padding: .55rem .75rem;
  text-align: center;
}

.omdin-wizard-choice input:checked + span {
  background: #edf3e7;
  border-color: #dce8d2;
  color: var(--app-primary-strong);
}

.omdin-wizard-member-panel,
.omdin-contract-history,
.omdin-contract-selected {
  background: #fbf7f1;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  padding: .85rem;
}

.omdin-wizard-member-panel label,
.omdin-contract-modal .form-group label,
.omdin-confirm-check {
  color: var(--app-muted);
  font-size: .78rem;
  font-weight: 800;
}

.omdin-contract-search {
  position: relative;
}

.omdin-contract-search i {
  color: var(--app-muted);
  font-size: .85rem;
  left: .8rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.omdin-contract-search .form-control {
  padding-left: 2.15rem;
}

.omdin-contract-results {
  display: grid;
  gap: .45rem;
  margin-top: .6rem;
}

.omdin-contract-results button {
  background: #fffdf9;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  color: var(--app-text);
  display: grid;
  font: inherit;
  gap: .05rem;
  padding: .55rem .65rem;
  text-align: left;
}

.omdin-contract-results button:hover {
  border-color: #c9dabb;
  color: var(--app-primary-strong);
}

.omdin-contract-results button span,
.omdin-contract-result-empty,
.omdin-contract-history-empty {
  color: var(--app-muted);
  font-size: .8rem;
  font-weight: 700;
}

.omdin-contract-selected {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin-top: .65rem;
}

.omdin-contract-selected strong {
  color: var(--app-text);
  width: 100%;
}

.omdin-contract-selected span {
  background: #fffdf9;
  border: 1px solid var(--app-border);
  border-radius: 999px;
  color: var(--app-muted);
  font-size: .78rem;
  font-weight: 800;
  padding: .25rem .55rem;
}

.omdin-contract-history {
  display: grid;
  gap: .45rem;
  margin-top: .65rem;
}

.omdin-contract-history > strong {
  color: var(--app-text);
}

.omdin-contract-history-item {
  background: #fffdf9;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  display: grid;
  gap: .05rem;
  padding: .55rem .65rem;
}

.omdin-contract-history-item span,
.omdin-contract-history-item small {
  color: var(--app-muted);
  font-size: .76rem;
  font-weight: 700;
}

.omdin-contract-history-item b {
  color: var(--app-text);
  font-size: .88rem;
}

.omdin-form-grid {
  display: grid;
  gap: .75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.omdin-form-grid + .omdin-form-grid {
  margin-top: .9rem;
}

.omdin-form-grid-wide {
  grid-column: 1 / -1;
}

.omdin-confirm-check {
  align-items: center;
  background: #fbf7f1;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  display: flex;
  gap: .45rem;
  margin: .9rem 0 0;
  padding: .75rem;
}

.omdin-contract-modal .modal-footer .btn,
.omdin-module-actions .btn[data-contract-open],
.omdin-project-stats .btn[data-contract-open] {
  align-items: center;
  display: inline-flex;
  gap: .35rem;
  justify-content: center;
}

@media (max-width: 1199.98px) {
  .omdin-asset-clone-row {
    grid-template-columns: 2rem minmax(0, 1fr) minmax(0, 1fr) auto;
  }

  .omdin-asset-clone-row input[name="asset_note[]"] {
    grid-column: 2 / span 2;
  }

  .omdin-asset-edit-form {
    grid-template-columns: minmax(0, 1fr) minmax(8rem, .8fr) auto;
  }
}

@media (max-width: 991.98px) {
  .omdin-project-studio {
    grid-template-columns: 1fr;
  }

  .omdin-project-studio-copy {
    border-right: 0;
    border-bottom: 1px solid var(--app-border);
    padding: 0 0 .85rem;
  }

  .omdin-project-filter {
    grid-template-columns: 1fr 1fr;
  }

  .omdin-project-filter-actions {
    grid-column: 1 / -1;
    justify-content: space-between;
  }

  .omdin-form-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .omdin-project-studio,
  .omdin-project-card {
    padding: .85rem;
  }

  .omdin-project-summary,
  .omdin-project-filter,
  .omdin-project-card-head,
  .omdin-project-edit,
  .omdin-project-name-form,
  .omdin-asset-row,
  .omdin-asset-edit-form {
    display: grid;
    grid-template-columns: 1fr;
  }

  .omdin-asset-bulk-head,
  .omdin-asset-list-head {
    align-items: stretch;
    flex-direction: column;
  }

  .omdin-asset-bulk-head .btn,
  .omdin-project-filter-actions .btn,
  .omdin-project-form-actions .btn,
  .omdin-project-delete-form .btn,
  .omdin-asset-delete-form .btn {
    width: 100%;
  }

  .omdin-project-filter-actions {
    align-items: stretch;
    display: grid;
    grid-column: auto;
    grid-template-columns: 1fr;
  }

  .omdin-project-filter-count {
    justify-content: center;
    white-space: normal;
  }

  .omdin-contract-modal .modal-dialog {
    margin: .5rem;
  }

  .omdin-contract-modal .modal-header {
    align-items: stretch;
    flex-direction: column;
  }

  .omdin-contract-modal-tools {
    justify-content: space-between;
    margin-left: 0;
    width: 100%;
  }

  .omdin-wizard-steps,
  .omdin-wizard-choice {
    grid-template-columns: 1fr;
  }

  .omdin-contract-modal .modal-footer {
    display: grid;
    gap: .5rem;
    grid-template-columns: 1fr;
  }

  .omdin-contract-modal .modal-footer .btn {
    width: 100%;
  }

  .omdin-asset-clone-row {
    grid-template-columns: 2rem minmax(0, 1fr) auto;
  }

  .omdin-asset-clone-row input,
  .omdin-asset-clone-row select {
    grid-column: 2 / -1;
  }

  .omdin-asset-clone-row input[name="asset_note[]"] {
    grid-column: 2 / -1;
  }

  .omdin-asset-clone-row [data-asset-row-remove] {
    grid-column: 2 / -1;
    width: 100%;
  }

  .omdin-project-stats {
    justify-content: flex-start;
  }
}

@media (max-width: 767.98px) {
  .omdin-app:not(.omdin-print-page) .table-responsive {
    border: 0;
    overflow-x: visible;
  }

  /* ajax/print.php and ajax/print_interest.php are injected via innerHTML into the
     ajax popup layer, which drops the omdin-print-page class from their own <body>
     tag (browsers ignore <body> when parsing an HTML fragment). Force this specific
     wrapper back to a normal, self-contained scroll area so the totals row stays
     reachable instead of overflowing past the popup with no scrollbar. */
  .omdin-app .omdin-print-table-scroll {
    border: 0;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  .omdin-app:not(.omdin-print-page) .dataTables_wrapper {
    width: 100%;
  }

  .omdin-app:not(.omdin-print-page) .dataTables_wrapper > .row:first-child,
  .omdin-app:not(.omdin-print-page) .dataTables_wrapper > .row:last-child {
    display: grid;
    grid-template-columns: 1fr;
    margin-left: 0;
    margin-right: 0;
    row-gap: .75rem;
  }

  .omdin-app:not(.omdin-print-page) .dataTables_wrapper > .row > [class^="col-"],
  .omdin-app:not(.omdin-print-page) .dataTables_wrapper > .row > [class*=" col-"] {
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .omdin-app:not(.omdin-print-page) .dataTables_wrapper .dataTables_length,
  .omdin-app:not(.omdin-print-page) .dataTables_wrapper .dataTables_filter,
  .omdin-app:not(.omdin-print-page) .dataTables_wrapper .dataTables_info,
  .omdin-app:not(.omdin-print-page) .dataTables_wrapper .dataTables_paginate {
    text-align: left;
    width: 100%;
  }

  .omdin-app:not(.omdin-print-page) .dataTables_wrapper .dataTables_length label,
  .omdin-app:not(.omdin-print-page) .dataTables_wrapper .dataTables_filter label {
    display: grid;
    gap: .35rem;
    margin-bottom: 0;
    white-space: normal;
    width: 100%;
  }

  .omdin-app:not(.omdin-print-page) .dataTables_wrapper .dataTables_filter input,
  .omdin-app:not(.omdin-print-page) .dataTables_wrapper .dataTables_length select {
    margin-left: 0;
    width: 100% !important;
  }

  .omdin-app:not(.omdin-print-page) .dataTables_wrapper .dataTables_paginate ul.pagination {
    flex-wrap: wrap;
    gap: .35rem;
    justify-content: center !important;
    white-space: normal;
  }

  .omdin-app:not(.omdin-print-page) .dataTables_wrapper .page-link {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    min-height: 2.35rem;
    min-width: 2.35rem;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table {
    border: 0 !important;
    display: block;
    margin-bottom: 0;
    min-width: 0 !important;
    width: 100% !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table thead {
    clip: rect(0 0 0 0);
    height: 1px;
    overflow: hidden;
    position: absolute;
    width: 1px;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table tbody,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table tr,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td {
    display: block;
    width: 100% !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table tbody {
    display: grid;
    gap: .75rem;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table tr {
    background: #fffdf9 !important;
    border: 1px solid var(--app-border);
    border-left: 4px solid rgba(111, 146, 95, .82);
    border-radius: 8px;
    box-shadow: var(--app-shadow-soft);
    overflow: hidden;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table th {
    border: 0 !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td {
    align-items: start;
    border-bottom: 1px solid rgba(214, 199, 179, .7) !important;
    color: var(--app-text);
    display: grid;
    gap: .75rem;
    grid-template-columns: minmax(6.5rem, 36%) minmax(0, 1fr);
    min-height: 2.8rem;
    padding: .75rem .85rem !important;
    text-align: right !important;
    white-space: normal !important;
    word-break: break-word;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td:last-child {
    border-bottom: 0 !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td::before {
    color: var(--app-muted);
    content: attr(data-label);
    font-size: .76rem;
    font-weight: 900;
    letter-spacing: .02em;
    line-height: 1.35;
    text-align: left;
    text-transform: none;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td[colspan] {
    display: block;
    text-align: center !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td[colspan]::before {
    content: none;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table .badge {
    display: inline-flex;
    justify-content: center;
    white-space: normal;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td .btn {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    min-height: 2.25rem;
    white-space: normal;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td .btn-circle {
    height: 2.35rem;
    width: 2.35rem;
  }
}

@media (max-width: 767.98px) {
  .omdin-app:not(.omdin-print-page) .table-responsive,
  .omdin-app:not(.omdin-print-page) .dataTables_wrapper,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table {
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table tbody,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table tr {
    max-width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table tr {
    border-radius: 8px;
    max-width: 100%;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td {
    display: block !important;
    min-width: 0;
    overflow: visible !important;
    overflow-wrap: anywhere;
    padding: .72rem .9rem !important;
    text-align: left !important;
    white-space: normal !important;
    width: 100% !important;
    word-break: break-word;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td[data-mobile-important="false"] {
    display: none !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table tr.is-expanded td[data-mobile-important="false"] {
    background: rgba(248, 244, 238, .62);
    display: block !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td[data-mobile-important="true"] {
    display: block !important;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td::before {
    display: block;
    margin-bottom: .35rem;
    text-align: left;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td > *,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td a,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td span,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td code,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td label {
    max-width: 100%;
    overflow-wrap: anywhere;
    white-space: normal !important;
    word-break: break-word;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td:has(.btn),
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td:has(button) {
    align-items: flex-start;
    display: flex !important;
    flex-wrap: wrap;
    gap: .45rem;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td:has(.btn)::before,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td:has(button)::before {
    flex: 0 0 100%;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td .btn,
  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td button {
    margin: 0 !important;
    max-width: 100%;
  }

  .omdin-app:not(.omdin-print-page) table.omdin-mobile-table td .btn-circle {
    flex: 0 0 2.35rem;
  }

  .omdin-mobile-row-toggle {
    align-items: center;
    background: rgba(111, 146, 95, .1);
    border: 1px solid rgba(111, 146, 95, .25);
    border-radius: 8px;
    color: var(--app-primary);
    cursor: pointer;
    display: inline-flex;
    font-size: .78rem;
    font-weight: 800;
    flex: 0 0 100%;
    justify-content: center;
    margin-top: .25rem;
    min-height: 2.1rem;
    padding: .35rem .65rem;
    width: 100%;
  }

  .omdin-mobile-row-toggle::after {
    content: "\25BE";
    font-size: .7rem;
    margin-left: .45rem;
  }

  tr.is-expanded .omdin-mobile-row-toggle::after {
    content: "\25B4";
  }
}

.omdin-mobile-row-toggle {
  display: none !important;
}

@media (max-width: 767.98px) {
  .omdin-mobile-row-toggle {
    display: inline-flex !important;
  }
}

.omdin-ajax-layer {
  align-items: flex-start;
  display: flex;
  inset: 0;
  justify-content: center;
  opacity: 0;
  overflow: auto;
  padding: 1.25rem;
  pointer-events: none;
  position: fixed;
  transition: opacity .18s ease;
}

.omdin-ajax-layer.is-visible {
  opacity: 1;
  pointer-events: auto;
}

.omdin-ajax-layer-backdrop {
  background: rgba(40, 28, 18, .46);
  inset: 0;
  position: fixed;
}

.omdin-ajax-layer-dialog {
  margin: auto;
  max-width: 1120px;
  min-height: 4rem;
  position: relative;
  transform: translateY(10px);
  transition: transform .18s ease;
  width: min(1120px, calc(100vw - 2rem));
  z-index: 1;
}

.omdin-ajax-layer.is-visible .omdin-ajax-layer-dialog {
  transform: translateY(0);
}

.omdin-ajax-layer-content > .container,
.omdin-ajax-layer-content > html,
.omdin-ajax-layer-content > body {
  max-width: 100%;
}

.omdin-ajax-layer-content .white-popup-block,
.omdin-ajax-layer-content .card {
  box-shadow: 0 24px 70px rgba(35, 24, 15, .28);
}

.omdin-ajax-layer-loading {
  background: var(--app-surface);
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: var(--app-shadow);
  color: var(--app-muted);
  font-weight: 800;
  padding: 1rem;
  text-align: center;
}

.omdin-ajax-layer-close {
  align-items: center;
  background: var(--app-surface);
  border: 1px solid var(--app-border);
  border-radius: 999px;
  box-shadow: var(--app-shadow-soft);
  color: var(--app-text);
  display: inline-flex;
  font-size: 1.35rem;
  height: 2.25rem;
  justify-content: center;
  line-height: 1;
  position: absolute;
  right: -.75rem;
  top: -.75rem;
  width: 2.25rem;
  z-index: 2;
}

.omdin-ajax-layer-open {
  overflow: hidden;
}

@media (max-width: 767.98px) {
  .omdin-ajax-layer {
    padding: .75rem;
  }

  .omdin-ajax-layer-dialog {
    width: 100%;
  }

  .omdin-ajax-layer-close {
    right: .35rem;
    top: .35rem;
  }
}

.omdin-contract-alert-item {
  gap: .2rem;
  min-width: 20rem;
  white-space: normal;
}

.omdin-app .topbar .dropdown,
.omdin-app .topbar .dropdown-list {
  z-index: 1060;
}

.omdin-app .topbar .dropdown-list.show {
  display: block;
}

.omdin-contract-alert-copy {
  display: flex;
  flex-direction: column;
  gap: .12rem;
  min-width: 0;
}

.omdin-contract-alert-copy small {
  color: var(--app-muted);
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.omdin-focus-row {
  box-shadow: inset 4px 0 0 var(--app-warning);
}

.omdin-focus-row > td {
  background: rgba(217, 173, 86, .16) !important;
}

.omdin-mobile-nav button {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 8px;
  color: #665b51;
  display: flex;
  flex-direction: column;
  font: inherit;
  font-size: .68rem;
  font-weight: 700;
  gap: .22rem;
  justify-content: center;
  line-height: 1.1;
  min-height: 3.15rem;
  padding: 0;
  text-decoration: none;
}

.omdin-mobile-nav button i {
  font-size: 1rem;
}

.omdin-mobile-nav button.active,
.omdin-mobile-nav button[aria-expanded="true"] {
  background: #eaf1e7;
  color: var(--app-primary-strong);
}

.omdin-mobile-more-menu {
  background: rgba(255, 253, 249, .98);
  border: 1px solid var(--app-border);
  border-radius: 8px;
  bottom: 4.65rem;
  box-shadow: 0 -10px 32px rgba(49, 42, 36, .14);
  display: grid;
  gap: .25rem;
  max-width: 21rem;
  padding: .45rem;
  position: fixed;
  right: .75rem;
  width: calc(100% - 1.5rem);
  z-index: 1031;
}

.omdin-mobile-more-menu[hidden] {
  display: none;
}

.omdin-mobile-more-menu a {
  align-items: center;
  border-radius: 8px;
  color: var(--app-text);
  display: grid;
  gap: .55rem;
  grid-template-columns: 1.4rem minmax(0, 1fr) auto;
  min-height: 2.65rem;
  padding: .55rem .65rem;
  text-decoration: none;
}

.omdin-mobile-more-menu a.active,
.omdin-mobile-more-menu a:hover {
  background: #eaf1e7;
  color: var(--app-primary-strong);
}

.omdin-mobile-more-menu b {
  background: var(--app-danger);
  border-radius: 999px;
  color: #fff;
  font-size: .68rem;
  min-width: 1.35rem;
  padding: .1rem .38rem;
  text-align: center;
}

.omdin-mobile-more-menu a.omdin-mobile-logout {
  color: var(--app-danger);
}

.omdin-mobile-more-menu a.omdin-mobile-logout:hover {
  background: rgba(185, 101, 73, .12);
  color: var(--app-danger);
}

.omdin-slip-slider-wrap {
  margin: .25rem 0 1rem;
}

.omdin-slip-slider-head {
  align-items: center;
  color: var(--app-text);
  display: flex;
  font-weight: 800;
  gap: .65rem;
  justify-content: space-between;
  margin-bottom: .5rem;
}

.omdin-slip-slider-head span {
  align-items: center;
  display: inline-flex;
  gap: .45rem;
  min-width: 0;
}

.omdin-slip-slider-head small {
  color: var(--app-muted);
  font-weight: 700;
  white-space: nowrap;
}

.omdin-slip-strip {
  display: flex;
  gap: .75rem;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding: .1rem .1rem .85rem;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
  touch-action: pan-x;
  -webkit-overflow-scrolling: touch;
}

.omdin-slip-strip .omdin-slip-card {
  flex: 0 0 min(74vw, 17rem);
  scroll-snap-align: start;
}

.omdin-slip-card {
  align-items: center;
  background: #fffdfa;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: 0 10px 24px rgba(49, 42, 36, .1);
  color: var(--app-text);
  display: grid;
  gap: .65rem;
  grid-template-columns: 4.2rem minmax(0, 1fr);
  min-height: 5.2rem;
  padding: .45rem;
  text-align: left;
  text-decoration: none;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.omdin-slip-card:hover,
.omdin-slip-card:focus {
  border-color: rgba(79, 130, 71, .55);
  box-shadow: 0 14px 30px rgba(49, 42, 36, .15);
  color: var(--app-primary-strong);
  outline: 0;
  text-decoration: none;
  transform: translateY(-1px);
}

.omdin-slip-card-compact {
  grid-template-columns: 3.2rem minmax(0, 1fr);
  min-height: 4.15rem;
  min-width: 10.25rem;
  padding: .35rem;
}

.omdin-slip-thumb {
  aspect-ratio: 3 / 4;
  background: #f3eee7;
  border: 1px solid rgba(49, 42, 36, .08);
  border-radius: 8px;
  display: block;
  overflow: hidden;
  width: 4.2rem;
}

.omdin-slip-card-compact .omdin-slip-thumb {
  width: 3.2rem;
}

.omdin-slip-thumb img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.omdin-slip-card-copy {
  display: flex;
  flex-direction: column;
  gap: .16rem;
  min-width: 0;
}

.omdin-slip-card-copy strong {
  color: inherit;
  font-size: .82rem;
  font-weight: 900;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.omdin-slip-card-copy small {
  color: var(--app-muted);
  font-size: .72rem;
  font-weight: 700;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.omdin-slip-preview-card {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: .85rem;
  margin: .75rem auto 1.25rem;
  max-width: min(100%, 28rem);
}

.omdin-slip-preview-image {
  background: #fffdfa;
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: 0 18px 40px rgba(49, 42, 36, .14);
  display: block;
  max-height: 70vh;
  overflow: hidden;
  width: 100%;
}

.omdin-slip-preview-image img {
  display: block;
  height: auto;
  max-height: 70vh;
  object-fit: contain;
  width: 100%;
}

.omdin-slip-open-btn {
  align-items: center;
  display: inline-flex;
  gap: .45rem;
  justify-content: center;
}

.omdin-slip-lightbox {
  align-items: stretch;
  display: grid;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  transition: opacity .18s ease;
  z-index: 2050;
}

.omdin-slip-lightbox.is-open {
  opacity: 1;
  pointer-events: auto;
}

.omdin-slip-lightbox[hidden] {
  display: none;
}

.omdin-slip-lightbox-open {
  overflow: hidden;
}

.omdin-slip-lightbox-backdrop {
  background: rgba(18, 15, 12, .86);
  inset: 0;
  position: absolute;
}

.omdin-slip-lightbox-dialog {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  height: 100%;
  min-height: 0;
  padding: 1rem;
  position: relative;
}

.omdin-slip-lightbox-toolbar {
  align-items: center;
  color: #fff;
  display: flex;
  gap: .75rem;
  justify-content: space-between;
  min-height: 3rem;
  position: relative;
  z-index: 2;
}

.omdin-slip-lightbox-title {
  display: flex;
  flex-direction: column;
  gap: .1rem;
  min-width: 0;
}

.omdin-slip-lightbox-title strong {
  font-size: .98rem;
  font-weight: 900;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.omdin-slip-lightbox-title small {
  color: rgba(255, 255, 255, .72);
  font-size: .78rem;
  font-weight: 700;
  line-height: 1.25;
}

.omdin-slip-lightbox-actions {
  align-items: center;
  display: inline-flex;
  gap: .45rem;
}

.omdin-slip-lightbox-icon,
.omdin-slip-lightbox-nav {
  align-items: center;
  background: rgba(255, 255, 255, .12);
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  justify-content: center;
  text-decoration: none;
}

.omdin-slip-lightbox-icon {
  font-size: .92rem;
  height: 2.35rem;
  width: 2.35rem;
}

.omdin-slip-lightbox-icon:hover,
.omdin-slip-lightbox-icon:focus,
.omdin-slip-lightbox-nav:hover,
.omdin-slip-lightbox-nav:focus {
  background: rgba(255, 255, 255, .22);
  color: #fff;
  outline: 0;
  text-decoration: none;
}

.omdin-slip-lightbox-stage {
  align-items: center;
  cursor: grab;
  display: flex;
  justify-content: center;
  min-height: 0;
  overflow: hidden;
  padding: .75rem 4.25rem 1rem;
  position: relative;
  touch-action: pan-y;
  user-select: none;
  z-index: 1;
}

.omdin-slip-lightbox-stage:active {
  cursor: grabbing;
}

.omdin-slip-lightbox-stage img {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 22px 70px rgba(0, 0, 0, .35);
  display: block;
  max-height: 100%;
  max-width: min(100%, 42rem);
  object-fit: contain;
  transition: opacity .12s ease;
}

.omdin-slip-lightbox-stage img.is-loading {
  opacity: .35;
}

.omdin-slip-lightbox-nav {
  border: 0;
  font-size: 1.15rem;
  height: 3.15rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 3.15rem;
  z-index: 3;
}

.omdin-slip-lightbox-nav[hidden] {
  display: none;
}

.omdin-slip-lightbox-prev {
  left: 1.25rem;
}

.omdin-slip-lightbox-next {
  right: 1.25rem;
}

tr.bg-danger .omdin-slip-card,
tr.table-danger .omdin-slip-card {
  color: var(--app-text);
}

.omdin-inc-finance {
  width: 100%;
}

.omdin-finance-hero .omdin-module-actions {
  align-items: center;
}

.omdin-finance-filter,
.omdin-finance-summary-grid,
.omdin-finance-panel,
.omdin-finance-form,
.omdin-finance-inline-form,
.omdin-finance-subnav,
.omdin-finance-panel-head,
.omdin-finance-bar-label {
  min-width: 0;
}

.omdin-app .sidebar .collapse-inner .collapse-item.active {
  background: rgba(101, 134, 83, .14);
  color: var(--app-primary-strong);
  font-weight: 900;
}

.omdin-app .sidebar .collapse-inner .collapse-item i {
  color: inherit;
  opacity: .78;
  width: 1rem;
}

.omdin-finance-subnav {
  align-items: center;
  background: #eef6ec;
  border-bottom: 1px solid rgba(101, 134, 83, .2);
  box-shadow: 0 8px 18px rgba(91, 60, 38, .05);
  display: flex;
  gap: .45rem;
  overflow-x: auto;
  padding: .7rem 1.5rem;
  position: sticky;
  top: 7.95rem;
  z-index: 79;
}

.omdin-finance-subnav > span,
.omdin-mobile-more-group > span {
  align-items: center;
  color: var(--app-primary-strong);
  display: inline-flex;
  font-size: .78rem;
  font-weight: 900;
  gap: .4rem;
  letter-spacing: 0;
  white-space: nowrap;
}

.omdin-finance-subnav a {
  align-items: center;
  background: rgba(255, 253, 249, .72);
  border: 1px solid transparent;
  border-radius: 8px;
  color: #655a4f;
  display: inline-flex;
  flex: 0 0 auto;
  gap: .45rem;
  min-height: 2.25rem;
  padding: .46rem .72rem;
  text-decoration: none;
}

.omdin-finance-subnav a:hover {
  background: #fffdf9;
  color: var(--app-text);
  text-decoration: none;
}

.omdin-finance-subnav a.active {
  background: #fffdf9;
  border-color: rgba(101, 134, 83, .28);
  color: var(--app-primary-strong);
}

.omdin-finance-subnav a strong {
  font-size: .86rem;
  line-height: 1.1;
}

.omdin-mobile-more-group {
  background: rgba(101, 134, 83, .08);
  border: 1px solid rgba(101, 134, 83, .18);
  border-radius: 8px;
  display: grid;
  gap: .25rem;
  padding: .65rem;
}

.omdin-mobile-more-group > span {
  padding: .1rem .2rem .35rem;
}

.omdin-mobile-more-menu .omdin-mobile-more-group a {
  background: rgba(255, 253, 249, .72);
  border-radius: 8px;
}

.omdin-guide[hidden] {
  display: none !important;
}

.omdin-guide-backdrop,
.omdin-guide-highlight,
.omdin-guide-card {
  position: fixed;
}

.omdin-guide-backdrop {
  background: rgba(35, 28, 22, .58);
  inset: 0;
  z-index: 3000;
}

.omdin-guide-highlight {
  border: 3px solid #f2c94c;
  border-radius: 8px;
  box-shadow: 0 0 0 9999px rgba(35, 28, 22, .36), 0 18px 44px rgba(0, 0, 0, .22);
  pointer-events: none;
  transition: left .18s ease, top .18s ease, width .18s ease, height .18s ease;
  z-index: 3001;
}

.omdin-guide-card {
  background: #fffdf9;
  border: 1px solid rgba(101, 134, 83, .28);
  border-radius: 8px;
  box-shadow: 0 22px 60px rgba(0, 0, 0, .25);
  color: var(--app-text);
  max-width: calc(100vw - 2rem);
  padding: 1rem;
  width: 23rem;
  z-index: 3002;
}

.omdin-guide-progress {
  color: var(--app-primary-strong);
  font-size: .78rem;
  font-weight: 900;
  margin-bottom: .45rem;
}

.omdin-guide-card h3 {
  color: var(--app-text);
  font-size: 1.05rem;
  font-weight: 900;
  line-height: 1.3;
  margin: 0 2.25rem .45rem 0;
}

.omdin-guide-card p {
  color: var(--app-muted);
  font-size: .9rem;
  line-height: 1.55;
  margin: 0 0 1rem;
}

.omdin-guide-close {
  align-items: center;
  background: #f4eee6;
  border: 1px solid var(--app-border);
  border-radius: 999px;
  color: var(--app-muted);
  display: inline-flex;
  height: 2rem;
  justify-content: center;
  position: absolute;
  right: .75rem;
  top: .75rem;
  width: 2rem;
}

.omdin-guide-close:hover,
.omdin-guide-close:focus {
  background: #eaf1e7;
  color: var(--app-primary-strong);
  outline: 0;
}

.omdin-guide-actions {
  align-items: center;
  display: flex;
  gap: .5rem;
  justify-content: space-between;
}

.omdin-guide-actions .btn {
  align-items: center;
  display: inline-flex;
  gap: .42rem;
  justify-content: center;
  min-height: 2.25rem;
}

.omdin-guide-actions .btn[disabled] {
  cursor: not-allowed;
  opacity: .55;
}

.omdin-guide-topbar-trigger {
  align-items: center;
  display: inline-flex !important;
  gap: .15rem;
}

.omdin-finance-filter {
  align-items: flex-end;
  background: var(--app-surface);
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: var(--app-shadow-soft);
  display: grid;
  gap: .85rem;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  margin-bottom: 1rem;
  padding: 1rem;
}

.omdin-finance-filter label,
.omdin-finance-form label {
  color: var(--app-muted);
  display: block;
  font-size: .78rem;
  font-weight: 800;
  margin: 0 0 .3rem;
}

.omdin-finance-summary-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.omdin-finance-stat,
.omdin-finance-panel {
  background: var(--app-surface);
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: var(--app-shadow-soft);
}

.omdin-finance-stat {
  border-left: 4px solid var(--app-primary);
  padding: 1rem;
}

.omdin-finance-stat.is-income {
  border-left-color: var(--app-success);
}

.omdin-finance-stat.is-expense {
  border-left-color: var(--app-danger);
}

.omdin-finance-stat.is-net {
  border-left-color: var(--app-warning);
}

.omdin-finance-stat span,
.omdin-finance-stat small {
  color: var(--app-muted);
  display: block;
}

.omdin-finance-stat span {
  font-size: .78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.omdin-finance-stat strong {
  color: var(--app-text);
  display: block;
  font-size: 1.55rem;
  font-weight: 900;
  line-height: 1.2;
  margin: .35rem 0;
  overflow-wrap: anywhere;
}

.omdin-finance-stat small {
  font-size: .82rem;
  line-height: 1.35;
}

.omdin-finance-panel {
  margin-bottom: 1rem;
  padding: 1rem;
}

.omdin-finance-panel-head {
  align-items: center;
  border-bottom: 1px solid var(--app-border);
  display: flex;
  gap: .75rem;
  justify-content: space-between;
  margin-bottom: 1rem;
  padding-bottom: .75rem;
}

.omdin-finance-panel-head h3 {
  align-items: center;
  color: var(--app-text);
  display: inline-flex;
  font-size: 1rem;
  font-weight: 900;
  gap: .45rem;
  line-height: 1.3;
  margin: 0;
}

.omdin-finance-form {
  display: grid;
  gap: .65rem;
}

.omdin-finance-form .btn {
  justify-self: start;
  margin-top: .35rem;
}

.omdin-finance-inline-form {
  align-items: center;
  display: grid;
  gap: .4rem;
  grid-template-columns: minmax(9rem, 1fr) auto;
}

.omdin-finance-suggest {
  position: relative;
}

.omdin-finance-suggest-list {
  background: var(--app-surface);
  border: 1px solid var(--app-border);
  border-radius: 8px;
  box-shadow: 0 12px 28px rgba(0, 0, 0, .16);
  list-style: none;
  margin: .25rem 0 0;
  max-height: 12rem;
  overflow-y: auto;
  padding: .3rem;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 1060;
}

.omdin-finance-suggest-list[hidden] {
  display: none;
}

.omdin-finance-suggest-item {
  border-radius: 6px;
  color: var(--app-text);
  cursor: pointer;
  font-size: .9rem;
  padding: .5rem .6rem;
}

.omdin-finance-suggest-item:hover,
.omdin-finance-suggest-item:active {
  background: rgba(101, 134, 83, .14);
  color: var(--app-primary-strong);
}

.omdin-finance-empty {
  align-items: center;
  background: rgba(255, 255, 255, .55);
  border: 1px dashed var(--app-border);
  border-radius: 8px;
  color: var(--app-muted);
  display: flex;
  justify-content: center;
  min-height: 6rem;
  padding: 1rem;
  text-align: center;
}

.omdin-finance-bars {
  display: grid;
  gap: .85rem;
}

.omdin-finance-bar-row {
  display: grid;
  gap: .4rem;
}

.omdin-finance-bar-label {
  align-items: center;
  display: grid;
  gap: .45rem;
  grid-template-columns: auto minmax(0, 1fr) auto;
}

.omdin-finance-bar-label strong,
.omdin-finance-bar-label em {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.omdin-finance-bar-label strong {
  color: var(--app-text);
  font-weight: 900;
}

.omdin-finance-bar-label em {
  color: var(--app-muted);
  font-style: normal;
  font-weight: 900;
}

.omdin-finance-bar-track {
  background: rgba(79, 50, 31, .08);
  border-radius: 999px;
  height: .65rem;
  overflow: hidden;
}

.omdin-finance-bar-track span {
  background: var(--app-success);
  border-radius: inherit;
  display: block;
  height: 100%;
  min-width: .5rem;
}

.omdin-finance-bar-track span.is-expense {
  background: var(--app-danger);
}

@media (min-width: 768px) {
  .omdin-mobile-more-menu {
    display: none !important;
  }
}

@media (max-width: 767.98px) {
  .omdin-app #sidebarToggleTop,
  .omdin-app .omdin-legacy-menu {
    display: none !important;
  }

  .omdin-app.sidebar-mobile-open::before {
    display: none !important;
  }

  .omdin-slip-slider-head {
    align-items: flex-start;
    flex-direction: column;
    gap: .2rem;
  }

  .omdin-slip-card-compact {
    min-width: 9.5rem;
  }

  .omdin-slip-lightbox-dialog {
    padding: .65rem;
  }

  .omdin-slip-lightbox-toolbar {
    align-items: flex-start;
  }

  .omdin-slip-lightbox-title strong {
    max-width: calc(100vw - 7rem);
  }

  .omdin-slip-lightbox-title small {
    max-width: calc(100vw - 7rem);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .omdin-slip-lightbox-stage {
    padding: .45rem .15rem 1rem;
  }

  .omdin-slip-lightbox-stage img {
    max-height: calc(100vh - 6.5rem);
    max-width: 100%;
  }

  .omdin-slip-lightbox-nav {
    bottom: .85rem;
    height: 2.75rem;
    top: auto;
    transform: none;
    width: 2.75rem;
  }

  .omdin-slip-lightbox-prev {
    left: .85rem;
  }

  .omdin-slip-lightbox-next {
    right: .85rem;
  }

  .omdin-finance-filter,
  .omdin-finance-summary-grid {
    grid-template-columns: 1fr;
  }

  .omdin-guide-card {
    bottom: 5.4rem !important;
    left: .85rem !important;
    max-height: calc(100vh - 6.75rem);
    overflow: auto;
    top: auto !important;
    transform: none !important;
    width: calc(100vw - 1.7rem);
  }

  .omdin-guide-actions {
    flex-direction: column-reverse;
  }

  .omdin-guide-actions .btn {
    width: 100%;
  }

  .omdin-finance-subnav {
    background: rgba(238, 246, 236, .98);
    padding: .6rem .9rem;
    position: sticky;
    top: 0;
  }

  .omdin-finance-subnav > span {
    display: none;
  }

  .omdin-finance-filter .btn,
  .omdin-finance-form .btn {
    justify-content: center;
    width: 100%;
  }

  .omdin-finance-panel {
    padding: .85rem;
  }

  .omdin-finance-panel-head {
    align-items: flex-start;
  }

  .omdin-finance-bar-label {
    grid-template-columns: 1fr;
  }

  .omdin-finance-bar-label strong,
  .omdin-finance-bar-label em {
    white-space: normal;
  }

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