.onboarding-shell {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 28px 16px;
  background:
    radial-gradient(800px 500px at 12% -10%, rgba(0, 119, 255, 0.28), transparent 60%),
    linear-gradient(180deg, #050914, #07111f);
}

.onboarding-panel {
  width: min(1040px, 100%);
  border-radius: 22px;
  border: 1px solid rgba(130, 190, 255, 0.14);
  background: rgba(2, 8, 18, 0.78);
  box-shadow: var(--shadow);
  padding: 20px;
}

.onboarding-head {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 16px;
}

.onboarding-head h1 {
  margin: 0;
}

.eyebrow {
  color: #66dcff;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.agreement-grid,
.portal-install-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.agreement-grid article,
.portal-install-card {
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.045);
  padding: 14px;
}

.agreement-grid h2,
.portal-install-card h3 {
  margin: 0;
  font-size: 15px;
}

.agreement-grid p,
.portal-install-card p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.agreement-form {
  margin-top: 16px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  align-items: end;
}

.agreement-check {
  grid-column: 1 / -1;
}

.onboarding-layout {
  width: min(1280px, calc(100% - 40px));
}

.portal-status {
  display: inline-flex;
  margin: 8px 0 12px;
  padding: 7px 9px;
  border-radius: 999px;
  border: 1px solid rgba(91, 214, 255, 0.25);
  color: #dff6ff;
  font-size: 12px;
}

.portal-manager-header {
  align-items: flex-start;
}

.portal-manager-subtitle {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.portal-bulk-bar {
  margin: 14px 18px 0;
  padding: 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border: 1px solid rgba(91, 214, 255, 0.18);
  border-radius: 16px;
  background:
    linear-gradient(135deg, rgba(0, 119, 255, 0.13), rgba(91, 214, 255, 0.055)),
    rgba(255, 255, 255, 0.045);
}

.portal-bulk-bar strong,
.portal-bulk-bar span {
  display: block;
}

.portal-bulk-bar span {
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
}

.portal-bulk-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

.portal-manager-org {
  margin: 4px 0 6px;
  font-size: 13px;
  font-weight: 850;
}

.pwa-install-help {
  margin: 12px 18px 0;
  padding: 14px;
  border-radius: 16px;
  border: 1px solid rgba(56, 189, 248, 0.26);
  background:
    linear-gradient(135deg, rgba(56, 189, 248, 0.12), rgba(91, 214, 255, 0.06)),
    rgba(255, 255, 255, 0.04);
}

.pwa-install-help p {
  margin: 6px 0 12px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.portal-install-card {
  position: relative;
  display: grid;
  align-content: start;
  transition: border-color 140ms ease, background 140ms ease, transform 140ms ease;
}

.portal-install-card.is-selectable {
  cursor: pointer;
}

.portal-install-card.is-selected {
  border-color: rgba(91, 214, 255, 0.58);
  background:
    linear-gradient(180deg, rgba(0, 119, 255, 0.14), rgba(255, 255, 255, 0.045)),
    rgba(255, 255, 255, 0.055);
}

.portal-install-card.is-installed {
  opacity: 0.82;
}

.portal-card-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.portal-select-control {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  user-select: none;
}

.portal-select-control input {
  width: 18px;
  height: 18px;
  accent-color: var(--accent-2);
}

.portal-feature-list {
  margin: 10px 0 0;
  padding-left: 18px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}

.portal-pricing-details {
  display: grid;
  gap: 9px;
  margin: 12px 0;
  padding: 12px;
  border: 1px solid rgba(91, 214, 255, 0.18);
  border-radius: 14px;
  background: rgba(0, 119, 255, 0.08);
}

.portal-pricing-details div {
  min-width: 0;
  padding-left: 10px;
  border-left: 2px solid rgba(91, 214, 255, 0.52);
}

.portal-pricing-details strong,
.portal-pricing-details span {
  display: block;
}

.portal-pricing-details strong {
  color: #fff;
  font-size: 12px;
}

.portal-pricing-details span,
.portal-pricing-details p {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.5;
}

.portal-pricing-details p {
  margin: 0;
}

.portal-install-card .btn[disabled],
.agreement-form .btn[disabled],
.agreement-form .btn.is-disabled {
  cursor: not-allowed;
  opacity: 0.55;
  transform: none;
}

.portal-card-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
}

.module-shared-grid {
  padding: 16px 18px 18px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.module-app-shell {
  grid-template-columns: 280px minmax(0, 1fr);
  align-items: start;
  transition: grid-template-columns 180ms ease;
}

.module-app-shell:has(.module-sidebar.is-collapsed) {
  grid-template-columns: 82px minmax(0, 1fr);
}

.module-content {
  display: grid;
  gap: 18px;
  min-width: 0;
}

.module-menu-toggle {
  display: none;
}

.module-sidebar {
  position: sticky;
  top: 92px;
  align-self: start;
  display: flex;
  flex-direction: column;
  max-height: calc(100dvh - 110px);
  padding: 22px;
  border-color: rgba(130, 190, 255, 0.16);
  background: rgba(2, 8, 18, 0.78);
  backdrop-filter: blur(18px);
  overflow: hidden;
  transition: width 180ms ease, transform 180ms ease, padding 180ms ease;
}

.module-sidebar-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 6px 6px 12px;
}

.module-sidebar-head .btn {
  display: none;
}

.module-nav {
  display: grid;
  gap: 8px;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-right: 4px;
  scrollbar-width: thin;
  scrollbar-color: rgba(91, 214, 255, 0.45) rgba(255, 255, 255, 0.08);
}

.module-nav::-webkit-scrollbar {
  width: 8px;
}

.module-nav::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.08);
  border-radius: 999px;
}

.module-nav::-webkit-scrollbar-thumb {
  background: rgba(91, 214, 255, 0.45);
  border-radius: 999px;
}

.module-nav-group {
  display: grid;
  gap: 7px;
  padding-top: 8px;
}

.module-nav-group + .module-nav-group {
  margin-top: 10px;
  padding-top: 14px;
  border-top: 1px solid rgba(255, 255, 255, 0.10);
}

.module-nav-group > strong {
  padding: 0 4px;
  color: rgba(218, 232, 255, 0.68);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.module-nav a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 44px;
  padding: 12px 14px;
  border-radius: 10px;
  border: 0;
  color: rgba(255, 255, 255, 0.94);
  background: rgba(255, 255, 255, 0.02);
  text-decoration: none;
  transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.module-nav a span {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.module-nav a b {
  flex: 0 0 auto;
  display: inline-grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 9px;
  background: rgba(0, 119, 255, 0.16);
  color: #66dcff;
  font-size: 12px;
}

.module-nav a:hover,
.module-nav a.active {
  color: #ffffff;
  background: rgba(0, 119, 255, 0.16);
  transform: translateX(2px);
}

.module-nav .nav-badge,
.module-nav a small {
  min-width: 24px;
  min-height: 24px;
  padding: 4px 7px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  color: #fff;
  background: rgba(56, 189, 248, 0.85);
  font-size: 12px;
  font-weight: 950;
}

.branch-management-page .module-app-shell,
.branch-management-page .module-app-shell:has(.module-sidebar.is-collapsed) {
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 14px;
}

.branch-management-page .module-sidebar {
  top: 88px;
  padding: 18px;
  border-radius: 8px;
}

.branch-management-page .module-sidebar-head {
  padding: 4px 4px 12px;
}

.branch-management-page .module-nav {
  gap: 7px;
}

.branch-management-page .module-nav a {
  min-height: 50px;
  border: 1px solid rgba(130, 190, 255, 0.08);
  background: rgba(255, 255, 255, 0.035);
}

.branch-management-page .module-nav a b {
  width: 28px;
  height: 28px;
  border-radius: 9px;
}

.branch-management-page .module-content {
  gap: 14px;
}

.branch-management-page .portal-hub-widgets {
  gap: 10px;
}

.branch-management-page .portal-hub-widgets .kpi {
  min-height: 126px;
  padding: 18px 20px;
  border-radius: 8px;
}

.branch-management-page .portal-hub-widgets .kpi-value {
  font-size: clamp(26px, 3vw, 40px);
}

.branch-management-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding: 16px 18px 18px;
}

.branch-management-grid article {
  border: 1px solid rgba(91, 214, 255, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
  padding: 16px;
}

.branch-management-grid strong,
.branch-management-grid span {
  display: block;
}

.branch-management-grid span {
  margin-top: 6px;
  color: rgba(255, 255, 255, 0.66);
  font-size: 13px;
  line-height: 1.45;
}

.branch-management-page .erp-work-grid {
  grid-template-columns: minmax(300px, 0.9fr) minmax(420px, 1.1fr);
  gap: 14px;
}

.branch-management-page .erp-action-list,
.branch-management-page .erp-approval-list,
.branch-management-page .erp-message-list,
.branch-management-page .erp-activity-list,
.branch-management-page .erp-report-grid {
  padding: 14px 18px 18px;
}

.branch-management-page .erp-action,
.branch-management-page .erp-approval {
  border-radius: 8px;
}

.branch-management-page .erp-approval {
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
}

.branch-management-page .erp-row-actions {
  justify-content: flex-start;
}

.module-sidebar.is-collapsed .module-sidebar-head strong,
.module-sidebar.is-collapsed .module-nav a small,
.module-sidebar.is-collapsed .module-nav a span,
.module-sidebar.is-collapsed .module-nav-group > strong {
  font-size: 0;
}

.module-sidebar.is-collapsed .module-sidebar-head {
  justify-content: center;
}

.module-sidebar.is-collapsed .module-nav a {
  justify-content: center;
  padding-inline: 8px;
}

.module-sidebar.is-collapsed .module-nav a b {
  font-size: 12px;
}

.module-menu-backdrop {
  display: none;
}

.module-record-form {
  padding: 16px 18px 8px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 12px;
  align-items: end;
}

.module-detail-page {
  display: grid;
  gap: 16px;
}

.module-detail-page[hidden] {
  display: none !important;
}

.module-content > section[hidden],
#erp-sections > section[hidden],
.erp-dashboard-panel[hidden],
.erp-work-grid[hidden],
.sales-dashboard-page[hidden],
.sales-review-layout[hidden],
.sales-report-workspace[hidden] {
  display: none !important;
}

.module-page-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.module-page-summary article {
  min-height: 108px;
  padding: 16px;
  border: 1px solid rgba(130, 190, 255, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
}

.module-page-summary span,
.module-page-summary small {
  display: block;
  color: rgba(218, 232, 255, 0.66);
  font-size: 12px;
  font-weight: 800;
}

.module-page-summary strong {
  display: block;
  margin: 8px 0 6px;
  color: rgba(255, 255, 255, 0.96);
  font-size: clamp(22px, 2.5vw, 30px);
}

:root[data-module-theme="light"] body[data-page="organization-module"] {
  background: #f4f7fb;
  color: #102033;
}

:root[data-module-theme="light"] body[data-page="organization-module"] .panel,
:root[data-module-theme="light"] body[data-page="organization-module"] .module-sidebar,
:root[data-module-theme="light"] body[data-page="organization-module"] .sales-pipeline-card,
:root[data-module-theme="light"] body[data-page="organization-module"] .sales-report-generator,
:root[data-module-theme="light"] body[data-page="organization-module"] .module-settings-form fieldset,
:root[data-module-theme="light"] body[data-page="organization-module"] .module-settings-summary article {
  border-color: rgba(15, 35, 64, 0.12);
  background: rgba(255, 255, 255, 0.94);
  color: #102033;
}

:root[data-module-theme="light"] body[data-page="organization-module"] .module-nav a,
:root[data-module-theme="light"] body[data-page="organization-module"] .module-page-summary article,
:root[data-module-theme="light"] body[data-page="organization-module"] .sales-report-status-grid article,
:root[data-module-theme="light"] body[data-page="organization-module"] .sales-focus-list span,
:root[data-module-theme="light"] body[data-page="organization-module"] .sales-report-summary article,
:root[data-module-theme="light"] body[data-page="organization-module"] .sales-report-notes li {
  background: rgba(15, 35, 64, 0.04);
  color: #102033;
}

:root[data-module-theme="light"] body[data-page="organization-module"] .module-nav a:hover,
:root[data-module-theme="light"] body[data-page="organization-module"] .module-nav a.active {
  color: #050914;
  background: rgba(0, 119, 255, 0.12);
}

:root[data-module-theme="light"] body[data-page="organization-module"] .module-nav-group > strong,
:root[data-module-theme="light"] body[data-page="organization-module"] .muted,
:root[data-module-theme="light"] body[data-page="organization-module"] .portal-manager-subtitle,
:root[data-module-theme="light"] body[data-page="organization-module"] .kpi-foot,
:root[data-module-theme="light"] body[data-page="organization-module"] .module-settings-summary span,
:root[data-module-theme="light"] body[data-page="organization-module"] .module-settings-summary small,
:root[data-module-theme="light"] body[data-page="organization-module"] .module-page-summary span,
:root[data-module-theme="light"] body[data-page="organization-module"] .module-page-summary small,
:root[data-module-theme="light"] body[data-page="organization-module"] .sales-card-head span,
:root[data-module-theme="light"] body[data-page="organization-module"] .sales-report-status-grid span,
:root[data-module-theme="light"] body[data-page="organization-module"] .sales-report-status-grid small,
:root[data-module-theme="light"] body[data-page="organization-module"] .sales-report-summary span,
:root[data-module-theme="light"] body[data-page="organization-module"] .sales-report-notes span {
  color: rgba(16, 32, 51, 0.68);
}

:root[data-module-theme="light"] body[data-page="organization-module"] .kpi-value,
:root[data-module-theme="light"] body[data-page="organization-module"] .module-page-summary strong,
:root[data-module-theme="light"] body[data-page="organization-module"] .module-settings-summary strong,
:root[data-module-theme="light"] body[data-page="organization-module"] .sales-card-head strong,
:root[data-module-theme="light"] body[data-page="organization-module"] .sales-report-status-grid strong,
:root[data-module-theme="light"] body[data-page="organization-module"] .report-preview strong {
  color: #102033;
}

:root[data-module-theme="light"] body[data-page="organization-module"] .module-content .field input,
:root[data-module-theme="light"] body[data-page="organization-module"] .module-content .field select,
:root[data-module-theme="light"] body[data-page="organization-module"] .module-content .field textarea,
:root[data-module-theme="light"] body[data-page="organization-module"] .erp-message-form input,
:root[data-module-theme="light"] body[data-page="organization-module"] .erp-message-form select,
:root[data-module-theme="light"] body[data-page="organization-module"] .erp-message-form textarea {
  border-color: rgba(15, 35, 64, 0.16);
  background: #ffffff;
  color: #102033;
  color-scheme: light;
  box-shadow: none;
}

:root[data-module-theme="light"] body[data-page="organization-module"] .module-content .field input::placeholder,
:root[data-module-theme="light"] body[data-page="organization-module"] .module-content .field textarea::placeholder,
:root[data-module-theme="light"] body[data-page="organization-module"] .erp-message-form input::placeholder,
:root[data-module-theme="light"] body[data-page="organization-module"] .erp-message-form textarea::placeholder {
  color: rgba(16, 32, 51, 0.42);
}

:root[data-module-theme="light"] body[data-page="organization-module"] .table th,
:root[data-module-theme="light"] body[data-page="organization-module"] .table td {
  color: #102033;
  border-color: rgba(15, 35, 64, 0.12);
}

:root[data-module-theme="light"] body[data-page="organization-module"] .site-powered-footer {
  color: rgba(16, 32, 51, 0.72);
}

.module-density-compact .table th,
.module-density-compact .table td {
  padding-top: 8px;
  padding-bottom: 8px;
}

.module-settings-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.module-settings-summary article {
  min-height: 112px;
  padding: 16px;
  border: 1px solid rgba(130, 190, 255, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
}

.module-settings-summary span,
.module-settings-summary small {
  display: block;
  color: rgba(218, 232, 255, 0.66);
  font-size: 12px;
  font-weight: 800;
}

.module-settings-summary strong {
  display: block;
  margin: 8px 0 6px;
  color: rgba(255, 255, 255, 0.96);
  font-size: clamp(22px, 2.5vw, 30px);
}

.module-settings-form {
  display: grid;
  gap: 14px;
}

.module-settings-form fieldset {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  padding: 16px;
  border: 1px solid rgba(130, 190, 255, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
}

.module-settings-form legend {
  padding: 0 6px;
  color: rgba(255, 255, 255, 0.94);
  font-weight: 900;
}

.module-settings-form legend span,
.module-settings-form legend small {
  display: block;
}

.module-settings-form legend small {
  margin-top: 2px;
  color: rgba(218, 232, 255, 0.62);
  font-size: 12px;
  font-weight: 700;
}

:root[data-module-theme="light"] body[data-page="organization-module"] .module-settings-form legend {
  color: #102033;
}

:root[data-module-theme="light"] body[data-page="organization-module"] .module-settings-form legend small {
  color: rgba(16, 32, 51, 0.58);
}

.module-settings-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.sales-dashboard-page {
  display: grid;
  gap: 16px;
}

body[data-module-shell="sales"] {
  background:
    radial-gradient(900px 560px at 12% -10%, rgba(0, 119, 255, 0.26), transparent 60%),
    radial-gradient(760px 480px at 92% 0%, rgba(56, 189, 248, 0.18), transparent 58%),
    linear-gradient(180deg, #050914, #07111f 62%, #05070d) !important;
}

body[data-module-shell="sales"] .topbar,
body[data-module-shell="sales"] .module-sidebar,
body[data-module-shell="sales"] .panel,
body[data-module-shell="sales"] .kpi,
body[data-module-shell="sales"] .sales-pipeline-card,
body[data-module-shell="sales"] .sales-report-generator {
  border-color: rgba(91, 214, 255, 0.16);
  background: rgba(2, 8, 18, 0.78);
}

body[data-module-shell="sales"] .module-nav a,
body[data-module-shell="sales"] .sales-pipeline-list button,
body[data-module-shell="sales"] .sales-focus-list span,
body[data-module-shell="sales"] .module-page-summary article,
body[data-module-shell="sales"] .sales-report-status-grid article,
body[data-module-shell="sales"] .sales-report-summary article {
  border-color: rgba(91, 214, 255, 0.14);
  background: rgba(3, 10, 22, 0.46);
}

body[data-module-shell="sales"] .module-nav a:hover,
body[data-module-shell="sales"] .module-nav a.active,
body[data-module-shell="sales"] .sales-pipeline-list button:hover {
  border-color: rgba(91, 214, 255, 0.38);
  background: rgba(0, 119, 255, 0.16);
}

.sales-metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.sales-work-layout,
.sales-review-layout {
  display: grid;
  grid-template-columns: minmax(320px, 0.9fr) minmax(420px, 1.1fr);
  gap: 14px;
  align-items: start;
}

.sales-pipeline-card {
  border: 1px solid rgba(130, 190, 255, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
  padding: 16px;
}

.sales-card-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: start;
  margin-bottom: 14px;
}

.sales-card-head strong {
  color: rgba(255, 255, 255, 0.96);
  font-size: 18px;
}

.sales-card-head span {
  color: rgba(218, 232, 255, 0.62);
  font-size: 12px;
  font-weight: 800;
}

.sales-pipeline-list {
  display: grid;
  gap: 10px;
}

.sales-pipeline-list button {
  width: 100%;
  min-height: 48px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(91, 214, 255, 0.16);
  border-radius: 8px;
  background: rgba(3, 10, 22, 0.44);
  color: rgba(255, 255, 255, 0.92);
  cursor: pointer;
  transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease;
}

.sales-pipeline-list button:hover {
  transform: translateX(2px);
  border-color: rgba(91, 214, 255, 0.38);
  background: rgba(0, 119, 255, 0.14);
}

.sales-pipeline-list strong {
  color: #ffffff;
}

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

.sales-focus-list span {
  display: block;
  width: 100%;
  padding: 10px 12px;
  border: 1px solid rgba(130, 190, 255, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.05);
  color: rgba(255, 255, 255, 0.86);
  font-size: 13px;
  font-weight: 800;
}

.sales-action-list {
  padding: 14px 18px 18px;
  display: grid;
  gap: 10px;
}

.sales-action-list .erp-action {
  min-height: 66px;
  border-radius: 8px;
}

.sales-approval-list {
  padding: 14px 18px 18px;
}

.sales-report-workspace {
  display: grid;
  gap: 16px;
}

.sales-report-status-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.sales-report-status-grid article {
  min-height: 118px;
  padding: 16px;
  border: 1px solid rgba(130, 190, 255, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
}

.sales-report-status-grid span,
.sales-report-status-grid small {
  display: block;
  color: rgba(218, 232, 255, 0.66);
  font-size: 12px;
  font-weight: 800;
}

.sales-report-status-grid strong {
  display: block;
  margin: 8px 0 6px;
  color: rgba(255, 255, 255, 0.96);
  font-size: clamp(20px, 2.4vw, 28px);
  line-height: 1.1;
}

.sales-report-generator {
  border: 1px solid rgba(130, 190, 255, 0.14);
  border-radius: 8px;
  background: rgba(3, 10, 22, 0.42);
  overflow: hidden;
}

.sales-report-generator .content-head {
  padding: 18px 18px 0;
}

.sales-report-generator .content-head h2 {
  margin: 4px 0 6px;
  color: rgba(255, 255, 255, 0.96);
}

.sales-report-generator .content-head p:last-child {
  margin: 0;
  color: rgba(218, 232, 255, 0.72);
}

.sales-report-form {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(150px, 0.8fr) minmax(140px, 0.7fr) minmax(112px, auto) minmax(120px, auto) minmax(150px, auto);
  gap: 16px;
  padding: 16px 18px;
  align-items: end;
}

.sales-report-form .btn,
.sales-report-actions .btn {
  min-height: 44px;
  padding-inline: 16px;
  white-space: nowrap;
}

.report-preview {
  margin: 0 18px 18px;
  min-height: 86px;
  display: grid;
  align-content: center;
  gap: 6px;
  padding: 18px;
  border: 1px dashed rgba(130, 190, 255, 0.22);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.035);
  color: rgba(218, 232, 255, 0.74);
}

.report-preview strong,
.report-preview span {
  display: block;
}

.report-preview strong {
  color: rgba(255, 255, 255, 0.94);
}

.sales-report-result {
  display: grid;
  gap: 14px;
}

.sales-report-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

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

.sales-report-summary article {
  padding: 12px;
  border: 1px solid rgba(130, 190, 255, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
}

.sales-report-summary span,
.sales-report-notes span {
  color: rgba(218, 232, 255, 0.68);
  font-size: 12px;
  font-weight: 800;
}

.sales-report-notes h3 {
  margin: 0 0 8px;
  font-size: 15px;
}

.sales-report-notes ul {
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
  list-style: none;
}

.sales-report-notes li {
  display: grid;
  gap: 4px;
  padding: 10px 12px;
  border: 1px solid rgba(130, 190, 255, 0.12);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.035);
}

.module-record-form .btn {
  min-height: 44px;
}

.module-shared-grid article {
  min-height: 132px;
  padding: 16px;
  border-radius: 18px;
  border: 1px solid rgba(130, 190, 255, 0.14);
  background: rgba(255, 255, 255, 0.045);
}

.module-shared-grid strong,
.module-shared-grid span {
  display: block;
}

.module-shared-grid span {
  margin-top: 8px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.erp-sections {
  display: grid;
  gap: 18px;
}

.erp-dashboard-panel,
.erp-work-grid > .panel {
  background: rgba(6, 16, 31, 0.72);
  border-color: rgba(91, 214, 255, 0.18);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.28);
  backdrop-filter: blur(14px);
}

.erp-kpi-grid,
.erp-dashboard-grid,
.erp-work-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  padding: 16px 18px 18px;
}

.erp-dashboard-grid,
.erp-work-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding-top: 0;
}

.erp-card,
.erp-action,
.erp-approval,
.erp-message-list article,
.erp-activity-list article {
  border: 1px solid rgba(91, 214, 255, 0.16);
  background: rgba(255, 255, 255, 0.045);
  border-radius: 8px;
  padding: 14px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22);
}

.erp-card strong,
.erp-message-list strong,
.erp-activity-list strong,
.erp-approval strong {
  display: block;
  color: rgba(255, 255, 255, 0.92);
}

.erp-card ul {
  margin: 10px 0 0;
  padding-left: 18px;
  color: rgba(255, 255, 255, 0.70);
}

.erp-card li + li {
  margin-top: 6px;
}

.erp-chart {
  height: 170px;
  display: flex;
  align-items: end;
  gap: 10px;
  padding: 14px 0 8px;
}

.erp-chart span {
  flex: 1;
  min-width: 18px;
  border-radius: 8px 8px 3px 3px;
  background: linear-gradient(180deg, #66dcff, #0077ff);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.28);
}

.finance-simple-page .portal-hub-widgets {
  margin-bottom: 14px;
}

.finance-simple-page .finance-hero-section {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.42fr);
  border-color: rgba(91, 214, 255, 0.18);
  background:
    radial-gradient(760px 420px at 90% 0%, rgba(91, 214, 255, 0.16), transparent 58%),
    linear-gradient(135deg, rgba(6, 16, 31, 0.94), rgba(7, 17, 31, 0.76));
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.28);
}

.finance-simple-page .finance-hero-section .eyebrow {
  color: #66dcff;
}

.finance-simple-page .portal-hub-profile {
  border-radius: 8px;
  border-color: rgba(91, 214, 255, 0.18);
  background: rgba(255, 255, 255, 0.07);
}

.finance-dashboard-panel {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(260px, 0.8fr);
  gap: 16px;
  padding: 16px;
  border: 1px solid rgba(91, 214, 255, 0.18);
  border-radius: 8px;
  background: rgba(6, 16, 31, 0.82);
  box-shadow: 0 22px 54px rgba(0, 0, 0, 0.32);
}

.finance-dashboard-main {
  display: grid;
  gap: 14px;
}

.finance-balance-card,
.finance-flow-grid article,
.finance-dashboard-side article {
  padding: 14px;
  border: 1px solid rgba(91, 214, 255, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
}

.finance-balance-card span,
.finance-flow-grid span,
.finance-dashboard-side span {
  display: block;
  color: rgba(255, 255, 255, 0.62);
  font-size: 12px;
}

.finance-balance-card strong {
  display: block;
  margin-top: 8px;
  color: rgba(255, 255, 255, 0.94);
  font-size: clamp(34px, 5vw, 56px);
}

.finance-balance-card p,
.finance-dashboard-side p {
  margin: 8px 0 0;
  color: rgba(255, 255, 255, 0.68);
  line-height: 1.55;
}

.finance-flow-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.finance-flow-grid strong,
.finance-dashboard-side strong {
  display: block;
  margin-top: 8px;
  color: rgba(255, 255, 255, 0.94);
  font-size: 24px;
}

.finance-meter {
  height: 8px;
  margin-top: 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.10);
  overflow: hidden;
}

.finance-meter i {
  display: block;
  width: 4%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #0077ff, #66dcff);
}

.finance-dashboard-side {
  display: grid;
  gap: 12px;
}

.finance-dashboard-side ul {
  margin: 10px 0 0;
  padding-left: 18px;
  color: rgba(255, 255, 255, 0.70);
}

.finance-transactions-panel {
  border-color: rgba(91, 214, 255, 0.18);
  background: rgba(6, 16, 31, 0.82);
  box-shadow: 0 22px 54px rgba(0, 0, 0, 0.32);
}

.finance-actions-panel {
  border-color: rgba(91, 214, 255, 0.18);
  background: rgba(6, 16, 31, 0.82);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.28);
}

.finance-guide-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 18px;
}

.finance-guide-grid article {
  min-height: 142px;
  padding: 16px;
  border: 1px solid rgba(91, 214, 255, 0.18);
  border-radius: 8px;
  background: rgba(6, 16, 31, 0.78);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22);
}

.finance-guide-grid span,
.finance-guide-grid strong {
  display: block;
}

.finance-guide-grid span {
  color: #66dcff;
  font-size: 12px;
  font-weight: 900;
}

.finance-guide-grid strong {
  margin-top: 8px;
  color: rgba(255, 255, 255, 0.94);
  font-size: 20px;
}

.finance-guide-grid p {
  margin: 8px 0 0;
  color: rgba(255, 255, 255, 0.68);
  line-height: 1.55;
}

.finance-jixels-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
  gap: 18px;
  margin-top: 18px;
  border-color: rgba(91, 214, 255, 0.18);
  background: linear-gradient(145deg, rgba(6, 16, 31, 0.9), rgba(0, 119, 255, 0.11));
  box-shadow: 0 22px 54px rgba(0, 0, 0, 0.32);
}

.finance-jixels-copy h2 {
  margin: 0;
  color: rgba(255, 255, 255, 0.96);
  font-size: clamp(30px, 4vw, 50px);
  line-height: 1.03;
}

.finance-jixels-copy p:not(.eyebrow) {
  max-width: 720px;
  margin: 12px 0 0;
  color: rgba(255, 255, 255, 0.68);
  line-height: 1.65;
}

.finance-jixels-insights,
.finance-review-list {
  display: grid;
  gap: 12px;
}

.finance-jixels-insights article,
.finance-jixels-stats article,
.finance-department-cards article,
.finance-review-list article,
.finance-action-grid a {
  padding: 16px;
  border: 1px solid rgba(91, 214, 255, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
}

.finance-jixels-insights span,
.finance-jixels-stats span,
.finance-jixels-insights small,
.finance-jixels-stats small,
.finance-department-cards p,
.finance-review-list p,
.finance-action-grid p {
  color: rgba(255, 255, 255, 0.64);
  line-height: 1.55;
}

.finance-jixels-insights span,
.finance-jixels-stats span {
  display: block;
  font-size: 12px;
  font-weight: 800;
}

.finance-jixels-insights strong,
.finance-jixels-stats strong {
  display: block;
  margin-top: 8px;
  color: rgba(255, 255, 255, 0.96);
  font-size: clamp(24px, 3vw, 34px);
}

.finance-jixels-insights small,
.finance-jixels-stats small {
  display: block;
  margin-top: 6px;
  font-size: 12px;
}

.finance-jixels-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 18px;
}

.finance-jixels-content {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, 0.8fr);
  gap: 14px;
  margin-top: 18px;
}

.finance-jixels-content > .panel,
.finance-subpages {
  border-color: rgba(91, 214, 255, 0.18);
  background: rgba(6, 16, 31, 0.82);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.28);
}

.finance-section-heading {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  margin-bottom: 16px;
}

.finance-section-heading h2 {
  margin: 0;
  color: rgba(255, 255, 255, 0.94);
  font-size: 22px;
}

.finance-department-cards,
.finance-action-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

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

.finance-department-cards h3,
.finance-review-list h3,
.finance-action-grid h3 {
  margin: 0 0 8px;
  color: rgba(255, 255, 255, 0.94);
  font-size: 17px;
}

.finance-department-cards p,
.finance-review-list p,
.finance-action-grid p {
  margin: 0;
}

.finance-subpages {
  margin-top: 18px;
}

.finance-workspace-sections {
  display: grid;
  grid-template-columns: minmax(260px, 0.9fr) minmax(260px, 1fr) minmax(0, 1.25fr);
  gap: 14px;
  margin-top: 18px;
  align-items: start;
}

.finance-workspace-sections > .panel {
  background: rgba(6, 16, 31, 0.72);
  border-color: rgba(91, 214, 255, 0.18);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.28);
}

.finance-entry-form {
  grid-template-columns: minmax(180px, 1.2fr) minmax(150px, 0.9fr) minmax(130px, 0.8fr) minmax(130px, 0.8fr) auto;
}

.finance-simple-page #reports .erp-report-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  overflow: visible;
  padding-bottom: 16px;
}

.finance-simple-page #reports .erp-report-grid .finance-report-button {
  width: 100%;
  min-height: 46px;
  white-space: nowrap;
}

.finance-simple-page .erp-action-list {
  grid-template-columns: 1fr;
}

.finance-simple-page .erp-action {
  border-color: rgba(91, 214, 255, 0.18);
  background: rgba(255, 255, 255, 0.045);
}

.finance-simple-page .erp-action:hover {
  border-color: rgba(91, 214, 255, 0.36);
  background: rgba(0, 119, 255, 0.14);
}

.finance-simple-page .erp-approval {
  border-color: rgba(91, 214, 255, 0.16);
  background: rgba(255, 255, 255, 0.045);
}

.finance-simple-page .module-content .field input,
.finance-simple-page .module-content .field select,
.finance-simple-page .module-content .field textarea {
  border-color: rgba(91, 214, 255, 0.18);
  background: rgba(3, 10, 22, 0.76);
  box-shadow: inset 0 1px 0 rgba(91, 214, 255, 0.08);
}

.finance-simple-page .module-content .field input:focus,
.finance-simple-page .module-content .field select:focus,
.finance-simple-page .module-content .field textarea:focus {
  border-color: rgba(91, 214, 255, 0.42);
  background: rgba(6, 16, 31, 0.92);
}

.finance-workspace-sections .erp-approval-list {
  max-height: 320px;
  overflow: auto;
}

.finance-workspace-sections .empty-state {
  margin: 16px 18px 18px;
  border-radius: 8px;
}

.finance-report-button {
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid rgba(91, 214, 255, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
  color: rgba(255, 255, 255, 0.88);
  text-align: left;
  cursor: pointer;
}

.finance-report-button:hover {
  border-color: rgba(91, 214, 255, 0.36);
  background: rgba(0, 119, 255, 0.14);
}

.finance-focus-panel {
  border-color: rgba(91, 214, 255, 0.18);
  background: rgba(6, 16, 31, 0.82);
  box-shadow: 0 22px 54px rgba(0, 0, 0, 0.32);
}

.finance-focus-body,
.finance-focus-grid {
  padding: 16px 18px 18px;
}

.finance-focus-body strong {
  display: block;
  color: rgba(255, 255, 255, 0.94);
  font-size: clamp(26px, 4vw, 42px);
}

.finance-focus-body p {
  max-width: 760px;
  margin: 10px 0 0;
  color: rgba(255, 255, 255, 0.68);
  line-height: 1.6;
}

.finance-focus-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.finance-focus-grid article {
  padding: 14px;
  border: 1px solid rgba(91, 214, 255, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
}

.finance-focus-grid span,
.finance-focus-grid strong {
  display: block;
}

.finance-focus-grid span {
  color: rgba(255, 255, 255, 0.62);
  font-size: 12px;
}

.finance-focus-grid strong {
  margin-top: 8px;
  color: rgba(255, 255, 255, 0.94);
  font-size: 24px;
}

.erp-action-list,
.erp-approval-list,
.erp-message-list,
.erp-activity-list,
.erp-report-grid {
  display: grid;
  gap: 10px;
  padding: 16px 18px 18px;
}

.erp-action {
  width: 100%;
  text-align: left;
  cursor: pointer;
  color: rgba(255, 255, 255, 0.92);
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
}

.erp-action:hover {
  transform: translateY(-2px);
  border-color: rgba(91, 214, 255, 0.36);
  background: rgba(0, 119, 255, 0.14);
}

.erp-action span,
.erp-message-list span,
.erp-activity-list span,
.erp-approval span,
.erp-message-list small,
.erp-activity-list small {
  display: block;
  margin-top: 5px;
  color: rgba(255, 255, 255, 0.62);
  font-size: 12px;
}

.erp-approval {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}

.erp-approval p {
  margin: 8px 0 0;
  color: rgba(255, 255, 255, 0.70);
  font-size: 13px;
}

.erp-approval.approved {
  border-color: rgba(37, 99, 235, 0.32);
}

.erp-approval.paid {
  border-color: rgba(56, 189, 248, 0.42);
}

.erp-approval.rejected {
  border-color: rgba(220, 38, 38, 0.32);
}

.erp-approval.returned {
  border-color: rgba(14, 165, 233, 0.34);
}

.erp-row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.erp-row-actions .danger {
  color: #dff6ff;
  border-color: rgba(91, 214, 255, 0.28);
}

.erp-message-form {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.4fr) auto;
  gap: 12px;
  padding: 16px 18px 0;
  align-items: end;
}

.module-content .field input,
.module-content .field select,
.module-content .field textarea,
.erp-message-form input,
.erp-message-form select,
.erp-message-form textarea {
  width: 100%;
  border: 1px solid rgba(91, 214, 255, 0.18);
  background: rgba(3, 10, 22, 0.76);
  color: rgba(255, 255, 255, 0.92);
  box-shadow: inset 0 1px 0 rgba(91, 214, 255, 0.08);
  color-scheme: dark;
}

.module-content .field input:focus,
.module-content .field select:focus,
.module-content .field textarea:focus,
.erp-message-form input:focus,
.erp-message-form select:focus,
.erp-message-form textarea:focus {
  border-color: rgba(91, 214, 255, 0.42);
  background: rgba(6, 16, 31, 0.92);
}

.module-content .field input::placeholder,
.module-content .field textarea::placeholder,
.erp-message-form input::placeholder,
.erp-message-form textarea::placeholder {
  color: rgba(255, 255, 255, 0.46);
}

.module-content .field input:-webkit-autofill,
.erp-message-form input:-webkit-autofill {
  -webkit-text-fill-color: rgba(255, 255, 255, 0.92);
  box-shadow: 0 0 0 1000px rgba(5, 9, 20, 0.96) inset;
}

.erp-report-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.erp-report-grid .btn {
  justify-content: center;
}

.erp-report-card {
  display: grid;
  gap: 14px;
  padding: 16px;
  border: 1px solid rgba(91, 214, 255, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
}

.erp-report-card strong {
  color: rgba(255, 255, 255, 0.92);
}

.erp-report-periods {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.erp-report-periods .btn {
  min-width: 0;
  width: 100%;
  min-height: 44px;
  padding: 0 14px;
  justify-content: center;
  font-size: 13px;
  line-height: 1;
  white-space: nowrap;
}

.portal-hub-page {
  background:
    radial-gradient(900px 560px at 12% -10%, rgba(0, 119, 255, 0.24), transparent 60%),
    radial-gradient(760px 480px at 92% 0%, rgba(91, 214, 255, 0.16), transparent 58%),
    linear-gradient(180deg, #050914, #07111f 62%, #05070d);
}

.portal-hub-topbar {
  position: sticky;
  top: 0;
  z-index: 20;
}

.portal-hub-layout {
  gap: 18px;
}

.portal-hub-hero {
  padding: clamp(20px, 4vw, 34px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
}

.portal-hub-hero h1 {
  margin: 8px 0 0;
  font-size: clamp(28px, 4vw, 48px);
  letter-spacing: 0;
}

.portal-hub-profile {
  min-width: min(320px, 100%);
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(91, 214, 255, 0.18);
  background: rgba(255, 255, 255, 0.055);
}

.portal-hub-profile strong,
.portal-hub-profile span {
  display: block;
}

.profile-avatar,
.portal-hub-icon {
  display: grid;
  place-items: center;
  color: #fff;
  font-weight: 950;
  background: linear-gradient(135deg, #0077ff, #66dcff);
  box-shadow: 0 16px 36px rgba(0, 119, 255, 0.26);
}

.profile-avatar {
  width: 48px;
  height: 48px;
  border-radius: 16px;
}

.portal-hub-widgets {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.portal-hub-grid {
  padding: 16px 18px 18px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.portal-hub-card {
  position: relative;
  overflow: hidden;
  min-height: 280px;
  display: grid;
  align-content: start;
  gap: 10px;
  border-radius: 20px;
  border: 1px solid rgba(130, 190, 255, 0.14);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035)),
    rgba(2, 8, 18, 0.58);
  box-shadow: 0 22px 70px rgba(0, 0, 0, 0.22);
  padding: 18px;
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

.portal-hub-card:hover {
  transform: translateY(-5px);
  border-color: rgba(91, 214, 255, 0.38);
  background: rgba(255, 255, 255, 0.072);
}

.portal-hub-card-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}

.portal-hub-icon {
  width: 48px;
  height: 48px;
  border-radius: 16px;
  font-size: 12px;
}

.portal-hub-card h3 {
  margin: 4px 0 0;
  font-size: 18px;
}

.portal-hub-card p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.portal-hub-summary {
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(91, 214, 255, 0.16);
  background: rgba(0, 119, 255, 0.08);
  color: rgba(235, 245, 255, 0.86);
  font-size: 12px;
  font-weight: 800;
}

.portal-hub-card .btn {
  margin-top: auto;
}

.portal-hub-card-add {
  opacity: 0.78;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.025)),
    rgba(2, 8, 18, 0.4);
}

.portal-hub-card-add .portal-status {
  border-color: rgba(255, 255, 255, 0.18);
  color: var(--muted);
}

.empty-state {
  margin: 0 18px 18px;
  padding: 18px;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.04);
  color: var(--muted);
}

@media (max-width: 980px) {
  .agreement-grid,
  .portal-install-grid,
  .agreement-form {
    grid-template-columns: 1fr;
  }

  .portal-hub-hero,
  .portal-hub-widgets,
  .portal-hub-grid,
  .module-app-shell,
  .module-shared-grid,
  .finance-dashboard-panel,
  .finance-guide-grid,
  .finance-jixels-hero,
  .finance-jixels-stats,
  .finance-jixels-content,
  .finance-department-cards,
  .finance-action-grid,
  .finance-flow-grid,
  .finance-workspace-sections,
  .branch-management-grid,
  .finance-focus-grid,
  .finance-simple-page .erp-action-list,
  .erp-kpi-grid,
  .erp-dashboard-grid,
  .erp-work-grid,
  .erp-message-form,
  .erp-report-grid,
  .erp-report-periods {
    grid-template-columns: 1fr;
  }

  .erp-report-periods .btn {
    min-height: 42px;
  }

  .module-menu-toggle {
    display: inline-grid;
    place-items: center;
  }

  .module-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 70;
    width: min(310px, calc(100vw - 42px));
    transform: translateX(-104%);
    transition: transform 180ms ease;
    border-radius: 0 18px 18px 0;
    overflow-y: auto;
  }

  .module-sidebar.is-collapsed {
    width: min(310px, calc(100vw - 42px));
  }

  .module-sidebar.is-collapsed .module-sidebar-head strong,
  .module-sidebar.is-collapsed .module-nav a small,
  .module-sidebar.is-collapsed .module-nav a span,
  .module-sidebar.is-collapsed .module-nav-group > strong {
    font-size: inherit;
  }

  .module-sidebar.is-open {
    transform: translateX(0);
  }

  .module-menu-backdrop {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 65;
    opacity: 0;
    pointer-events: none;
    transition: opacity 180ms ease;
    background: rgba(5, 17, 36, 0.46);
    backdrop-filter: blur(3px);
  }

  body.module-menu-open .module-menu-backdrop {
    opacity: 1;
    pointer-events: auto;
  }

  .module-sidebar-head .btn {
    display: inline-flex;
  }

  .sales-report-status-grid,
  .module-page-summary,
  .module-settings-summary,
  .module-settings-form fieldset,
  .sales-report-summary,
  .sales-metric-grid,
  .sales-work-layout,
  .sales-review-layout,
  .sales-report-form {
    grid-template-columns: 1fr;
  }

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

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

@media (min-width: 981px) and (max-width: 1200px) {
  .finance-workspace-sections {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .finance-simple-page #reports {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  .onboarding-shell {
    place-items: start center;
    padding: 14px 10px 24px;
  }

  .onboarding-panel,
  .auth-card,
  .org-register-card {
    width: 100%;
    border-radius: 16px;
    padding: 14px;
  }

  .onboarding-head {
    align-items: flex-start;
  }

  .onboarding-head h1,
  .auth-header h1 {
    font-size: 20px;
    line-height: 1.15;
  }

  .agreement-grid,
  .portal-install-grid,
  .portal-hub-grid,
  .module-shared-grid {
    gap: 10px;
  }

  .portal-bulk-bar {
    margin: 10px 10px 0;
    display: grid;
  }

  .portal-bulk-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .portal-bulk-actions .btn {
    width: 100%;
    min-height: 46px;
  }

  .pwa-install-help {
    margin: 10px 10px 0;
  }

  .portal-install-card,
  .portal-hub-card,
  .module-shared-grid article {
    border-radius: 16px;
    padding: 14px;
    min-height: auto;
  }

  .portal-card-actions .btn,
  .portal-hub-card .btn,
  .agreement-form .btn {
    width: 100%;
    min-height: 46px;
  }

  .portal-hub-hero {
    padding: 18px;
  }

  .portal-hub-profile {
    min-width: 0;
    width: 100%;
  }

  .portal-hub-widgets {
    gap: 10px;
  }

  .portal-hub-grid {
    padding: 12px;
  }
}

.finance-simple-page.portal-hub-page {
  color: #0f172a;
  background: #f8fafc;
  overflow: hidden;
}

.finance-simple-page .portal-hub-layout {
  height: calc(100vh - 96px);
  overflow: hidden;
}

.finance-simple-page .module-app-shell,
.finance-simple-page .module-app-shell:has(.module-sidebar.is-collapsed) {
  grid-template-columns: 280px minmax(0, 1fr);
}

.finance-simple-page .module-sidebar {
  position: sticky;
  top: 0;
  max-height: calc(100vh - 118px);
  overflow-y: auto;
}

.finance-simple-page .module-content {
  max-height: calc(100vh - 118px);
  overflow-y: auto;
  padding-right: 6px;
  scrollbar-gutter: stable;
}

.finance-simple-page .module-sidebar.is-collapsed .module-sidebar-head strong,
.finance-simple-page .module-sidebar.is-collapsed .module-nav a small,
.finance-simple-page .module-sidebar.is-collapsed .module-nav a span {
  font-size: inherit;
}

.finance-simple-page .module-sidebar.is-collapsed .module-sidebar-head {
  justify-content: space-between;
}

.finance-simple-page .module-sidebar.is-collapsed .module-nav a {
  justify-content: space-between;
  padding-inline: 12px;
}

.finance-simple-page .portal-hub-topbar,
.finance-simple-page .module-sidebar,
.finance-simple-page .panel,
.finance-simple-page .kpi {
  border-color: rgba(15, 23, 42, 0.08);
  background: #ffffff;
  color: #0f172a;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
}

.finance-simple-page .panel,
.finance-simple-page .kpi {
  border-radius: 14px;
}

.finance-simple-page .finance-hero-section {
  border-color: rgba(15, 23, 42, 0.08);
  background:
    radial-gradient(620px 360px at 92% 0%, rgba(37, 99, 235, 0.14), transparent 62%),
    linear-gradient(135deg, #ffffff, #eff6ff);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
}

.finance-simple-page .finance-hero-section h1,
.finance-simple-page .finance-section-heading h2,
.finance-simple-page .panel-header h2,
.finance-simple-page .kpi-value,
.finance-simple-page .finance-balance-card strong,
.finance-simple-page .finance-flow-grid strong,
.finance-simple-page .finance-alert-list strong,
.finance-simple-page .finance-focus-body strong,
.finance-simple-page .finance-focus-grid strong,
.finance-simple-page .module-nav a.active,
.finance-simple-page .erp-action strong,
.finance-simple-page .erp-approval strong {
  color: #0f172a;
}

.finance-simple-page .muted,
.finance-simple-page .kpi-foot,
.finance-simple-page .finance-balance-card p,
.finance-simple-page .finance-focus-body p,
.finance-simple-page .finance-focus-grid span,
.finance-simple-page .finance-alert-list span,
.finance-simple-page .erp-action span,
.finance-simple-page .erp-approval span,
.finance-simple-page .erp-approval p,
.finance-simple-page .table td,
.finance-simple-page .table th {
  color: #475569;
}

.finance-simple-page .eyebrow,
.finance-simple-page .finance-hero-section .eyebrow {
  color: #1d4ed8;
}

.finance-simple-page .module-nav a {
  min-height: 54px;
  border-color: rgba(15, 23, 42, 0.08);
  background: #f8fafc;
  color: #334155;
  border-radius: 12px;
  font-size: 15px;
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.finance-simple-page .module-nav-group {
  display: grid;
  gap: 7px;
  padding-top: 8px;
}

.finance-simple-page .module-nav-group + .module-nav-group {
  margin-top: 10px;
  padding-top: 14px;
  border-top: 1px solid rgba(15, 23, 42, 0.08);
}

.finance-simple-page .module-nav-group > strong {
  padding: 0 4px;
  color: #64748b;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.finance-simple-page .module-nav .nav-badge {
  min-width: 24px;
  min-height: 24px;
  padding: 4px 7px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: #dbeafe;
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 950;
}

.finance-simple-page .module-nav a b {
  color: #1d4ed8;
  background: rgba(37, 99, 235, 0.14);
}

.finance-simple-page .module-nav a.active,
.finance-simple-page .module-nav a:hover {
  border-color: rgba(37, 99, 235, 0.26);
  background: #eff6ff;
  transform: translateY(-1px);
}

.finance-control-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
  gap: 18px;
  margin-top: 18px;
}

.finance-home {
  padding: 22px;
}

.finance-home-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
}

.finance-home-head h2 {
  margin: 0;
  color: #0f172a;
  font-size: clamp(32px, 5vw, 56px);
  line-height: 1.02;
}

.finance-home-head p:not(.eyebrow) {
  max-width: 620px;
  margin: 10px 0 0;
  color: #475569;
  font-size: 18px;
  line-height: 1.55;
}

.finance-soft-badge {
  padding: 9px 13px;
  border: 1px solid rgba(37, 99, 235, 0.18);
  border-radius: 999px;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 950;
}

.finance-simple-cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 20px;
}

.finance-simple-cards article,
.finance-home-block {
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 16px;
  background: #f8fafc;
  box-shadow: none;
}

.finance-simple-cards article {
  min-height: 140px;
  padding: 18px;
}

.finance-simple-cards span,
.finance-simple-cards strong,
.finance-simple-cards small {
  display: block;
}

.finance-simple-cards span {
  color: #475569;
  font-size: 15px;
  font-weight: 900;
}

.finance-simple-cards strong {
  margin-top: 12px;
  color: #0f172a;
  font-size: clamp(26px, 4vw, 42px);
  line-height: 1.05;
}

.finance-simple-cards small {
  margin-top: 8px;
  color: #64748b;
  font-size: 13px;
}

.finance-home-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
  gap: 14px;
  margin-top: 14px;
}

.finance-home-block {
  padding: 18px;
}

.finance-home-block h3 {
  margin: 0 0 14px;
  color: #0f172a;
  font-size: 22px;
}

.finance-structure-dashboard .finance-home-head {
  padding-bottom: 2px;
}

.finance-structure-groups {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 16px;
}

.finance-structure-list {
  display: grid;
  gap: 10px;
}

.finance-structure-card {
  width: 100%;
  min-height: 88px;
  padding: 14px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 12px;
  background: #ffffff;
  color: #0f172a;
  text-align: left;
  cursor: pointer;
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.finance-structure-card:hover,
.finance-structure-card:focus-visible {
  border-color: rgba(37, 99, 235, 0.28);
  background: #eff6ff;
  box-shadow: 0 12px 28px rgba(37, 99, 235, 0.12);
  transform: translateY(-2px);
}

.finance-structure-card strong,
.finance-structure-card span {
  display: block;
}

.finance-structure-card strong {
  color: #0f172a;
  font-size: 17px;
}

.finance-structure-card span {
  margin-top: 7px;
  color: #475569;
  font-size: 13px;
  line-height: 1.45;
}

.finance-structure-card em {
  margin-left: 6px;
  padding: 2px 7px;
  border-radius: 999px;
  background: #dbeafe;
  color: #1d4ed8;
  font-style: normal;
  font-size: 12px;
}

.finance-summary-card {
  grid-row: span 2;
}

.finance-quick-actions,
.finance-alert-list {
  display: grid;
  gap: 12px;
  padding: 0;
}

.finance-quick-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.finance-alert-list article,
.finance-simple-page .finance-balance-card,
.finance-simple-page .finance-flow-grid article,
.finance-page-summary article,
.finance-simple-page .erp-action,
.finance-simple-page .erp-approval,
.finance-simple-page .finance-focus-grid article,
.finance-simple-page .finance-report-button {
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: #f8fafc;
  border-radius: 12px;
  box-shadow: none;
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.finance-simple-page .erp-action:hover,
.finance-simple-page .finance-report-button:hover {
  border-color: rgba(37, 99, 235, 0.28);
  background: #eff6ff;
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(37, 99, 235, 0.12);
}

.finance-simple-page .erp-action {
  min-height: 88px;
}

.finance-simple-page .erp-action strong {
  font-size: 18px;
}

.finance-simple-page .finance-primary-action {
  border-color: rgba(37, 99, 235, 0.28);
  background: #eff6ff;
}

.finance-simple-page .kpi {
  min-height: 122px;
  padding: 20px;
}

.finance-simple-page .kpi-label {
  font-size: 14px;
}

.finance-simple-page .kpi-value {
  margin-top: 8px;
  font-size: clamp(28px, 4vw, 42px);
}

.finance-simple-page .finance-balance-card {
  padding: 20px;
}

.finance-simple-page .finance-flow-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.finance-simple-page .finance-flow-grid article,
.finance-alert-list article {
  min-height: 92px;
}

.finance-page-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 0 18px 18px;
}

.finance-page-summary article {
  padding: 16px;
}

.finance-page-summary span,
.finance-page-summary strong {
  display: block;
}

.finance-page-summary span {
  color: #64748b;
  font-size: 13px;
  font-weight: 800;
}

.finance-page-summary strong {
  margin-top: 8px;
  color: #0f172a;
  font-size: 28px;
}

.finance-simple-page .finance-meter {
  background: #e2e8f0;
}

.finance-simple-page .finance-meter i {
  background: linear-gradient(90deg, #1d4ed8, #38bdf8);
}

.finance-simple-page .finance-workspace-sections {
  grid-template-columns: minmax(320px, 1fr) minmax(320px, 1fr) minmax(360px, 1.2fr);
}

.finance-simple-page #reports .erp-report-grid {
  grid-template-columns: repeat(3, minmax(150px, 1fr));
}

.finance-simple-page .module-content .field input,
.finance-simple-page .module-content .field select,
.finance-simple-page .module-content .field textarea,
.finance-simple-page #module-search,
.finance-simple-page #finance-filter {
  border-color: rgba(15, 23, 42, 0.14);
  background: #ffffff;
  color: #0f172a;
  min-height: 44px;
  border-radius: 12px;
}

.finance-simple-page .table-wrap {
  background: #ffffff;
  border-radius: 0 0 14px 14px;
}

.finance-simple-page .empty-state {
  color: #475569;
  background: #f8fafc;
  border-color: rgba(15, 23, 42, 0.08);
}

@media (max-width: 1100px) {
  .finance-control-grid,
  .finance-simple-page .finance-workspace-sections,
  .branch-management-page .erp-work-grid,
  .finance-simple-cards,
  .finance-home-grid,
  .finance-structure-groups {
    grid-template-columns: 1fr;
  }

  .finance-simple-page #reports .erp-report-grid {
    grid-template-columns: repeat(2, minmax(150px, 1fr));
  }
}

@media (max-width: 620px) {
  .finance-simple-page #reports .erp-report-grid,
  .finance-simple-page .finance-flow-grid,
  .branch-management-grid,
  .finance-page-summary,
  .finance-quick-actions,
  .finance-simple-cards,
  .finance-home-grid,
  .finance-structure-groups,
  .finance-simple-page .finance-focus-grid {
    grid-template-columns: 1fr;
  }

  .finance-home {
    padding: 16px;
  }

  .finance-home-head {
    display: grid;
  }
}

@media (max-width: 980px) {
  .branch-management-page .module-app-shell,
  .branch-management-page .module-app-shell:has(.module-sidebar.is-collapsed) {
    display: block;
    grid-template-columns: 1fr;
  }
}

@media (max-width: 980px) {
  .finance-simple-page.portal-hub-page {
    overflow: auto;
  }

  .finance-simple-page .module-menu-toggle {
    display: inline-grid;
    place-items: center;
    flex: 0 0 auto;
  }

  .finance-simple-page .portal-hub-layout {
    height: auto;
    overflow: visible;
  }

  .finance-simple-page .module-app-shell,
  .finance-simple-page .module-app-shell:has(.module-sidebar.is-collapsed) {
    display: block;
    grid-template-columns: 1fr;
  }

  .finance-simple-page .module-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    top: 0;
    z-index: 70;
    width: min(320px, calc(100vw - 36px));
    max-height: 100vh;
    padding: 14px;
    border-radius: 0 18px 18px 0;
    overflow-y: auto;
    transform: translateX(-105%);
    transition: transform 180ms ease;
  }

  .finance-simple-page .module-sidebar.is-open {
    transform: translateX(0);
  }

  .finance-simple-page .module-sidebar.is-collapsed {
    width: min(320px, calc(100vw - 36px));
  }

  .finance-simple-page .module-sidebar-head .btn {
    display: inline-flex;
  }

  .finance-simple-page .module-menu-backdrop {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 65;
    opacity: 0;
    pointer-events: none;
    background: rgba(15, 23, 42, 0.36);
    backdrop-filter: blur(4px);
    transition: opacity 180ms ease;
  }

  .finance-simple-page.module-menu-open .module-menu-backdrop,
  body.finance-simple-page.module-menu-open .module-menu-backdrop {
    opacity: 1;
    pointer-events: auto;
  }

  .finance-simple-page .module-content {
    max-height: none;
    overflow: visible;
    padding-right: 0;
  }
}
