html {
  font-size: 15px;
}

body {
  min-height: 100vh;
  background: #f5f7fb;
  color: #14213d;
  font-family: "Segoe UI", Arial, sans-serif;
  letter-spacing: 0;
}

a {
  color: inherit;
}

.btn,
.form-control,
.form-select {
  border-radius: 6px;
}

.btn:focus,
.btn:active:focus,
.nav-link:focus,
.form-control:focus,
.form-select:focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 125, 132, 0.22);
}

.btn-primary {
  background: #007d84;
  border-color: #007d84;
  font-weight: 700;
}

.btn-primary:hover {
  background: #00696f;
  border-color: #00696f;
}

.topbar {
  background: #14213d;
  color: #fff;
  box-shadow: 0 4px 18px rgba(20, 33, 61, 0.14);
}

.topbar .navbar-toggler {
  border-color: rgba(255, 255, 255, 0.45);
}

.topbar .navbar-toggler-icon {
  filter: invert(1);
}

.brand-mark {
  align-items: center;
  color: #fff;
  display: inline-flex;
  font-weight: 700;
  gap: 0.65rem;
}

.brand-mark:hover {
  color: #fff;
}

.brand-symbol,
.login-logo,
.hospital-logo,
.module-icon {
  align-items: center;
  background: #fca311;
  border-radius: 8px;
  color: #14213d;
  display: inline-flex;
  flex: 0 0 auto;
  font-weight: 800;
  height: 2.25rem;
  justify-content: center;
  width: 2.25rem;
}

.nav-session {
  align-items: center;
  display: flex;
  gap: 1rem;
}

.app-main {
  padding: 1.25rem 0 2rem;
}

.auth-page {
  align-items: center;
  display: grid;
  min-height: calc(100vh - 5.5rem);
  padding: 1rem 0;
}

.login-panel {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 18px 40px rgba(20, 33, 61, 0.08);
  margin: 0 auto;
  max-width: 460px;
  padding: 1.5rem;
  width: min(100%, 460px);
}

.login-header {
  align-items: center;
  border-bottom: 1px solid #e3e8f0;
  display: flex;
  gap: 1rem;
  margin-bottom: 1.25rem;
  padding-bottom: 1rem;
}

.login-header h1 {
  font-size: 1.18rem;
  line-height: 1.25;
  margin: 0;
}

.login-header p {
  color: #67748a;
  margin: 0.15rem 0 0;
}

.login-form {
  display: grid;
  gap: 1rem;
}

.form-field {
  display: grid;
  gap: 0.3rem;
}

.form-label {
  color: #304057;
  font-weight: 700;
  margin: 0;
}

.validation-summary ul {
  margin-bottom: 0;
  padding-left: 1.1rem;
}

.dashboard-head {
  align-items: stretch;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-bottom: 1.5rem;
}

.hospital-block {
  align-items: center;
  background: #fff;
  border-left: 5px solid #007d84;
  border-radius: 8px;
  box-shadow: 0 10px 26px rgba(20, 33, 61, 0.07);
  display: flex;
  gap: 1rem;
  padding: 1.25rem;
}

.hospital-block h1 {
  font-size: 1.4rem;
  margin: 0;
}

.hospital-meta {
  color: #67748a;
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.85rem;
  margin-top: 0.35rem;
}

.dashboard-metrics {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(130px, 1fr));
}

.metric {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  min-width: 0;
  padding: 1rem;
}

.metric span {
  color: #67748a;
  font-size: 0.84rem;
  font-weight: 700;
}

.metric strong {
  font-size: 1.05rem;
  margin-top: 0.25rem;
  overflow-wrap: anywhere;
}

.module-section {
  margin-top: 1.5rem;
}

.section-title {
  align-items: center;
  display: flex;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
}

.section-title h2 {
  font-size: 1.05rem;
  margin: 0;
}

.section-title span {
  background: #eaf1f2;
  border-radius: 999px;
  color: #007d84;
  font-weight: 800;
  min-width: 2rem;
  padding: 0.15rem 0.6rem;
  text-align: center;
}

.module-grid {
  display: grid;
  gap: 0.85rem;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
}

.module-tile {
  align-items: center;
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.85rem;
  grid-template-columns: auto minmax(0, 1fr) auto;
  min-height: 78px;
  padding: 0.9rem;
  text-decoration: none;
  transition: border-color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
}

.module-tile:hover {
  border-color: #007d84;
  box-shadow: 0 12px 22px rgba(20, 33, 61, 0.08);
  color: inherit;
  transform: translateY(-1px);
}

.module-text {
  display: grid;
  min-width: 0;
}

.module-text strong {
  overflow-wrap: anywhere;
}

.module-text small {
  color: #67748a;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.module-badge {
  background: #d64045;
  border-radius: 999px;
  color: #fff;
  font-size: 0.78rem;
  font-weight: 800;
  min-width: 1.6rem;
  padding: 0.15rem 0.5rem;
  text-align: center;
}

.empty-state,
.module-fallback {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  margin: 2rem auto 0;
  max-width: 760px;
  padding: 1.25rem;
}

.empty-state h2,
.module-fallback h1 {
  font-size: 1.25rem;
  margin: 0 0 0.4rem;
}

.empty-state p,
.module-fallback p {
  color: #67748a;
  margin: 0;
}

.module-fallback {
  display: grid;
  gap: 1rem;
}

.fallback-panel {
  background: #f5f7fb;
  border-left: 5px solid #fca311;
  border-radius: 8px;
  display: grid;
  gap: 0.25rem;
  padding: 1rem;
}

.fallback-panel span {
  color: #67748a;
}

.page-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 1rem;
}

.page-head h1 {
  font-size: 1.35rem;
  margin: 0;
}

.page-head p {
  color: #67748a;
  margin: 0.2rem 0 0;
}

.page-actions {
  align-items: center;
  display: flex;
  gap: 0.65rem;
}

.list-panel,
.form-panel {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 10px 24px rgba(20, 33, 61, 0.06);
}

.list-panel {
  padding: 1rem;
}

.search-strip {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 150px minmax(220px, 1fr) auto auto;
  margin-bottom: 1rem;
}

.opd-search-strip {
  grid-template-columns: 170px minmax(220px, 1fr) 160px auto auto;
}

.ipd-search-strip {
  grid-template-columns: 150px 170px minmax(220px, 1fr) auto auto;
}

.ipd-charge-search {
  grid-template-columns: 170px minmax(220px, 1fr) minmax(150px, auto) auto auto;
}

.master-search-strip {
  grid-template-columns: minmax(220px, 1fr) auto auto;
}

.visit-load-strip {
  margin-bottom: 1rem;
}

.ipd-receipt-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(340px, 0.9fr) minmax(0, 1.6fr);
}

.ipd-final-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(340px, 0.85fr) minmax(0, 1.75fr);
}

.ipd-discharge-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(340px, 0.82fr) minmax(0, 1.8fr);
}

.ipd-bed-transfer-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(360px, 0.95fr) minmax(0, 1.6fr);
}

.ipd-receipt-filter {
  grid-template-columns: 150px 150px 140px minmax(150px, auto) auto;
}

.discharge-search-strip {
  grid-template-columns: minmax(220px, 1fr) minmax(170px, auto) auto auto;
}

.bed-transfer-ward-strip {
  grid-template-columns: minmax(240px, 1fr) auto;
}

.bed-board-filter {
  grid-template-columns: minmax(180px, 240px) 170px minmax(260px, 1fr) auto;
}

.bed-board-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(9, minmax(110px, 1fr));
  margin-bottom: 1rem;
}

.bed-board-summary div {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(20, 33, 61, 0.05);
  display: grid;
  gap: 0.2rem;
  min-height: 74px;
  padding: 0.75rem;
}

.bed-board-summary span,
.bed-card-location span,
.bed-card-patient span,
.bed-card-open span,
.bed-card-details dt {
  color: #67748a;
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
}

.bed-board-summary strong {
  color: #14213d;
  font-size: 1.15rem;
}

.bed-board-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
}

.bed-card {
  --bed-accent: #2446a5;
  --bed-tint: #e8f0ff;
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  border-top: 5px solid var(--bed-accent);
  box-shadow: 0 10px 24px rgba(20, 33, 61, 0.06);
  display: grid;
  gap: 0.75rem;
  min-height: 330px;
  overflow-wrap: anywhere;
  padding: 0.85rem;
}

.bed-card-status {
  align-items: center;
  background: var(--bed-tint);
  border-radius: 6px;
  color: var(--bed-accent);
  display: flex;
  font-size: 0.78rem;
  font-weight: 900;
  justify-content: center;
  min-height: 34px;
  padding: 0.35rem 0.55rem;
}

.bed-card-head {
  align-items: start;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
}

.bed-card-head h2 {
  color: #14213d;
  font-size: 1.1rem;
  margin: 0;
}

.bed-card-head span {
  color: #67748a;
  display: block;
  font-size: 0.82rem;
  margin-top: 0.15rem;
}

.bed-card-head > strong {
  background: #f5f7fb;
  border-radius: 6px;
  color: #304057;
  font-size: 0.72rem;
  padding: 0.25rem 0.45rem;
  white-space: nowrap;
}

.bed-card-location,
.bed-card-patient,
.bed-card-open {
  background: #f8fafc;
  border: 1px solid #e3e8f0;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.65rem;
}

.bed-card-location strong,
.bed-card-patient strong,
.bed-card-open strong {
  color: #14213d;
  font-size: 0.95rem;
}

.bed-card-patient small {
  color: #67748a;
}

.bed-card-details {
  display: grid;
  gap: 0.55rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
}

.bed-card-details div {
  background: #fff;
  border: 1px solid #e3e8f0;
  border-radius: 8px;
  min-width: 0;
  padding: 0.55rem;
}

.bed-card-details dd {
  color: #14213d;
  font-weight: 800;
  margin: 0.15rem 0 0;
}

.bed-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.bed-status-admitted {
  --bed-accent: #007d54;
  --bed-tint: #e6f5ef;
}

.bed-status-occupied {
  --bed-accent: #a55a00;
  --bed-tint: #fff2d5;
}

.bed-status-vacant {
  --bed-accent: #2446a5;
  --bed-tint: #e8f0ff;
}

.bed-status-reserved {
  --bed-accent: #6f42c1;
  --bed-tint: #f0e9ff;
}

.bed-status-maintenance {
  --bed-accent: #b4232a;
  --bed-tint: #fdecec;
}

.due-positive strong,
.due-positive dd {
  color: #b4232a;
}

.due-negative strong,
.due-negative dd {
  color: #007d54;
}

.bed-board-empty {
  margin-top: 1rem;
}

.bed-status-report-filter {
  grid-template-columns: minmax(180px, 240px) 180px minmax(260px, 1fr) auto auto;
}

.bed-status-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(9, minmax(110px, 1fr));
  margin-bottom: 1rem;
}

.bed-status-summary div {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(20, 33, 61, 0.05);
  display: grid;
  gap: 0.2rem;
  min-height: 74px;
  padding: 0.75rem;
}

.bed-status-summary span {
  color: #67748a;
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
}

.bed-status-summary strong {
  color: #14213d;
  font-size: 1.15rem;
}

.bed-status-report-panel {
  padding: 1rem;
}

.bed-status-report-table {
  min-width: 1720px;
}

.bed-status-report-table-wrap {
  max-height: 68vh;
}

.bed-report-admitted td {
  background: #f0fdf8;
}

.bed-report-maintenance td {
  background: #fff7f7;
}

.bed-report-reserved td {
  background: #fffbeb;
}

.admission-report-filter {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(20, 33, 61, 0.05);
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 145px 145px 150px minmax(180px, 1fr) minmax(180px, 1fr);
  margin-bottom: 1rem;
  padding: 1rem;
}

.admission-report-query {
  grid-column: span 4;
}

.admission-report-actions {
  align-items: end;
  display: flex;
  gap: 0.5rem;
}

.admission-report-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  margin-bottom: 1rem;
}

.admission-report-summary div {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(20, 33, 61, 0.05);
  display: grid;
  gap: 0.2rem;
  min-height: 74px;
  padding: 0.75rem;
}

.admission-report-summary span {
  color: #67748a;
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
}

.admission-report-summary strong {
  color: #14213d;
  font-size: 1.15rem;
}

.admission-report-panel {
  padding: 1rem;
}

.admission-report-table {
  min-width: 1780px;
}

.admission-report-table-wrap {
  max-height: 68vh;
}

.admission-report-diagnosis {
  max-width: 280px;
}

.receipt-report-filter {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(20, 33, 61, 0.05);
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 145px 145px 135px 135px 170px;
  margin-bottom: 1rem;
  padding: 1rem;
}

.receipt-report-query {
  grid-column: span 4;
}

.receipt-report-actions {
  align-items: end;
  display: flex;
  gap: 0.5rem;
}

.receipt-report-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(6, minmax(120px, 1fr));
  margin-bottom: 1rem;
}

.receipt-report-summary div {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(20, 33, 61, 0.05);
  display: grid;
  gap: 0.2rem;
  min-height: 74px;
  padding: 0.75rem;
}

.receipt-report-summary span {
  color: #67748a;
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
}

.receipt-report-summary strong {
  color: #14213d;
  font-size: 1.15rem;
}

.receipt-report-panel {
  padding: 1rem;
}

.receipt-report-table {
  min-width: 1660px;
}

.receipt-report-table-wrap {
  max-height: 68vh;
}

.charge-report-filter {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(20, 33, 61, 0.05);
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 145px 145px 180px 170px;
  margin-bottom: 1rem;
  padding: 1rem;
}

.charge-report-query {
  grid-column: span 3;
}

.charge-report-actions {
  align-items: end;
  display: flex;
  gap: 0.5rem;
}

.charge-report-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(6, minmax(120px, 1fr));
  margin-bottom: 1rem;
}

.charge-report-summary div {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(20, 33, 61, 0.05);
  display: grid;
  gap: 0.2rem;
  min-height: 74px;
  padding: 0.75rem;
}

.charge-report-summary span {
  color: #67748a;
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
}

.charge-report-summary strong {
  color: #14213d;
  font-size: 1.15rem;
}

.charge-report-panel {
  padding: 1rem;
}

.charge-report-table {
  min-width: 1780px;
}

.charge-report-table-wrap {
  max-height: 68vh;
}

.charge-report-services {
  max-width: 320px;
}

.stock-ledger-filter {
  grid-template-columns: minmax(280px, 1fr) 145px 145px 150px auto;
}

.stock-ledger-summary {
  grid-template-columns: repeat(6, minmax(120px, 1fr));
}

.stock-ledger-table {
  min-width: 1180px;
}

.stock-ledger-detail-table {
  min-width: 1320px;
}

.stock-ledger-opening-row td {
  background: #fffbeb;
  font-weight: 700;
}

.cash-book-filter {
  grid-template-columns: 145px 145px minmax(260px, 1fr) auto;
}

.cash-book-summary {
  grid-template-columns: repeat(4, minmax(120px, 1fr));
}

.cash-book-panel {
  padding: 1rem;
}

.cash-book-table-wrap {
  max-height: 68vh;
}

.cash-book-table {
  min-width: 1320px;
}

.cash-book-table th:nth-child(5) {
  min-width: 340px;
}

.cash-book-particulars {
  max-width: 420px;
  white-space: normal;
}

.cash-book-opening-row td {
  background: #fffbeb;
  font-weight: 700;
}

.cash-book-meta {
  color: #304057;
  gap: 0.5rem;
  margin-bottom: 0.75rem;
}

.bank-book-filter {
  grid-template-columns: 145px 145px minmax(260px, 1fr) auto;
}

.bank-book-summary {
  grid-template-columns: repeat(4, minmax(120px, 1fr));
}

.bank-book-panel {
  padding: 1rem;
}

.bank-book-table-wrap {
  max-height: 68vh;
}

.bank-book-table {
  min-width: 1320px;
}

.bank-book-table th:nth-child(5) {
  min-width: 340px;
}

.bank-book-particulars {
  max-width: 420px;
  white-space: normal;
}

.bank-book-opening-row td {
  background: #fffbeb;
  font-weight: 700;
}

.bank-book-meta {
  color: #304057;
  gap: 0.5rem;
  margin-bottom: 0.75rem;
}

.receipt-payment-filter {
  grid-template-columns: 145px 145px auto;
}

.receipt-payment-summary {
  grid-template-columns: repeat(6, minmax(120px, 1fr));
}

.receipt-payment-panel {
  padding: 1rem;
}

.receipt-payment-table-wrap {
  max-height: 68vh;
}

.receipt-payment-table {
  min-width: 1380px;
}

.receipt-payment-group-head th {
  background: #eaf1f2;
  color: #007d84;
  font-size: 0.78rem;
  text-align: center;
  text-transform: uppercase;
}

.receipt-payment-particulars {
  max-width: 330px;
  white-space: normal;
}

.receipt-payment-total-row td {
  background: #e3e8f0;
  color: #14213d;
  font-weight: 800;
}

.receipt-payment-meta {
  color: #304057;
  gap: 0.5rem;
  margin-bottom: 0.75rem;
}

.receipt-payment-note {
  color: #67748a;
  font-size: 0.86rem;
  margin: 0.75rem 0 0;
}

.menu-master-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1.35fr) minmax(420px, 0.65fr);
}

.menu-master-list-panel,
.menu-master-form-panel {
  padding: 1rem;
}

.menu-master-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.menu-master-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.menu-master-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

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

.menu-master-summary div {
  background: #f8fafc;
  border: 1px solid #e3e8f0;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  min-height: 70px;
  padding: 0.75rem;
}

.menu-master-summary span {
  color: #67748a;
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
}

.menu-master-summary strong {
  color: #14213d;
  font-size: 1.12rem;
}

.menu-master-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(220px, 1fr) minmax(160px, 210px) 145px 145px auto;
  margin-bottom: 1rem;
}

.menu-master-search-actions,
.menu-master-actions,
.menu-master-delete-form {
  display: inline-flex;
  gap: 0.5rem;
}

.menu-master-table-wrap {
  max-height: 62vh;
}

.menu-master-table {
  min-width: 1280px;
}

.menu-master-table th:nth-child(10),
.menu-master-badge-sql {
  max-width: 240px;
}

.menu-master-badge-sql {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu-master-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.menu-master-form-grid .wide {
  grid-column: span 2;
}

.menu-master-readonly {
  background: #f8fafc;
  font-weight: 800;
}

.menu-master-number {
  text-align: right;
}

.menu-master-check-field .form-check {
  align-items: center;
  display: flex;
  gap: 0.45rem;
  min-height: 38px;
}

.menu-master-actions,
.menu-master-delete-form {
  margin-top: 0.75rem;
}

.menu-master-delete-form {
  margin-left: 0.5rem;
}

.final-bill-report-filter {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(20, 33, 61, 0.05);
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 145px 145px 160px 210px 170px;
  margin-bottom: 1rem;
  padding: 1rem;
}

.final-bill-report-query {
  grid-column: span 4;
}

.final-bill-report-actions {
  align-items: end;
  display: flex;
  gap: 0.5rem;
}

.final-bill-report-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(8, minmax(110px, 1fr));
  margin-bottom: 1rem;
}

.final-bill-report-summary div {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(20, 33, 61, 0.05);
  display: grid;
  gap: 0.2rem;
  min-height: 74px;
  padding: 0.75rem;
}

.final-bill-report-summary span {
  color: #67748a;
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
}

.final-bill-report-summary strong {
  color: #14213d;
  font-size: 1.08rem;
}

.final-bill-report-panel {
  padding: 1rem;
}

.final-bill-report-table {
  min-width: 1840px;
}

.final-bill-report-table-wrap {
  max-height: 68vh;
}

.final-bill-report-services {
  max-width: 340px;
}

.discharge-report-filter {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(20, 33, 61, 0.05);
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 145px 145px 170px 230px;
  margin-bottom: 1rem;
  padding: 1rem;
}

.discharge-report-query {
  grid-column: span 3;
}

.discharge-report-actions {
  align-items: end;
  display: flex;
  gap: 0.5rem;
}

.discharge-report-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  margin-bottom: 1rem;
}

.discharge-report-summary div {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(20, 33, 61, 0.05);
  display: grid;
  gap: 0.2rem;
  min-height: 74px;
  padding: 0.75rem;
}

.discharge-report-summary span {
  color: #67748a;
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
}

.discharge-report-summary strong {
  color: #14213d;
  font-size: 1.15rem;
}

.discharge-report-panel {
  padding: 1rem;
}

.discharge-report-table {
  min-width: 1960px;
}

.discharge-report-table-wrap {
  max-height: 68vh;
}

.discharge-report-text {
  display: block;
  max-width: 260px;
}

.ipd-transaction-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(340px, 0.8fr) minmax(0, 1.8fr);
}

.transaction-admissions,
.transaction-workspace {
  padding: 1rem;
}

.transaction-search {
  display: grid;
  gap: 0.6rem;
  grid-template-columns: minmax(0, 1fr) auto auto;
  margin-bottom: 0.85rem;
}

.transaction-admission-table-wrap {
  max-height: 72vh;
}

.transaction-admission-table {
  min-width: 620px;
}

.transaction-patient-head {
  align-items: center;
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 1rem;
  padding: 0.9rem 1rem;
}

.transaction-patient-head h2 {
  color: #14213d;
  font-size: 1.05rem;
  margin: 0;
}

.transaction-patient-head p {
  color: #67748a;
  margin: 0.25rem 0 0;
}

.transaction-patient-head div:last-child {
  color: #526070;
  display: grid;
  gap: 0.2rem;
  text-align: right;
}

.transaction-patient-head strong {
  color: #14213d;
}

.transaction-filter {
  align-items: end;
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 145px 145px auto;
  margin-bottom: 1rem;
  padding: 1rem;
}

.transaction-totals {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(130px, 1fr));
  margin-bottom: 1rem;
}

.transaction-totals div {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(20, 33, 61, 0.05);
  display: grid;
  gap: 0.2rem;
  min-height: 74px;
  padding: 0.75rem;
}

.transaction-totals span {
  color: #67748a;
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
}

.transaction-totals strong {
  color: #14213d;
  font-size: 1.08rem;
}

.transaction-section {
  margin-top: 1rem;
}

.transaction-summary-wrap,
.transaction-payment-wrap {
  max-height: 38vh;
}

.transaction-detail-wrap {
  max-height: 56vh;
}

.transaction-summary-table {
  min-width: 720px;
}

.transaction-detail-table {
  min-width: 1280px;
}

.transaction-payment-table {
  min-width: 680px;
}

.transaction-payment-row {
  background: #f7fbff;
}

.patient-ledger-filter {
  grid-template-columns: 145px 145px minmax(230px, 1fr) 150px auto;
}

.patient-ledger-cancel-check {
  align-items: center;
  display: flex;
  gap: 0.45rem;
  margin: 0 0 0.2rem;
}

.patient-ledger-patient-table {
  min-width: 720px;
}

.patient-ledger-table {
  min-width: 1180px;
}

.patient-ledger-table-wrap {
  max-height: 64vh;
}

.patient-ledger-cancelled-row td {
  background: #fff7f7;
}

.patient-ledger-meta {
  color: #334155;
  gap: 0.55rem;
  margin-bottom: 0.75rem;
}

.doctor-visit-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(340px, 0.8fr) minmax(0, 1.8fr);
}

.doctor-visit-admissions,
.doctor-visit-workspace {
  padding: 1rem;
}

.doctor-visit-admission-wrap {
  max-height: 72vh;
}

.doctor-visit-admission-table {
  min-width: 620px;
}

.doctor-visit-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(130px, 1fr));
}

.doctor-visit-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.doctor-visit-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.doctor-visit-summary strong {
  color: #14213d;
  font-size: 1.08rem;
  overflow-wrap: anywhere;
}

.doctor-visit-entry-wrap {
  max-height: 48vh;
}

.doctor-visit-entry-table {
  min-width: 980px;
}

.doctor-visit-entry-table th:nth-child(1) {
  width: 150px;
}

.doctor-visit-entry-table th:nth-child(2) {
  width: 280px;
}

.doctor-visit-entry-table th:nth-child(3),
.doctor-visit-entry-table th:nth-child(4),
.doctor-visit-entry-table th:nth-child(5) {
  width: 120px;
}

.doctor-visit-saved-wrap {
  max-height: 36vh;
}

.doctor-visit-saved-table {
  min-width: 920px;
}

.dialysis-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(340px, 0.8fr) minmax(0, 1.8fr);
}

.dialysis-admissions,
.dialysis-workspace {
  padding: 1rem;
}

.dialysis-admission-wrap {
  max-height: 72vh;
}

.dialysis-admission-table {
  min-width: 620px;
}

.dialysis-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
}

.dialysis-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.dialysis-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.dialysis-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.inner-form-panel {
  box-shadow: none;
  padding: 1rem;
}

.dialysis-form-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.dialysis-required-check {
  margin: 1.45rem 0 0;
}

.dialysis-saved-wrap {
  max-height: 36vh;
}

.dialysis-saved-table {
  min-width: 1040px;
}

.doctor-round-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(380px, 0.9fr) minmax(0, 1.8fr);
}

.doctor-round-admissions,
.doctor-round-workspace {
  padding: 1rem;
}

.doctor-round-filter {
  display: grid;
  gap: 0.6rem;
  grid-template-columns: minmax(0, 1fr) 180px 150px auto auto;
  margin-bottom: 0.85rem;
}

.doctor-round-check {
  margin: 0;
  min-height: 38px;
}

.doctor-round-admission-wrap {
  max-height: 72vh;
}

.doctor-round-admission-table {
  min-width: 640px;
}

.doctor-round-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(130px, 1fr));
}

.doctor-round-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.doctor-round-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.doctor-round-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.doctor-round-form-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.doctor-round-notes-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.doctor-round-followup {
  margin: 1.45rem 0 0;
}

.doctor-round-history-wrap {
  max-height: 46vh;
}

.doctor-round-history-table {
  min-width: 1180px;
}

.round-cancel-form {
  align-items: center;
  display: grid;
  gap: 0.35rem;
  grid-template-columns: minmax(120px, 1fr) auto;
  margin-top: 0.35rem;
}

.icu-admission-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(360px, 0.85fr) minmax(0, 1.9fr);
}

.icu-source-admissions,
.icu-admission-workspace {
  padding: 1rem;
}

.icu-source-admission-wrap {
  max-height: 72vh;
}

.icu-source-admission-table {
  min-width: 620px;
}

.icu-admission-summary,
.icu-admission-list-summary {
  display: grid;
  gap: 0.75rem;
}

.icu-admission-summary {
  grid-template-columns: repeat(4, minmax(120px, 1fr));
}

.icu-admission-list-summary {
  grid-template-columns: repeat(2, minmax(160px, 1fr));
  margin: 0.75rem 0;
}

.icu-admission-summary div,
.icu-admission-list-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.icu-admission-summary span,
.icu-admission-list-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.icu-admission-summary strong,
.icu-admission-list-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.icu-admission-form-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.icu-admission-note-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.icu-admission-note-grid .wide:last-child {
  grid-column: span 3;
}

.icu-ventilator-check {
  margin: 1.45rem 0 0;
}

.icu-admission-filter {
  display: grid;
  gap: 0.6rem;
  grid-template-columns: minmax(0, 1fr) 160px auto;
  margin-bottom: 0.75rem;
}

.icu-admission-list-wrap {
  max-height: 42vh;
}

.icu-admission-list-table {
  min-width: 1280px;
}

.icu-monitoring-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(360px, 0.85fr) minmax(0, 1.9fr);
}

.icu-monitoring-patients,
.icu-monitoring-workspace {
  padding: 1rem;
}

.icu-monitoring-patient-wrap {
  max-height: 72vh;
}

.icu-monitoring-patient-table {
  min-width: 620px;
}

.icu-monitoring-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
}

.icu-monitoring-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.icu-monitoring-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.icu-monitoring-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.icu-monitoring-form-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.icu-monitoring-notes {
  grid-column: span 4;
}

.icu-monitoring-record-wrap {
  max-height: 46vh;
}

.icu-monitoring-record-table {
  min-width: 1320px;
}

.icu-ventilator-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(360px, 0.85fr) minmax(0, 1.9fr);
}

.icu-ventilator-patients,
.icu-ventilator-workspace {
  padding: 1rem;
}

.icu-ventilator-patient-wrap {
  max-height: 72vh;
}

.icu-ventilator-patient-table {
  min-width: 620px;
}

.icu-ventilator-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
}

.icu-ventilator-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.icu-ventilator-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.icu-ventilator-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.icu-ventilator-form-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.icu-ventilator-note-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.icu-ventilator-procedure-notes {
  grid-column: span 2;
}

.icu-ventilator-note-wrap {
  max-height: 46vh;
}

.icu-ventilator-note-table {
  min-width: 1360px;
}

.icu-billing-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(360px, 0.85fr) minmax(0, 1.9fr);
}

.icu-billing-patients,
.icu-billing-workspace {
  padding: 1rem;
}

.icu-billing-patient-wrap {
  max-height: 72vh;
}

.icu-billing-patient-table {
  min-width: 620px;
}

.icu-billing-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
}

.icu-billing-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.icu-billing-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.icu-billing-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.icu-billing-actions {
  align-items: end;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1rem;
}

.icu-billing-generate-form {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 150px 150px auto;
}

.icu-billing-form-grid {
  grid-template-columns: 150px minmax(220px, 1.4fr) 120px 120px 140px 120px;
}

.icu-billing-remarks {
  grid-column: span 6;
}

.icu-billing-posted {
  align-items: center;
  display: flex;
}

.icu-billing-posted .form-check {
  margin: 1.45rem 0 0;
}

.icu-billing-line-wrap {
  max-height: 46vh;
}

.icu-billing-line-table {
  min-width: 1160px;
}

.approval-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(440px, 1fr) minmax(0, 1.65fr);
}

.approval-list-panel,
.approval-workspace {
  padding: 1rem;
}

.approval-search,
.approval-patient-search {
  display: grid;
  gap: 0.6rem;
  grid-template-columns: minmax(0, 1fr) auto auto;
  margin-bottom: 0.85rem;
}

.approval-patient-search {
  grid-template-columns: minmax(0, 1fr) auto;
}

.approval-totals {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(120px, 1fr));
  margin-bottom: 0.85rem;
}

.approval-totals div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.approval-totals span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.approval-totals strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.approval-list-wrap {
  max-height: 72vh;
}

.approval-list-table {
  min-width: 1180px;
}

.approval-patient-panel {
  margin-bottom: 1rem;
}

.approval-patient-wrap {
  max-height: 220px;
}

.approval-patient-table {
  min-width: 620px;
}

.approval-form {
  display: grid;
  gap: 1rem;
}

.approval-form-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

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

.approval-claim-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.approval-remarks {
  grid-column: span 4;
}

.approval-check-field,
.approval-valid-check {
  align-items: center;
  display: flex;
}

.approval-check-field .form-check,
.approval-valid-check .form-check {
  margin: 1.45rem 0 0;
}

.approval-master-title {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.approval-master-title div {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.claim-doc-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(440px, 1fr) minmax(0, 1.65fr);
}

.claim-doc-list-panel,
.claim-doc-workspace {
  padding: 1rem;
}

.claim-doc-search {
  display: grid;
  gap: 0.6rem;
  grid-template-columns: minmax(0, 1fr) auto auto;
  margin-bottom: 0.85rem;
}

.claim-doc-totals {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(120px, 1fr));
  margin-bottom: 0.85rem;
}

.claim-doc-totals div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.claim-doc-totals span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.claim-doc-totals strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.claim-doc-list-wrap {
  max-height: 72vh;
}

.claim-doc-list-table {
  min-width: 1240px;
}

.claim-doc-form {
  display: grid;
  gap: 1rem;
}

.claim-doc-approval-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.claim-doc-approval-field {
  grid-column: span 4;
}

.claim-doc-detail-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.claim-doc-file-field,
.claim-doc-remarks {
  grid-column: span 4;
}

.claim-doc-active {
  align-items: center;
  display: flex;
}

.claim-doc-active .form-check {
  margin: 1.45rem 0 0;
}

.claim-doc-master-title {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.settlement-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(460px, 1.05fr) minmax(0, 1.6fr);
}

.settlement-list-panel,
.settlement-workspace {
  padding: 1rem;
}

.settlement-search {
  display: grid;
  gap: 0.6rem;
  grid-template-columns: minmax(0, 1fr) auto auto;
  margin-bottom: 0.85rem;
}

.settlement-totals {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  margin-bottom: 0.85rem;
}

.settlement-totals div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.settlement-totals span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.settlement-totals strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.settlement-list-wrap {
  max-height: 72vh;
}

.settlement-list-table {
  min-width: 1320px;
}

.settlement-form {
  display: grid;
  gap: 1rem;
}

.settlement-head-grid,
.settlement-approval-grid,
.settlement-amount-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.settlement-approval-field,
.settlement-deduction-reason,
.settlement-remarks {
  grid-column: span 4;
}

.settlement-active,
.settlement-date-check {
  align-items: center;
  display: flex;
}

.settlement-active .form-check,
.settlement-date-check .form-check {
  margin: 1.45rem 0 0;
}

.settlement-master-title {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.package-mapping-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(470px, 1.05fr) minmax(0, 1.6fr);
}

.package-mapping-list-panel,
.package-mapping-workspace {
  padding: 1rem;
}

.package-mapping-search {
  display: grid;
  gap: 0.6rem;
  grid-template-columns: minmax(0, 1fr) auto auto;
  margin-bottom: 0.85rem;
}

.package-mapping-totals {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  margin-bottom: 0.85rem;
}

.package-mapping-totals div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.package-mapping-totals span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.package-mapping-totals strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.package-mapping-list-wrap {
  max-height: 72vh;
}

.package-mapping-list-table {
  min-width: 1440px;
}

.package-mapping-form {
  display: grid;
  gap: 1rem;
}

.package-mapping-head-grid,
.package-mapping-party-grid,
.package-mapping-rate-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.package-mapping-package-field,
.package-mapping-package-name,
.package-mapping-remarks {
  grid-column: span 4;
}

.package-mapping-date-check,
.package-mapping-check-field {
  align-items: center;
  display: flex;
}

.package-mapping-date-check .form-check,
.package-mapping-check-field .form-check {
  margin: 1.45rem 0 0;
}

.package-mapping-master-title {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.package-mapping-master-title div {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.purchase-entry-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(430px, 0.95fr) minmax(0, 1.75fr);
}

.purchase-entry-list-panel,
.purchase-entry-workspace {
  padding: 1rem;
}

.purchase-entry-search {
  display: grid;
  gap: 0.6rem;
  grid-template-columns: minmax(0, 1fr) auto auto;
  margin-bottom: 0.85rem;
}

.purchase-entry-totals,
.purchase-entry-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(120px, 1fr));
  margin-bottom: 0.85rem;
}

.purchase-entry-summary {
  grid-template-columns: repeat(2, minmax(160px, 1fr));
  margin-bottom: 0;
}

.purchase-entry-totals div,
.purchase-entry-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.purchase-entry-totals span,
.purchase-entry-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.purchase-entry-totals strong,
.purchase-entry-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.purchase-entry-list-wrap {
  max-height: 72vh;
}

.purchase-entry-list-table {
  min-width: 880px;
}

.purchase-entry-form {
  display: grid;
  gap: 1rem;
}

.purchase-entry-head-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.purchase-entry-supplier-field {
  grid-column: span 2;
}

.purchase-entry-remarks {
  grid-column: span 2;
}

.purchase-entry-master-title {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.purchase-entry-master-title div {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.purchase-entry-line-wrap {
  max-height: 52vh;
}

.purchase-entry-line-table {
  min-width: 1180px;
}

.purchase-entry-line-table th:first-child {
  min-width: 260px;
}

.batch-stock-layout {
  grid-template-columns: minmax(360px, 0.9fr) minmax(0, 1.35fr);
}

.batch-stock-item-search {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-bottom: 0.75rem;
}

.batch-stock-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.batch-stock-remarks {
  grid-column: span 2;
}

.batch-stock-active-field {
  align-content: end;
}

.batch-stock-check {
  margin: 0;
}

.batch-stock-post {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) auto;
}

.batch-stock-table {
  min-width: 980px;
}

.batch-stock-list-wrap {
  max-height: 70vh;
}

.batch-stock-totals {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.pharma-purchase-layout {
  grid-template-columns: minmax(380px, 0.9fr) minmax(0, 1.65fr);
}

.pharma-purchase-head-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.pharma-purchase-supplier-field,
.pharma-purchase-remarks {
  grid-column: span 2;
}

.pharma-purchase-list-table {
  min-width: 980px;
}

.pharma-purchase-line-wrap {
  max-height: 52vh;
}

.pharma-item-search {
  margin-bottom: 1rem;
}

.pharma-purchase-line-table {
  min-width: 1880px;
}

.pharma-purchase-summary {
  grid-template-columns: repeat(4, minmax(130px, 1fr));
}

.current-stock-filter {
  grid-template-columns: minmax(260px, 1fr) 220px 190px auto;
}

.medicine-ledger-filter {
  grid-template-columns: minmax(260px, 1.1fr) minmax(230px, 0.9fr) 145px 145px minmax(220px, 0.9fr) auto;
}

.medicine-ledger-summary {
  grid-template-columns: repeat(7, minmax(115px, 1fr));
}

.medicine-ledger-table-wrap {
  max-height: 72vh;
}

.medicine-ledger-table {
  min-width: 1720px;
}

.medicine-ledger-table th:nth-child(4) {
  min-width: 260px;
}

.medicine-ledger-table th:last-child {
  min-width: 260px;
}

.medicine-ledger-opening-row td {
  background: #fffbeb;
  font-weight: 700;
}

.medicine-ledger-purchase-row td {
  background: #f8fcf8;
}

.medicine-ledger-issue-row td {
  background: #fffafa;
}

.medicine-ledger-meta {
  color: #334155;
  gap: 0.55rem;
  margin-bottom: 0.75rem;
}

.refer-commission-ledger-filter {
  grid-template-columns: 145px 145px minmax(280px, 1fr) auto;
}

.refer-commission-ledger-summary {
  grid-template-columns: repeat(4, minmax(130px, 1fr));
}

.refer-commission-ledger-table-wrap {
  max-height: 72vh;
}

.refer-commission-ledger-table {
  min-width: 1320px;
}

.refer-commission-ledger-table th:nth-child(5) {
  min-width: 300px;
}

.refer-commission-payment-row td {
  background: #f7fbff;
}

.refer-commission-ledger-meta {
  color: #334155;
  gap: 0.55rem;
  margin-bottom: 0.75rem;
}

.refer-commission-payment-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1.45fr) minmax(360px, 0.75fr);
}

.refer-commission-payment-list-panel,
.refer-commission-payment-workspace {
  padding: 1rem;
}

.refer-commission-payment-filter {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(260px, 1fr) 160px auto;
  margin-bottom: 0.85rem;
}

.refer-commission-payment-actions {
  align-items: center;
  display: flex;
  gap: 0.5rem;
}

.refer-commission-payment-summary,
.refer-commission-payment-selected-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  margin-bottom: 0.85rem;
}

.refer-commission-payment-summary div,
.refer-commission-payment-selected-grid div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.refer-commission-payment-summary span,
.refer-commission-payment-selected-grid span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.refer-commission-payment-summary strong,
.refer-commission-payment-selected-grid strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.refer-commission-payment-table-wrap {
  max-height: 64vh;
}

.refer-commission-payment-table {
  min-width: 1380px;
}

.refer-commission-payment-table th:nth-child(3),
.refer-commission-payment-table th:nth-child(4) {
  min-width: 220px;
}

.refer-commission-payment-pending-row td {
  background: #fffbeb;
}

.refer-commission-payment-partial-row td {
  background: #f7fbff;
}

.refer-commission-payment-form {
  display: grid;
  gap: 1rem;
}

.refer-commission-payment-selected-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 0;
}

.refer-commission-payment-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.refer-commission-payment-form-grid .wide {
  grid-column: span 2;
}

.refer-commission-payment-form-actions {
  justify-content: flex-end;
}

.refer-commission-report-filter {
  grid-template-columns: 145px 145px minmax(280px, 1fr) 145px auto;
}

.refer-commission-report-summary {
  grid-template-columns: repeat(5, minmax(130px, 1fr));
}

.refer-commission-report-table-wrap {
  max-height: 72vh;
}

.refer-commission-report-table {
  min-width: 1520px;
}

.refer-commission-report-table th:nth-child(4),
.refer-commission-report-table th:nth-child(5) {
  min-width: 220px;
}

.refer-commission-report-table th:last-child {
  min-width: 260px;
}

.refer-commission-report-pending-row td {
  background: #fffbeb;
}

.refer-commission-report-partial-row td {
  background: #f7fbff;
}

.refer-commission-report-paid-row td {
  background: #f8fcf8;
}

.refer-commission-report-meta {
  color: #334155;
  gap: 0.55rem;
  margin-bottom: 0.75rem;
}

.opd-refer-commission-filter {
  grid-template-columns: 145px 145px minmax(240px, 0.8fr) minmax(300px, 1.2fr) auto;
}

.opd-refer-commission-summary {
  grid-template-columns: repeat(6, minmax(120px, 1fr));
}

.opd-refer-commission-panel {
  padding: 1rem;
}

.opd-refer-commission-tabs {
  margin-bottom: 1rem;
}

.opd-refer-commission-tab-content {
  min-height: 52vh;
}

.opd-refer-commission-summary-wrap,
.opd-refer-commission-detail-wrap {
  max-height: 62vh;
}

.opd-refer-commission-summary-table {
  min-width: 1040px;
}

.opd-refer-commission-detail-table {
  min-width: 1320px;
}

.opd-refer-commission-summary-table th:nth-child(2),
.opd-refer-commission-detail-table th:nth-child(3),
.opd-refer-commission-detail-table th:nth-child(4) {
  min-width: 220px;
}

.opd-refer-commission-paid-row td {
  background: #f8fcf8;
}

.opd-refer-commission-partial-row td {
  background: #f7fbff;
}

.opd-refer-commission-pending-row td {
  background: #fffbeb;
}

.opd-refer-commission-meta {
  color: #334155;
  gap: 0.55rem;
  margin-bottom: 0.75rem;
}

.opd-refer-commission-print-heading {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0.8rem 0 0.5rem;
}

.opd-report-panel {
  padding: 1rem;
}

.opd-report-tabs {
  margin-bottom: 1rem;
}

.opd-report-tab-content {
  min-height: 54vh;
}

.opd-report-filter {
  grid-template-columns: 145px 145px minmax(260px, 1fr) auto;
}

.opd-report-appointment-filter {
  grid-template-columns: 145px 145px minmax(240px, 0.8fr) 160px auto;
}

.opd-report-summary {
  grid-template-columns: repeat(6, minmax(120px, 1fr));
}

.opd-report-appointment-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  margin-bottom: 1rem;
}

.opd-report-appointment-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.opd-report-appointment-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.opd-report-appointment-summary strong {
  color: #14213d;
}

.opd-report-table-wrap,
.opd-report-appointment-wrap,
.opd-report-due-wrap {
  max-height: 62vh;
}

.opd-report-doctor-table,
.opd-report-collection-table {
  min-width: 920px;
}

.opd-report-appointment-table {
  min-width: 1420px;
}

.opd-report-due-table {
  min-width: 1320px;
}

.opd-report-doctor-table th:first-child,
.opd-report-appointment-table th:nth-child(4),
.opd-report-appointment-table th:nth-child(8),
.opd-report-due-table th:nth-child(3),
.opd-report-due-table th:nth-child(5) {
  min-width: 220px;
}

.opd-report-due-row td {
  background: #fffbeb;
}

.opd-report-print-heading {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0.8rem 0 0.5rem;
}

.daily-collection-filter {
  align-items: end;
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(20, 33, 61, 0.05);
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 145px 145px 155px 155px minmax(280px, 1fr) auto;
  margin-bottom: 1rem;
  padding: 1rem;
}

.daily-collection-actions {
  display: flex;
  gap: 0.5rem;
}

.daily-collection-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(6, minmax(120px, 1fr));
  margin-bottom: 1rem;
}

.daily-collection-summary div {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(20, 33, 61, 0.05);
  display: grid;
  gap: 0.2rem;
  min-height: 74px;
  padding: 0.75rem;
}

.daily-collection-summary span {
  color: #67748a;
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
}

.daily-collection-summary strong {
  color: #14213d;
  font-size: 1.1rem;
}

.daily-collection-panel {
  margin-bottom: 1rem;
  padding: 1rem;
}

.daily-collection-section-head {
  align-items: center;
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.75rem;
}

.daily-collection-section-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.daily-collection-section-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.daily-collection-patient-wrap,
.daily-collection-detail-wrap {
  max-height: 58vh;
}

.daily-collection-patient-table {
  min-width: 1760px;
}

.daily-collection-detail-table {
  min-width: 1720px;
}

.daily-collection-patient-table th:first-child,
.daily-collection-detail-table th:nth-child(3),
.daily-collection-detail-table th:last-child {
  min-width: 220px;
}

.daily-collection-refund-row td {
  background: #fff7f7;
}

.daily-collection-section-ipd {
  background: #e6f5ef;
  color: #007d54;
}

.daily-collection-section-opd {
  background: #e8f0ff;
  color: #2446a5;
}

.daily-collection-section-lab {
  background: #fff2d5;
  color: #a55a00;
}

.daily-collection-section-radiology {
  background: #f0e9ff;
  color: #6f42c1;
}

.daily-collection-section-other {
  background: #eef2f7;
  color: #304057;
}

.current-stock-summary {
  grid-template-columns: repeat(6, minmax(120px, 1fr));
}

.current-stock-table-wrap {
  max-height: 72vh;
}

.current-stock-table {
  min-width: 1560px;
}

.current-stock-table th:nth-child(2) {
  min-width: 230px;
}

.current-stock-expired-row td {
  background: #fff7f7;
}

.current-stock-expiring-row td {
  background: #fffbeb;
}

.opd-med-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(390px, 0.9fr) minmax(0, 1.6fr);
}

.opd-med-picker,
.opd-med-workspace {
  padding: 1rem;
}

.opd-med-appointment-wrap {
  max-height: 38vh;
}

.opd-med-recent-wrap {
  max-height: 30vh;
}

.opd-med-appointment-table {
  min-width: 840px;
}

.opd-med-recent-table {
  min-width: 720px;
}

.opd-med-item-search {
  margin-bottom: 1rem;
}

.opd-med-master-title {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.opd-med-patient-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.opd-med-patient-grid div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  min-width: 0;
  padding: 0.75rem;
}

.opd-med-patient-grid span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.opd-med-patient-grid strong,
.opd-med-patient-grid small {
  overflow-wrap: anywhere;
}

.opd-med-patient-grid small {
  color: #67748a;
}

.opd-med-line-wrap {
  max-height: 48vh;
}

.opd-med-line-table {
  min-width: 1760px;
}

.opd-med-line-table th:first-child {
  min-width: 270px;
}

.opd-med-line-table th:nth-child(2) {
  min-width: 330px;
}

.opd-med-summary {
  grid-template-columns: repeat(3, minmax(140px, 1fr));
}

.status-pending,
.status-claim-submitted,
.status-under-process {
  background: #fff2d5;
  color: #a55a00;
}

.status-query {
  background: #f0e9ff;
  color: #6f42c1;
}

.status-approved,
.status-settled {
  background: #e6f5ef;
  color: #007d54;
}

.status-partly-settled {
  background: #e8f0ff;
  color: #2446a5;
}

.status-rejected,
.status-closed {
  background: #fdecec;
  color: #b4232a;
}

.deduction-report-filter {
  align-items: end;
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 150px 110px 190px 240px minmax(260px, 1fr) auto;
  margin-bottom: 1rem;
  padding: 1rem;
}

.deduction-report-actions {
  display: flex;
  gap: 0.5rem;
}

.deduction-report-query {
  min-width: 0;
}

.deduction-report-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  margin-bottom: 1rem;
}

.deduction-report-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.deduction-report-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.deduction-report-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.deduction-report-panel {
  padding: 1rem;
}

.deduction-report-table-wrap {
  max-height: 72vh;
}

.deduction-report-table {
  min-width: 1480px;
}

.pfesi-report-filter {
  align-items: end;
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 130px 110px 190px 240px 140px minmax(260px, 1fr) auto;
  margin-bottom: 1rem;
  padding: 1rem;
}

.pfesi-report-actions {
  display: flex;
  gap: 0.5rem;
}

.pfesi-report-query {
  min-width: 0;
}

.pfesi-report-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  margin-bottom: 1rem;
}

.pfesi-report-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.pfesi-report-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.pfesi-report-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.pfesi-report-panel {
  padding: 1rem;
}

.pfesi-report-table-wrap {
  max-height: 72vh;
}

.pfesi-report-table {
  min-width: 1720px;
}

.daily-attendance-filter {
  align-items: end;
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 150px 190px 240px 170px 140px minmax(260px, 1fr) auto;
  margin-bottom: 1rem;
  padding: 1rem;
}

.daily-attendance-actions {
  display: flex;
  gap: 0.5rem;
}

.daily-attendance-query {
  min-width: 0;
}

.daily-attendance-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(8, minmax(105px, 1fr));
  margin-bottom: 1rem;
}

.daily-attendance-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.daily-attendance-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.daily-attendance-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.daily-attendance-panel {
  padding: 1rem;
}

.daily-attendance-table-wrap {
  max-height: 72vh;
}

.daily-attendance-table {
  min-width: 1460px;
}

.daily-attendance-table th:nth-child(4),
.daily-attendance-table th:last-child {
  min-width: 180px;
}

.daily-attendance-absent-row td {
  background: #fff7f7;
}

.daily-attendance-leave-row td,
.daily-attendance-halfday-row td {
  background: #fffbeb;
}

.daily-attendance-status-present {
  background: #e6f5ef;
  color: #007d54;
}

.daily-attendance-status-absent {
  background: #fdecec;
  color: #b4232a;
}

.daily-attendance-status-halfday,
.daily-attendance-status-leave {
  background: #fff2d5;
  color: #a55a00;
}

.daily-attendance-status-holiday {
  background: #f0e9ff;
  color: #6f42c1;
}

.daily-attendance-status-weekoff {
  background: #e8f0ff;
  color: #2446a5;
}

.daily-attendance-status-other {
  background: #eef2f7;
  color: #304057;
}

.employee-list-report-filter {
  align-items: end;
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 220px 150px minmax(280px, 1fr) auto;
  margin-bottom: 1rem;
  padding: 1rem;
}

.employee-list-report-actions {
  display: flex;
  gap: 0.5rem;
}

.employee-list-report-query {
  min-width: 0;
}

.employee-list-report-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  margin-bottom: 1rem;
}

.employee-list-report-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.employee-list-report-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.employee-list-report-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.employee-list-report-panel {
  padding: 1rem;
}

.employee-list-report-meta {
  align-items: center;
  color: #67748a;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.employee-list-report-meta div {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.employee-list-report-meta strong {
  color: #14213d;
}

.employee-list-report-table-wrap {
  max-height: 72vh;
}

.employee-list-report-table {
  min-width: 1220px;
}

.employee-list-report-table th:nth-child(3),
.employee-list-report-table th:nth-child(5) {
  min-width: 180px;
}

.employee-list-report-inactive-row td {
  background: #f8fafc;
  color: #67748a;
}

.employee-list-report-status-active {
  background: #e6f5ef;
  color: #007d54;
}

.employee-list-report-status-inactive {
  background: #eef2f7;
  color: #304057;
}

.payroll-process-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(380px, 0.64fr) minmax(0, 1.36fr);
}

.payroll-process-settings-panel,
.payroll-process-preview-panel {
  padding: 1rem;
}

.payroll-process-settings-panel h2,
.payroll-process-preview-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.payroll-process-settings-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.payroll-process-settings-grid .wide {
  grid-column: span 2;
}

.payroll-process-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.payroll-process-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.payroll-process-note {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  color: #67748a;
  display: grid;
  gap: 0.35rem;
  margin-top: 1rem;
  padding: 0.75rem;
}

.payroll-process-note strong {
  color: #14213d;
}

.payroll-process-preview-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.payroll-process-preview-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.payroll-process-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(5, minmax(105px, 1fr));
  margin-bottom: 1rem;
}

.payroll-process-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.payroll-process-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.payroll-process-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.payroll-process-table-wrap {
  max-height: 68vh;
}

.payroll-process-table {
  min-width: 2320px;
}

.payroll-process-table th:nth-child(2),
.payroll-process-table th:nth-child(4) {
  min-width: 180px;
}

.payroll-process-processed-row td {
  background: #f0fdf4;
}

.payroll-process-pending-row td {
  background: #fffbeb;
}

.payroll-process-status-yes {
  background: #e6f5ef;
  color: #007d54;
}

.payroll-process-status-no {
  background: #fff2d5;
  color: #a55a00;
}

.salary-slip-filter {
  align-items: end;
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 150px 140px 260px minmax(260px, 1fr) auto;
  margin-bottom: 1rem;
  padding: 1rem;
}

.salary-slip-actions {
  display: flex;
  gap: 0.5rem;
}

.salary-slip-query {
  min-width: 0;
}

.salary-slip-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(560px, 0.96fr) minmax(0, 1.04fr);
}

.salary-slip-detail-panel,
.salary-slip-list-panel {
  padding: 1rem;
}

.salary-slip-detail-panel h2,
.salary-slip-list-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.salary-slip-empty {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  color: #67748a;
  display: grid;
  gap: 0.35rem;
  padding: 1rem;
}

.salary-slip-empty strong {
  color: #14213d;
}

.salary-slip-print {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.9rem;
  padding: 1rem;
}

.salary-slip-print-head {
  border-bottom: 2px solid #14213d;
  display: grid;
  gap: 0.2rem;
  padding-bottom: 0.75rem;
  text-align: center;
  text-transform: uppercase;
}

.salary-slip-print-head h2 {
  font-size: 1.3rem;
  margin: 0;
}

.salary-slip-print-head strong {
  color: #14213d;
  font-size: 1rem;
}

.salary-slip-print-head span {
  color: #67748a;
  font-size: 0.86rem;
  font-weight: 700;
}

.salary-slip-section {
  display: grid;
  gap: 0.55rem;
}

.salary-slip-section h3 {
  color: #304057;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0;
  margin: 0;
  text-transform: uppercase;
}

.salary-slip-info-grid,
.salary-slip-metric-grid,
.salary-slip-salary-grid {
  display: grid;
  gap: 0.5rem;
}

.salary-slip-info-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.salary-slip-metric-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

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

.salary-slip-info-grid div,
.salary-slip-metric-grid div,
.salary-slip-salary-grid div,
.salary-slip-remarks {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.2rem;
  min-width: 0;
  padding: 0.58rem 0.65rem;
}

.salary-slip-info-grid span,
.salary-slip-metric-grid span,
.salary-slip-salary-grid span,
.salary-slip-remarks span {
  color: #67748a;
  font-size: 0.74rem;
  font-weight: 700;
}

.salary-slip-info-grid strong,
.salary-slip-metric-grid strong,
.salary-slip-salary-grid strong,
.salary-slip-remarks strong {
  color: #14213d;
  font-size: 0.88rem;
  overflow-wrap: anywhere;
}

.salary-slip-net {
  align-items: center;
  background: #e6f5ef;
  border: 1px solid #93d9bf;
  border-radius: 6px;
  display: flex;
  justify-content: space-between;
  padding: 0.85rem 1rem;
}

.salary-slip-net span {
  color: #007d54;
  font-weight: 800;
  text-transform: uppercase;
}

.salary-slip-net strong {
  color: #005f40;
  font-size: 1.25rem;
}

.salary-slip-signatures {
  display: flex;
  justify-content: space-between;
  padding-top: 2.2rem;
}

.salary-slip-signatures span {
  border-top: 1px solid #14213d;
  color: #304057;
  min-width: 170px;
  padding-top: 0.35rem;
  text-align: center;
}

.salary-slip-list-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.salary-slip-list-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.salary-slip-table-wrap {
  max-height: 72vh;
}

.salary-slip-table {
  min-width: 1320px;
}

.salary-slip-table th:nth-child(5),
.salary-slip-table th:nth-child(7) {
  min-width: 170px;
}

.salary-slip-selected-row td {
  background: #eef6ff;
}

.payroll-report-filter {
  align-items: end;
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 150px 130px 220px 260px minmax(280px, 1fr) auto;
  margin-bottom: 1rem;
  padding: 1rem;
}

.payroll-report-query {
  min-width: 0;
}

.payroll-report-actions {
  display: flex;
  gap: 0.5rem;
}

.payroll-report-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.payroll-report-summary div {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.8rem 0.9rem;
}

.payroll-report-summary span {
  color: #67748a;
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
}

.payroll-report-summary strong {
  color: #14213d;
  font-size: 1rem;
  overflow-wrap: anywhere;
}

.payroll-report-panel {
  padding: 1rem;
}

.payroll-report-meta {
  align-items: center;
  color: #304057;
  gap: 0.75rem 1rem;
  margin-bottom: 0.75rem;
}

.payroll-report-table-wrap {
  max-height: 74vh;
}

.payroll-report-table {
  min-width: 1760px;
}

.payroll-report-table th:nth-child(5),
.payroll-report-table th:nth-child(19) {
  min-width: 180px;
}

.payroll-report-table th:nth-child(6),
.payroll-report-table th:nth-child(7) {
  min-width: 130px;
}

.advance-entry-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(430px, 0.82fr) minmax(0, 1.18fr);
}

.advance-entry-form-panel,
.advance-entry-list-panel {
  padding: 1rem;
}

.advance-entry-form-panel h2,
.advance-entry-list-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.advance-entry-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.advance-entry-form-grid .wide {
  grid-column: span 2;
}

.advance-entry-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.advance-entry-actions,
.advance-entry-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.advance-entry-delete-form {
  margin-left: 0.5rem;
}

.advance-entry-note {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  color: #67748a;
  display: grid;
  gap: 0.35rem;
  margin-top: 1rem;
  padding: 0.85rem;
}

.advance-entry-note strong {
  color: #14213d;
}

.advance-entry-list-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.advance-entry-list-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.advance-entry-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.advance-entry-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.advance-entry-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
}

.advance-entry-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.advance-entry-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 130px 130px 240px 150px minmax(240px, 1fr) auto;
  margin-bottom: 1rem;
}

.advance-entry-search-actions {
  display: flex;
  gap: 0.5rem;
}

.advance-entry-table-wrap {
  max-height: 58vh;
}

.advance-entry-table {
  min-width: 1580px;
}

.advance-entry-table th:nth-child(5),
.advance-entry-table th:nth-child(14) {
  min-width: 180px;
}

.advance-entry-open-row td {
  background: #fffbeb;
}

.advance-entry-closed-row td {
  background: #f0fdf4;
}

.advance-entry-cancelled-row td {
  color: #8a98aa;
}

.advance-entry-status-open {
  background: #fff2d5;
  color: #a55a00;
}

.advance-entry-status-closed {
  background: #e6f5ef;
  color: #007d54;
}

.advance-entry-status-cancelled {
  background: #eef2f7;
  color: #304057;
}

.loan-entry-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(450px, 0.84fr) minmax(0, 1.16fr);
}

.loan-entry-form-panel,
.loan-entry-list-panel {
  padding: 1rem;
}

.loan-entry-form-panel h2,
.loan-entry-list-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.loan-entry-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.loan-entry-form-grid .wide {
  grid-column: span 2;
}

.loan-entry-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.loan-entry-actions,
.loan-entry-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.loan-entry-delete-form {
  margin-left: 0.5rem;
}

.loan-entry-note {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  color: #67748a;
  display: grid;
  gap: 0.35rem;
  margin-top: 1rem;
  padding: 0.85rem;
}

.loan-entry-note strong {
  color: #14213d;
}

.loan-entry-list-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.loan-entry-list-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.loan-entry-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.loan-entry-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.loan-entry-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
}

.loan-entry-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.loan-entry-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 130px 130px 240px 150px minmax(240px, 1fr) auto;
  margin-bottom: 1rem;
}

.loan-entry-search-actions {
  display: flex;
  gap: 0.5rem;
}

.loan-entry-table-wrap {
  max-height: 58vh;
}

.loan-entry-table {
  min-width: 1620px;
}

.loan-entry-table th:nth-child(5),
.loan-entry-table th:nth-child(15) {
  min-width: 180px;
}

.loan-entry-open-row td {
  background: #fffbeb;
}

.loan-entry-closed-row td {
  background: #f0fdf4;
}

.loan-entry-cancelled-row td {
  color: #8a98aa;
}

.loan-entry-status-open {
  background: #fff2d5;
  color: #a55a00;
}

.loan-entry-status-closed {
  background: #e6f5ef;
  color: #007d54;
}

.loan-entry-status-cancelled {
  background: #eef2f7;
  color: #304057;
}

.emergency-registration-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(430px, 0.9fr) minmax(0, 1.1fr);
}

.emergency-registration-form-panel,
.emergency-registration-list-panel {
  padding: 1rem;
}

.emergency-registration-form-panel h2,
.emergency-registration-list-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.emergency-registration-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.emergency-registration-form-grid .wide {
  grid-column: span 2;
}

.emergency-registration-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.emergency-registration-check {
  align-items: center;
  display: grid;
  gap: 0.5rem;
  grid-template-columns: 20px minmax(0, 1fr);
  padding-top: 1.75rem;
}

.emergency-registration-check .form-label {
  margin: 0;
}

.emergency-registration-actions,
.emergency-registration-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.emergency-registration-delete-form {
  margin-left: 0.5rem;
}

.emergency-registration-list-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.emergency-registration-list-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.emergency-registration-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.emergency-registration-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.emergency-registration-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
}

.emergency-registration-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.emergency-registration-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(260px, 1fr) 160px auto;
  margin-bottom: 1rem;
}

.emergency-registration-search-actions {
  display: flex;
  gap: 0.5rem;
}

.emergency-registration-table-wrap {
  max-height: 58vh;
}

.emergency-registration-table {
  min-width: 1240px;
}

.emergency-registration-table th:nth-child(3),
.emergency-registration-table th:nth-child(9) {
  min-width: 190px;
}

.emergency-registration-mlc-row td {
  background: #fff7ed;
}

.emergency-registration-admitted-row td {
  background: #eff6ff;
}

.emergency-registration-discharged-row td {
  background: #f0fdf4;
}

.emergency-registration-referred-row td {
  background: #eef2ff;
}

.emergency-registration-cancelled-row td {
  color: #8a98aa;
}

.emergency-registration-status-open {
  background: #fff2d5;
  color: #a55a00;
}

.emergency-registration-status-admitted {
  background: #dbeafe;
  color: #1d4ed8;
}

.emergency-registration-status-discharged {
  background: #e6f5ef;
  color: #007d54;
}

.emergency-registration-status-referred {
  background: #e0e7ff;
  color: #4338ca;
}

.emergency-registration-status-cancelled {
  background: #eef2f7;
  color: #304057;
}

.emergency-slip {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
  margin: 0 auto;
  max-width: 920px;
  padding: 1.5rem;
}

.emergency-slip-head {
  border-bottom: 2px solid #14213d;
  margin-bottom: 1rem;
  padding-bottom: 0.85rem;
  text-align: center;
}

.emergency-slip-head h2 {
  color: #14213d;
  font-size: 1.35rem;
  font-weight: 900;
  margin: 0 0 0.35rem;
}

.emergency-slip-head strong {
  color: #304057;
  font-size: 0.92rem;
  letter-spacing: 0;
  text-transform: uppercase;
}

.emergency-slip-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.emergency-slip-grid div {
  border-bottom: 1px solid #d8dee9;
  display: grid;
  gap: 0.2rem;
  min-height: 3.1rem;
  padding-bottom: 0.55rem;
}

.emergency-slip-grid .wide {
  grid-column: span 2;
}

.emergency-slip-grid span {
  color: #67748a;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.emergency-slip-grid strong {
  color: #14213d;
  font-size: 0.95rem;
  overflow-wrap: anywhere;
}

.emergency-slip-signatures {
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 3.5rem;
}

.emergency-slip-signatures span {
  border-top: 1px solid #14213d;
  color: #304057;
  font-size: 0.85rem;
  font-weight: 800;
  padding-top: 0.45rem;
  text-align: center;
}

.emergency-triage-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(430px, 0.9fr) minmax(0, 1.1fr);
}

.emergency-triage-patient-panel,
.emergency-triage-work-panel {
  padding: 1rem;
}

.emergency-triage-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.emergency-triage-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.emergency-triage-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.emergency-triage-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(220px, 1fr) 150px auto;
  margin-bottom: 1rem;
}

.emergency-triage-search-actions,
.emergency-triage-actions,
.emergency-triage-delete-form {
  display: inline-flex;
  gap: 0.5rem;
}

.emergency-triage-actions,
.emergency-triage-delete-form {
  margin-top: 0.75rem;
}

.emergency-triage-delete-form {
  margin-left: 0.5rem;
}

.emergency-triage-selected {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.emergency-triage-selected div,
.emergency-triage-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.emergency-triage-selected .wide {
  grid-column: span 2;
}

.emergency-triage-selected span,
.emergency-triage-summary span {
  color: #67748a;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.emergency-triage-selected strong,
.emergency-triage-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.emergency-triage-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.emergency-triage-form-grid .wide {
  grid-column: span 2;
}

.emergency-triage-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin: 1rem 0;
}

.emergency-triage-history-head {
  margin-top: 0.35rem;
}

.emergency-triage-patient-table-wrap,
.emergency-triage-history-table-wrap {
  max-height: 58vh;
}

.emergency-triage-patient-table {
  min-width: 1180px;
}

.emergency-triage-history-table {
  min-width: 1260px;
}

.emergency-triage-patient-table td span,
.emergency-triage-history-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.2rem;
}

.emergency-triage-selected-row td {
  box-shadow: inset 3px 0 0 #2d6cdf;
}

.emergency-triage-mlc-row td {
  background: #fff7ed;
}

.emergency-triage-red-row td {
  background: #fff1f2;
}

.emergency-triage-orange-row td {
  background: #fff7ed;
}

.emergency-triage-completed-row td {
  background: #f0fdf4;
}

.emergency-triage-cancelled-row td {
  color: #8a98aa;
}

.emergency-triage-priority-red {
  color: #be123c !important;
}

.emergency-triage-priority-orange {
  color: #c2410c !important;
}

.emergency-triage-priority-yellow {
  color: #a16207 !important;
}

.emergency-triage-priority-green {
  color: #047857 !important;
}

.emergency-triage-priority-blue {
  color: #1d4ed8 !important;
}

.emergency-triage-status-pending {
  background: #fff2d5;
  color: #a55a00;
}

.emergency-triage-status-observation {
  background: #e0f2fe;
  color: #0369a1;
}

.emergency-triage-status-doctor {
  background: #eef2ff;
  color: #4338ca;
}

.emergency-triage-status-treatment {
  background: #dcfce7;
  color: #15803d;
}

.emergency-triage-status-referred {
  background: #fef3c7;
  color: #92400e;
}

.emergency-triage-status-completed {
  background: #e6f5ef;
  color: #007d54;
}

.emergency-triage-slip .emergency-slip-grid strong[class*="emergency-triage-priority"] {
  font-weight: 900;
}

.emergency-treatment-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(440px, 0.9fr) minmax(0, 1.1fr);
}

.emergency-treatment-patient-panel,
.emergency-treatment-work-panel {
  padding: 1rem;
}

.emergency-treatment-panel-head,
.emergency-treatment-line-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.emergency-treatment-panel-head h2,
.emergency-treatment-line-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.emergency-treatment-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.emergency-treatment-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(220px, 1fr) 150px auto;
  margin-bottom: 1rem;
}

.emergency-treatment-search-actions,
.emergency-treatment-actions,
.emergency-treatment-delete-form {
  display: inline-flex;
  gap: 0.5rem;
}

.emergency-treatment-actions,
.emergency-treatment-delete-form {
  margin-top: 0.75rem;
}

.emergency-treatment-delete-form {
  margin-left: 0.5rem;
}

.emergency-treatment-selected {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.emergency-treatment-selected div,
.emergency-treatment-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.emergency-treatment-selected .wide {
  grid-column: span 2;
}

.emergency-treatment-selected span,
.emergency-treatment-summary span {
  color: #67748a;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.emergency-treatment-selected strong,
.emergency-treatment-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.emergency-treatment-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.emergency-treatment-form-grid .wide {
  grid-column: span 2;
}

.emergency-treatment-line-head {
  margin-top: 1rem;
}

.emergency-treatment-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin: 1rem 0;
}

.emergency-treatment-history-head {
  margin-top: 0.35rem;
}

.emergency-treatment-patient-table-wrap,
.emergency-treatment-history-table-wrap {
  max-height: 58vh;
}

.emergency-treatment-line-table-wrap {
  max-height: 38vh;
}

.emergency-treatment-patient-table {
  min-width: 1240px;
}

.emergency-treatment-line-table,
.emergency-treatment-history-table {
  min-width: 1100px;
}

.emergency-treatment-line-table th:nth-child(2),
.emergency-treatment-line-table td:nth-child(2) {
  min-width: 260px;
}

.emergency-treatment-line-table th:nth-child(6),
.emergency-treatment-line-table td:nth-child(6) {
  min-width: 190px;
}

.emergency-treatment-patient-table td span,
.emergency-treatment-history-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.2rem;
}

.emergency-treatment-selected-row td {
  box-shadow: inset 3px 0 0 #2d6cdf;
}

.emergency-treatment-mlc-row td {
  background: #fff7ed;
}

.emergency-treatment-completed-row td {
  background: #f0fdf4;
}

.emergency-treatment-cancelled-row td {
  color: #8a98aa;
}

.emergency-treatment-status-open {
  background: #fff2d5;
  color: #a55a00;
}

.emergency-treatment-status-progress {
  background: #e0f2fe;
  color: #0369a1;
}

.emergency-treatment-status-completed {
  background: #e6f5ef;
  color: #007d54;
}

.emergency-treatment-status-referred {
  background: #e0e7ff;
  color: #4338ca;
}

.emergency-treatment-status-admitted {
  background: #dbeafe;
  color: #1d4ed8;
}

.emergency-treatment-status-cancelled {
  background: #eef2f7;
  color: #304057;
}

.emergency-treatment-print-lines {
  margin-top: 1.25rem;
}

.emergency-treatment-print-lines h3 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 900;
  margin: 0 0 0.65rem;
}

.emergency-treatment-print-table {
  font-size: 0.86rem;
}

.emergency-treatment-print-table tfoot th {
  background: #f8fafc;
  color: #14213d;
}

.emergency-billing-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(440px, 0.9fr) minmax(0, 1.1fr);
}

.emergency-billing-patient-panel,
.emergency-billing-work-panel {
  padding: 1rem;
}

.emergency-billing-panel-head,
.emergency-billing-line-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.emergency-billing-panel-head h2,
.emergency-billing-line-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.emergency-billing-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.emergency-billing-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(220px, 1fr) 150px auto;
  margin-bottom: 1rem;
}

.emergency-billing-search-actions,
.emergency-billing-actions,
.emergency-billing-delete-form,
.emergency-billing-line-head div {
  display: inline-flex;
  gap: 0.5rem;
}

.emergency-billing-actions,
.emergency-billing-delete-form {
  margin-top: 0.75rem;
}

.emergency-billing-delete-form {
  margin-left: 0.5rem;
}

.emergency-billing-selected,
.emergency-billing-amounts,
.emergency-billing-summary,
.emergency-billing-print-summary {
  display: grid;
  gap: 0.75rem;
}

.emergency-billing-selected {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.emergency-billing-amounts {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-top: 0.75rem;
}

.emergency-billing-summary,
.emergency-billing-print-summary {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin: 1rem 0;
}

.emergency-billing-selected div,
.emergency-billing-summary div,
.emergency-billing-print-summary div,
.emergency-billing-print-remarks {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.emergency-billing-selected .wide {
  grid-column: span 2;
}

.emergency-billing-selected span,
.emergency-billing-summary span,
.emergency-billing-print-summary span,
.emergency-billing-print-remarks span {
  color: #67748a;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.emergency-billing-selected strong,
.emergency-billing-summary strong,
.emergency-billing-print-summary strong,
.emergency-billing-print-remarks strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.emergency-billing-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.emergency-billing-form-grid .wide {
  grid-column: span 2;
}

.emergency-billing-readonly {
  background: #f8fafc;
  font-weight: 800;
}

.emergency-billing-line-head {
  margin-top: 1rem;
}

.emergency-billing-history-head {
  margin-top: 0.35rem;
}

.emergency-billing-patient-table-wrap,
.emergency-billing-history-table-wrap {
  max-height: 58vh;
}

.emergency-billing-line-table-wrap {
  max-height: 38vh;
}

.emergency-billing-patient-table {
  min-width: 1260px;
}

.emergency-billing-line-table,
.emergency-billing-history-table {
  min-width: 1120px;
}

.emergency-billing-line-table th:nth-child(2),
.emergency-billing-line-table td:nth-child(2) {
  min-width: 270px;
}

.emergency-billing-line-table th:nth-child(6),
.emergency-billing-line-table td:nth-child(6) {
  min-width: 190px;
}

.emergency-billing-patient-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.2rem;
}

.emergency-billing-selected-row td {
  box-shadow: inset 3px 0 0 #2d6cdf;
}

.emergency-billing-mlc-row td {
  background: #fff7ed;
}

.emergency-billing-final-row td {
  background: #f0fdf4;
}

.emergency-billing-cancelled-row td {
  color: #8a98aa;
}

.emergency-billing-status-draft {
  background: #fff2d5;
  color: #a55a00;
}

.emergency-billing-status-final {
  background: #e6f5ef;
  color: #007d54;
}

.emergency-billing-status-cancelled {
  background: #eef2f7;
  color: #304057;
}

.emergency-billing-slip .emergency-slip-head p {
  color: #304057;
  font-size: 0.86rem;
  font-weight: 700;
  margin: 0.15rem 0;
}

.emergency-billing-print-lines {
  margin-top: 1.25rem;
}

.emergency-billing-print-table {
  font-size: 0.86rem;
}

.emergency-billing-print-table thead th {
  background: #14213d;
  color: #fff;
}

.emergency-billing-print-remarks {
  margin-top: 0.75rem;
}

.admission-emergency-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(440px, 0.9fr) minmax(0, 1.1fr);
}

.admission-emergency-patient-panel,
.admission-emergency-work-panel {
  padding: 1rem;
}

.admission-emergency-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.admission-emergency-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.admission-emergency-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.admission-emergency-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(220px, 1fr) 150px auto;
  margin-bottom: 1rem;
}

.admission-emergency-search-actions,
.admission-emergency-actions,
.admission-emergency-cancel-form {
  display: inline-flex;
  gap: 0.5rem;
}

.admission-emergency-actions,
.admission-emergency-cancel-form {
  margin-top: 0.75rem;
}

.admission-emergency-cancel-form {
  margin-left: 0.5rem;
}

.admission-emergency-selected,
.admission-emergency-summary {
  display: grid;
  gap: 0.75rem;
}

.admission-emergency-selected {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.admission-emergency-summary {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin: 1rem 0;
}

.admission-emergency-selected div,
.admission-emergency-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.admission-emergency-selected .wide {
  grid-column: span 2;
}

.admission-emergency-selected span,
.admission-emergency-summary span {
  color: #67748a;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.admission-emergency-selected strong,
.admission-emergency-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.admission-emergency-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admission-emergency-form-grid .wide {
  grid-column: span 2;
}

.admission-emergency-readonly {
  background: #f8fafc;
  font-weight: 800;
}

.admission-emergency-history-head {
  margin-top: 0.35rem;
}

.admission-emergency-patient-table-wrap,
.admission-emergency-history-table-wrap {
  max-height: 58vh;
}

.admission-emergency-patient-table {
  min-width: 1260px;
}

.admission-emergency-history-table {
  min-width: 1120px;
}

.admission-emergency-patient-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.2rem;
}

.admission-emergency-selected-row td {
  box-shadow: inset 3px 0 0 #2d6cdf;
}

.admission-emergency-mlc-row td {
  background: #fff7ed;
}

.admission-emergency-discharged-row td {
  background: #f8fafc;
}

.admission-emergency-cancelled-row td {
  color: #8a98aa;
}

.admission-emergency-status-admitted {
  background: #e6f5ef;
  color: #007d54;
}

.admission-emergency-status-transferred {
  background: #eaf0ff;
  color: #2453a6;
}

.admission-emergency-status-discharged {
  background: #eef2f7;
  color: #304057;
}

.admission-emergency-status-cancelled {
  background: #f4e7e7;
  color: #9b1c1c;
}

.admission-emergency-slip .emergency-slip-head {
  margin-bottom: 1.25rem;
}

.abdm-care-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(450px, 0.92fr) minmax(0, 1.08fr);
}

.abdm-care-form-panel,
.abdm-care-list-panel {
  padding: 1rem;
}

.abdm-care-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.abdm-care-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.abdm-care-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.abdm-care-patient-search {
  align-items: end;
  display: grid;
  gap: 0.5rem;
  grid-template-columns: minmax(0, 1fr) auto auto;
  margin-bottom: 0.9rem;
}

.abdm-care-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.abdm-care-form-grid .wide {
  grid-column: span 2;
}

.abdm-care-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.abdm-care-ref-row {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: minmax(0, 1fr) auto;
}

.abdm-care-check-field {
  align-items: end;
  display: flex;
  min-height: 4.35rem;
}

.abdm-care-check-field .form-check {
  margin-bottom: 0.45rem;
}

.abdm-care-actions,
.abdm-care-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.abdm-care-delete-form {
  margin-left: 0.5rem;
}

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

.abdm-care-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.abdm-care-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
}

.abdm-care-summary strong {
  color: #14213d;
}

.abdm-care-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(260px, 1fr) auto;
  margin-bottom: 1rem;
}

.abdm-care-search-actions {
  display: flex;
  gap: 0.5rem;
}

.abdm-care-table-wrap {
  max-height: 58vh;
}

.abdm-care-table {
  min-width: 1460px;
}

.abdm-care-table th:nth-child(3),
.abdm-care-table th:nth-child(7) {
  min-width: 190px;
}

.abdm-care-linked-row td {
  background: #f0fdf4;
}

.abdm-care-unlinked-row td {
  background: #fffbeb;
}

.abdm-care-status-linked {
  background: #e6f5ef;
  color: #007d54;
}

.abdm-care-status-unlinked {
  background: #fff2d5;
  color: #a55a00;
}

.abdm-consent-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(460px, 0.9fr) minmax(0, 1.1fr);
}

.abdm-consent-form-panel,
.abdm-consent-list-panel {
  padding: 1rem;
}

.abdm-consent-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.abdm-consent-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.abdm-consent-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.abdm-consent-patient-search {
  align-items: end;
  display: grid;
  gap: 0.5rem;
  grid-template-columns: minmax(0, 1fr) auto auto;
  margin-bottom: 0.9rem;
}

.abdm-consent-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.abdm-consent-form-grid .wide {
  grid-column: span 2;
}

.abdm-consent-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.abdm-consent-request-row {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: minmax(0, 1fr) auto;
}

.abdm-consent-hi-types {
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.35rem 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: 0.75rem;
}

.abdm-consent-hi-types .form-check {
  margin: 0;
}

.abdm-consent-actions,
.abdm-consent-delete-form {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.abdm-consent-delete-form {
  margin-left: 0.5rem;
}

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

.abdm-consent-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.abdm-consent-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
}

.abdm-consent-summary strong {
  color: #14213d;
}

.abdm-consent-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(260px, 1fr) auto;
  margin-bottom: 1rem;
}

.abdm-consent-search-actions {
  display: flex;
  gap: 0.5rem;
}

.abdm-consent-table-wrap {
  max-height: 58vh;
}

.abdm-consent-table {
  min-width: 1560px;
}

.abdm-consent-table th:nth-child(1),
.abdm-consent-table th:nth-child(4),
.abdm-consent-table th:nth-child(8) {
  min-width: 180px;
}

.abdm-consent-row-requested td {
  background: #eff6ff;
}

.abdm-consent-row-granted td {
  background: #f0fdf4;
}

.abdm-consent-row-denied td,
.abdm-consent-row-failed td {
  background: #fff1f2;
}

.abdm-consent-row-expired td,
.abdm-consent-row-revoked td {
  background: #f8fafc;
}

.abdm-consent-status-requested {
  background: #dbeafe;
  color: #1d4ed8;
}

.abdm-consent-status-granted {
  background: #e6f5ef;
  color: #007d54;
}

.abdm-consent-status-denied {
  background: #ffe4e6;
  color: #be123c;
}

.abdm-consent-status-expired {
  background: #eef2f7;
  color: #304057;
}

.abdm-share-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(470px, 0.9fr) minmax(0, 1.1fr);
}

.abdm-share-form-panel,
.abdm-share-list-panel {
  padding: 1rem;
}

.abdm-share-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.abdm-share-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.abdm-share-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.abdm-share-care-search {
  align-items: end;
  display: grid;
  gap: 0.5rem;
  grid-template-columns: minmax(0, 1fr) auto auto;
  margin-bottom: 0.9rem;
}

.abdm-share-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.abdm-share-form-grid .wide {
  grid-column: span 2;
}

.abdm-share-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.abdm-share-codebox {
  font-family: Consolas, "Courier New", monospace;
  font-size: 0.82rem;
  line-height: 1.4;
}

.abdm-share-actions,
.abdm-share-delete-form {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.abdm-share-delete-form {
  margin-left: 0.5rem;
}

.abdm-share-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.abdm-share-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.abdm-share-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
}

.abdm-share-summary strong {
  color: #14213d;
}

.abdm-share-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(260px, 1fr) auto;
  margin-bottom: 1rem;
}

.abdm-share-search-actions {
  display: flex;
  gap: 0.5rem;
}

.abdm-share-table-wrap {
  max-height: 58vh;
}

.abdm-share-table {
  min-width: 1640px;
}

.abdm-share-table th:nth-child(3),
.abdm-share-table th:nth-child(4),
.abdm-share-table th:nth-child(5) {
  min-width: 170px;
}

.abdm-share-row-pending td,
.abdm-share-row-fhir-generated td,
.abdm-share-row-encrypted td {
  background: #eff6ff;
}

.abdm-share-row-shared td {
  background: #f0fdf4;
}

.abdm-share-row-failed td {
  background: #fff1f2;
}

.abdm-share-row-rejected td,
.abdm-share-row-cancelled td {
  background: #f8fafc;
}

.abdm-share-status-pending {
  background: #dbeafe;
  color: #1d4ed8;
}

.abdm-share-status-progress {
  background: #ede9fe;
  color: #5b21b6;
}

.abdm-share-status-shared {
  background: #e6f5ef;
  color: #007d54;
}

.abdm-share-status-failed {
  background: #ffe4e6;
  color: #be123c;
}

.abdm-share-status-rejected {
  background: #eef2f7;
  color: #304057;
}

.abdm-settings-inline-form {
  display: inline-flex;
}

.abdm-settings-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(430px, 0.88fr) minmax(0, 1.12fr);
}

.abdm-settings-form-panel,
.abdm-settings-list-panel {
  padding: 1rem;
}

.abdm-settings-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.abdm-settings-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.abdm-settings-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.abdm-settings-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.abdm-settings-form-grid .wide {
  grid-column: span 2;
}

.abdm-settings-check-field {
  align-items: end;
  display: flex;
  min-height: 4.35rem;
}

.abdm-settings-check-field .form-check {
  margin-bottom: 0.45rem;
}

.abdm-settings-secret-row {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: minmax(0, 1fr) auto;
}

.abdm-settings-actions,
.abdm-settings-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.abdm-settings-delete-form {
  margin-left: 0.5rem;
}

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

.abdm-settings-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.abdm-settings-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
}

.abdm-settings-summary strong {
  color: #14213d;
}

.abdm-settings-table-wrap {
  max-height: 58vh;
}

.abdm-settings-table {
  min-width: 980px;
}

.abdm-settings-table th:nth-child(5) {
  min-width: 260px;
}

.abdm-settings-active-row td {
  background: #f0fdf4;
}

.abdm-settings-status-active {
  background: #e6f5ef;
  color: #007d54;
}

.abdm-settings-status-inactive {
  background: #eef2f7;
  color: #304057;
}

.abha-link-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(440px, 0.9fr) minmax(0, 1.1fr);
}

.abha-link-form-panel,
.abha-link-list-panel {
  padding: 1rem;
}

.abha-link-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.abha-link-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.abha-link-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.abha-link-patient-search {
  align-items: end;
  display: grid;
  gap: 0.5rem;
  grid-template-columns: minmax(0, 1fr) auto auto;
  margin-bottom: 0.9rem;
}

.abha-link-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.abha-link-form-grid .wide {
  grid-column: span 2;
}

.abha-link-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.abha-link-check-field {
  align-items: end;
  display: flex;
  min-height: 4.35rem;
}

.abha-link-check-field .form-check {
  margin-bottom: 0.45rem;
}

.abha-link-actions,
.abha-link-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.abha-link-delete-form {
  margin-left: 0.5rem;
}

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

.abha-link-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.abha-link-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
}

.abha-link-summary strong {
  color: #14213d;
}

.abha-link-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(260px, 1fr) auto;
  margin-bottom: 1rem;
}

.abha-link-search-actions {
  display: flex;
  gap: 0.5rem;
}

.abha-link-table-wrap {
  max-height: 58vh;
}

.abha-link-table {
  min-width: 1180px;
}

.abha-link-table th:nth-child(3),
.abha-link-table th:nth-child(6) {
  min-width: 180px;
}

.abha-link-verified-row td {
  background: #f0fdf4;
}

.abha-link-unverified-row td {
  background: #fffbeb;
}

.abha-link-status-verified {
  background: #e6f5ef;
  color: #007d54;
}

.abha-link-status-unverified {
  background: #fff2d5;
  color: #a55a00;
}

.hospital-payment-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(410px, 0.82fr) minmax(0, 1.18fr);
}

.hospital-payment-form-panel,
.hospital-payment-list-panel {
  padding: 1rem;
}

.hospital-payment-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.hospital-payment-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.hospital-payment-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.hospital-payment-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hospital-payment-form-grid .wide {
  grid-column: span 2;
}

.hospital-payment-amount {
  font-weight: 800;
  text-align: right;
}

.hospital-payment-readonly {
  background: #f8fafc;
  font-weight: 800;
}

.hospital-payment-note {
  color: #67748a;
  font-size: 0.85rem;
  margin-top: 0.75rem;
}

.hospital-payment-actions,
.hospital-payment-cancel-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.hospital-payment-cancel-form {
  margin-left: 0.5rem;
}

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

.hospital-payment-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.hospital-payment-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
}

.hospital-payment-summary strong {
  color: #14213d;
}

.hospital-payment-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(220px, 1fr) 140px 140px auto auto;
  margin-bottom: 1rem;
}

.hospital-payment-cancelled-filter {
  align-items: center;
  display: flex;
  min-height: 38px;
}

.hospital-payment-search-actions {
  display: flex;
  gap: 0.5rem;
}

.hospital-payment-table-wrap {
  max-height: 62vh;
}

.hospital-payment-table {
  min-width: 1120px;
}

.hospital-payment-table th:nth-child(3),
.hospital-payment-table th:nth-child(4) {
  min-width: 170px;
}

.hospital-payment-cancelled-row td {
  background: #f8fafc;
  color: #8a3944;
  text-decoration: line-through;
}

.hospital-payment-status-active {
  background: #e6f5ef;
  color: #007d54;
}

.hospital-payment-status-cancelled {
  background: #ffe4e6;
  color: #be123c;
}

.hospital-payment-print {
  background: #fff;
  border: 1px solid #14213d;
  color: #111827;
  display: none;
  margin: 0 auto;
  max-width: 760px;
  padding: 1rem;
}

.hospital-payment-print-head {
  border-bottom: 1px solid #14213d;
  margin-bottom: 0.75rem;
  padding-bottom: 0.75rem;
  text-align: center;
}

.hospital-payment-print-head h2 {
  font-size: 1.25rem;
  margin: 0 0 0.25rem;
}

.hospital-payment-print-head p {
  margin: 0.1rem 0;
}

.hospital-payment-print h3 {
  font-size: 1.1rem;
  margin: 0.75rem 0;
  text-align: center;
}

.hospital-payment-print-cancelled {
  color: #be123c;
  font-size: 1.5rem;
  font-weight: 900;
  text-align: center;
}

.hospital-payment-print-grid {
  display: grid;
  grid-template-columns: 1fr;
}

.hospital-payment-print-grid.two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hospital-payment-print-grid div {
  border: 1px solid #14213d;
  border-bottom: 0;
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  min-height: 34px;
}

.hospital-payment-print-grid div:last-child {
  border-bottom: 1px solid #14213d;
}

.hospital-payment-print-grid.two div {
  border-bottom: 1px solid #14213d;
}

.hospital-payment-print-grid span {
  border-right: 1px solid #14213d;
  font-weight: 800;
  padding: 0.45rem 0.55rem;
}

.hospital-payment-print-grid strong {
  font-weight: 700;
  padding: 0.45rem 0.55rem;
}

.hospital-payment-signatures {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 4rem;
}

.hospital-payment-signatures span {
  border-top: 1px solid #14213d;
  font-weight: 800;
  padding-top: 0.45rem;
  text-align: center;
}

.hospital-payment-print-foot {
  display: flex;
  justify-content: space-between;
  margin-top: 1.4rem;
}

.contra-voucher-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(470px, 0.9fr) minmax(0, 1.1fr);
}

.contra-voucher-form-panel,
.contra-voucher-list-panel {
  padding: 1rem;
}

.contra-voucher-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.contra-voucher-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.contra-voucher-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.contra-voucher-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.contra-voucher-form-grid .wide {
  grid-column: span 2;
}

.contra-voucher-readonly {
  background: #f8fafc;
  font-weight: 800;
}

.contra-voucher-amount {
  font-weight: 800;
  text-align: right;
}

.contra-voucher-totals-inline {
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.4rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-height: 38px;
  padding: 0.45rem 0.55rem;
}

.contra-voucher-totals-inline span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 800;
}

.contra-voucher-totals-inline strong {
  color: #14213d;
  display: block;
  font-size: 0.95rem;
}

.contra-voucher-info {
  color: #67748a;
  font-size: 0.88rem;
  font-weight: 700;
  margin-top: 0.75rem;
}

.contra-voucher-actions,
.contra-voucher-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.contra-voucher-delete-form {
  margin-left: 0.5rem;
}

.contra-voucher-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.contra-voucher-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.contra-voucher-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
}

.contra-voucher-summary strong {
  color: #14213d;
}

.contra-voucher-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(220px, 1fr) 140px 140px auto;
  margin-bottom: 1rem;
}

.contra-voucher-search-actions {
  display: flex;
  gap: 0.5rem;
}

.contra-voucher-table-wrap {
  max-height: 62vh;
}

.contra-voucher-table {
  min-width: 1160px;
}

.contra-voucher-table th:nth-child(4),
.contra-voucher-table th:nth-child(5) {
  min-width: 180px;
}

.contra-voucher-type {
  background: #e8f0ff;
  color: #2446a5;
}

.contra-voucher-kind {
  color: #67748a;
  font-size: 0.72rem;
  font-weight: 800;
  margin-left: 0.35rem;
}

.journal-voucher-layout {
  display: grid;
  gap: 1rem;
}

.journal-voucher-form-panel,
.journal-voucher-list-panel {
  padding: 1rem;
}

.journal-voucher-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.journal-voucher-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.journal-voucher-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.journal-voucher-head-grid {
  grid-template-columns: 180px 160px minmax(180px, 0.7fr) minmax(320px, 1.3fr);
}

.journal-voucher-head-grid .wide {
  grid-column: auto;
}

.journal-voucher-readonly {
  background: #f8fafc;
  font-weight: 800;
}

.journal-voucher-summary,
.journal-voucher-list-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 1rem 0;
}

.journal-voucher-summary div,
.journal-voucher-list-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.journal-voucher-summary span,
.journal-voucher-list-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
}

.journal-voucher-summary strong,
.journal-voucher-list-summary strong {
  color: #14213d;
}

.journal-voucher-balanced {
  color: #007d54 !important;
}

.journal-voucher-unbalanced {
  color: #be123c !important;
}

.journal-voucher-line-actions,
.journal-voucher-actions,
.journal-voucher-delete-form,
.journal-voucher-search-actions {
  display: inline-flex;
  gap: 0.5rem;
}

.journal-voucher-line-actions {
  margin-bottom: 0.75rem;
}

.journal-voucher-actions,
.journal-voucher-delete-form {
  margin-top: 0.75rem;
}

.journal-voucher-delete-form {
  margin-left: 0.5rem;
}

.journal-voucher-line-wrap {
  max-height: 46vh;
}

.journal-voucher-line-table {
  min-width: 980px;
}

.journal-voucher-line-table th:first-child {
  min-width: 320px;
}

.journal-voucher-line-table th:nth-child(2),
.journal-voucher-line-table th:nth-child(3) {
  width: 150px;
}

.journal-voucher-line-table th:nth-child(4) {
  min-width: 260px;
}

.journal-amount {
  font-weight: 800;
  text-align: right;
}

.journal-voucher-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(280px, 1fr) 150px 150px auto;
  margin-bottom: 1rem;
}

.journal-voucher-table-wrap {
  max-height: 62vh;
}

.journal-voucher-table {
  min-width: 1180px;
}

.journal-voucher-table th:nth-child(4) {
  min-width: 300px;
}

.ledger-master-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(430px, 0.85fr) minmax(0, 1.15fr);
}

.ledger-master-form-panel,
.ledger-master-list-panel {
  padding: 1rem;
}

.ledger-master-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.ledger-master-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.ledger-master-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.ledger-master-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ledger-master-form-grid .wide {
  grid-column: span 2;
}

.ledger-master-readonly {
  background: #f8fafc;
  font-weight: 800;
}

.ledger-master-uppercase {
  text-transform: uppercase;
}

.ledger-master-amount {
  font-weight: 800;
  text-align: right;
}

.ledger-master-active-field .form-check,
.ledger-master-inactive-check {
  align-items: center;
  display: flex;
  gap: 0.45rem;
  min-height: 38px;
}

.ledger-master-note {
  color: #67748a;
  font-size: 0.84rem;
  margin-top: 0.75rem;
}

.ledger-master-actions,
.ledger-master-inactive-form,
.ledger-master-search-actions {
  display: inline-flex;
  gap: 0.5rem;
}

.ledger-master-actions,
.ledger-master-inactive-form {
  margin-top: 0.75rem;
}

.ledger-master-inactive-form {
  margin-left: 0.5rem;
}

.ledger-master-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.ledger-master-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
}

.ledger-master-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
}

.ledger-master-summary strong {
  color: #14213d;
}

.ledger-master-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(230px, 1fr) minmax(180px, 0.8fr) 145px auto auto;
  margin-bottom: 1rem;
}

.ledger-master-table-wrap {
  max-height: 62vh;
}

.ledger-master-table {
  min-width: 1260px;
}

.ledger-master-table th:nth-child(2),
.ledger-master-table th:nth-child(4) {
  min-width: 220px;
}

.ledger-master-category {
  background: #e8f0ff;
  color: #2446a5;
}

.ledger-master-status-active {
  background: #e6f5ef;
  color: #007d54;
}

.ledger-master-status-inactive {
  background: #ffe4e6;
  color: #be123c;
}

.ledger-master-inactive-row td {
  background: #f8fafc;
  color: #8a3944;
}

.attendance-entry-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(430px, 0.85fr) minmax(0, 1.15fr);
}

.attendance-entry-form-panel,
.attendance-entry-list-panel {
  padding: 1rem;
}

.attendance-entry-form-panel h2,
.attendance-entry-list-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.attendance-entry-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.attendance-entry-form-grid .wide {
  grid-column: span 2;
}

.attendance-entry-time-control {
  align-items: center;
  display: grid;
  gap: 0.45rem;
  grid-template-columns: 22px minmax(0, 1fr);
}

.attendance-entry-metric {
  background: #f8fafc;
  font-weight: 700;
}

.attendance-entry-actions,
.attendance-entry-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.attendance-entry-delete-form {
  margin-left: 0.5rem;
}

.attendance-entry-list-head {
  align-items: center;
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.75rem;
}

.attendance-entry-list-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.attendance-entry-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 140px 140px minmax(220px, 1fr) auto;
  margin-bottom: 1rem;
}

.attendance-entry-search-actions {
  display: flex;
  gap: 0.5rem;
}

.attendance-entry-table-wrap {
  max-height: 62vh;
}

.attendance-entry-table {
  min-width: 1320px;
}

.attendance-entry-table th:nth-child(4),
.attendance-entry-table th:last-child {
  min-width: 180px;
}

.attendance-entry-absent-row td {
  background: #fff7f7;
}

.attendance-entry-leave-row td,
.attendance-entry-halfday-row td {
  background: #fffbeb;
}

.duty-roster-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(420px, 0.82fr) minmax(0, 1.18fr);
}

.duty-roster-form-panel,
.duty-roster-list-panel {
  padding: 1rem;
}

.duty-roster-form-panel h2,
.duty-roster-list-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.duty-roster-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.duty-roster-form-grid .wide {
  grid-column: span 2;
}

.duty-roster-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.duty-roster-actions,
.duty-roster-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.duty-roster-delete-form {
  margin-left: 0.5rem;
}

.duty-roster-note {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  color: #67748a;
  display: grid;
  gap: 0.25rem;
  margin-top: 1rem;
  padding: 0.75rem;
}

.duty-roster-note strong {
  color: #14213d;
}

.duty-roster-list-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.duty-roster-list-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.duty-roster-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 140px 140px 210px 190px minmax(220px, 1fr) auto;
  margin-bottom: 1rem;
}

.duty-roster-search-actions {
  display: flex;
  gap: 0.5rem;
}

.duty-roster-table-wrap {
  max-height: 62vh;
}

.duty-roster-table {
  min-width: 1220px;
}

.duty-roster-table th:nth-child(5),
.duty-roster-table th:nth-child(9) {
  min-width: 190px;
}

.leave-application-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(460px, 0.9fr) minmax(0, 1.1fr);
}

.leave-application-form-panel,
.leave-application-list-panel {
  padding: 1rem;
}

.leave-application-form-panel h2,
.leave-application-list-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.leave-application-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.leave-application-form-grid .wide {
  grid-column: span 2;
}

.leave-application-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.leave-application-actions,
.leave-application-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.leave-application-delete-form {
  margin-left: 0.5rem;
}

.leave-application-note {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  color: #67748a;
  display: grid;
  gap: 0.25rem;
  margin-top: 1rem;
  padding: 0.75rem;
}

.leave-application-note strong {
  color: #14213d;
}

.leave-application-list-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.leave-application-list-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.leave-application-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(6, minmax(95px, 1fr));
  margin-bottom: 1rem;
}

.leave-application-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.leave-application-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.leave-application-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.leave-application-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 140px 140px 210px 150px minmax(220px, 1fr) auto;
  margin-bottom: 1rem;
}

.leave-application-search-actions {
  display: flex;
  gap: 0.5rem;
}

.leave-application-table-wrap {
  max-height: 58vh;
}

.leave-application-table {
  min-width: 1480px;
}

.leave-application-table th:nth-child(5),
.leave-application-table th:nth-child(11),
.leave-application-table th:nth-child(12) {
  min-width: 180px;
}

.leave-application-approved-row td {
  background: #f8fcf8;
}

.leave-application-rejected-row td {
  background: #fff7f7;
}

.leave-application-cancelled-row td {
  color: #8a98aa;
}

.leave-application-status-pending {
  background: #fff2d5;
  color: #a55a00;
}

.leave-application-status-approved {
  background: #e6f5ef;
  color: #007d54;
}

.leave-application-status-rejected {
  background: #fdecec;
  color: #b4232a;
}

.leave-application-status-cancelled {
  background: #eef2f7;
  color: #304057;
}

.leave-approval-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(470px, 0.92fr) minmax(0, 1.08fr);
}

.leave-approval-detail-panel,
.leave-approval-list-panel {
  padding: 1rem;
}

.leave-approval-detail-panel h2,
.leave-approval-list-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.leave-approval-detail-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.leave-approval-detail-grid .wide {
  grid-column: span 2;
}

.leave-approval-readonly {
  background: #f8fafc;
  font-weight: 700;
}

textarea.leave-approval-readonly {
  font-weight: 500;
}

.leave-approval-balance,
.leave-approval-summary {
  display: grid;
  gap: 0.75rem;
  margin-bottom: 1rem;
}

.leave-approval-balance {
  grid-template-columns: repeat(4, minmax(95px, 1fr));
  margin-top: 1rem;
}

.leave-approval-summary {
  grid-template-columns: repeat(6, minmax(95px, 1fr));
}

.leave-approval-balance div,
.leave-approval-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.leave-approval-balance span,
.leave-approval-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.leave-approval-balance strong,
.leave-approval-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.leave-approval-actions {
  display: flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.leave-approval-note {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  color: #67748a;
  display: grid;
  gap: 0.25rem;
  margin-top: 1rem;
  padding: 0.75rem;
}

.leave-approval-note strong {
  color: #14213d;
}

.leave-approval-list-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.leave-approval-list-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.leave-approval-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 140px 140px 210px 150px minmax(220px, 1fr) auto;
  margin-bottom: 1rem;
}

.leave-approval-search-actions {
  display: flex;
  gap: 0.5rem;
}

.leave-approval-table-wrap {
  max-height: 58vh;
}

.leave-approval-table {
  min-width: 1640px;
}

.leave-approval-table th:nth-child(5),
.leave-approval-table th:nth-child(13),
.leave-approval-table th:nth-child(14) {
  min-width: 180px;
}

.leave-approval-pending-row td {
  background: #fffbeb;
}

.leave-approval-approved-row td {
  background: #f8fcf8;
}

.leave-approval-rejected-row td {
  background: #fff7f7;
}

.leave-approval-cancelled-row td {
  background: #f8fafc;
  color: #67748a;
}

.leave-approval-status-pending {
  background: #fff2d5;
  color: #a55a00;
}

.leave-approval-status-approved {
  background: #e6f5ef;
  color: #007d54;
}

.leave-approval-status-rejected {
  background: #fdecec;
  color: #b4232a;
}

.leave-approval-status-cancelled {
  background: #eef2f7;
  color: #304057;
}

.leave-type-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(420px, 0.86fr) minmax(0, 1.14fr);
}

.leave-type-form-panel,
.leave-type-list-panel {
  padding: 1rem;
}

.leave-type-form-panel h2,
.leave-type-list-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.leave-type-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.leave-type-form-grid .wide {
  grid-column: span 2;
}

.leave-type-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.leave-type-toggle-grid {
  display: grid;
  gap: 0.6rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.leave-type-toggle-grid .form-check {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  margin: 0;
  min-height: 42px;
  padding: 0.6rem 0.75rem 0.6rem 2.25rem;
}

.leave-type-actions,
.leave-type-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.leave-type-delete-form {
  margin-left: 0.5rem;
}

.leave-type-note {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  color: #67748a;
  display: grid;
  gap: 0.25rem;
  margin-top: 1rem;
  padding: 0.75rem;
}

.leave-type-note strong {
  color: #14213d;
}

.leave-type-list-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.leave-type-list-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.leave-type-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(5, minmax(95px, 1fr));
  margin-bottom: 1rem;
}

.leave-type-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.leave-type-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.leave-type-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.leave-type-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(220px, 1fr) auto;
  margin-bottom: 1rem;
}

.leave-type-search-actions {
  display: flex;
  gap: 0.5rem;
}

.leave-type-table-wrap {
  max-height: 58vh;
}

.leave-type-table {
  min-width: 1180px;
}

.leave-type-table th:nth-child(3),
.leave-type-table th:nth-child(10) {
  min-width: 190px;
}

.leave-type-inactive-row td {
  background: #f8fafc;
  color: #67748a;
}

.leave-type-active-status {
  background: #e6f5ef;
  color: #007d54;
}

.leave-type-inactive-status {
  background: #eef2f7;
  color: #304057;
}

.hr-department-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(380px, 0.78fr) minmax(0, 1.22fr);
}

.hr-department-form-panel,
.hr-department-list-panel {
  padding: 1rem;
}

.hr-department-form-panel h2,
.hr-department-list-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.hr-department-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hr-department-form-grid .wide {
  grid-column: span 2;
}

.hr-department-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.hr-department-toggle {
  display: grid;
  gap: 0.6rem;
}

.hr-department-toggle .form-check {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  margin: 0;
  min-height: 42px;
  padding: 0.6rem 0.75rem 0.6rem 2.25rem;
}

.hr-department-actions,
.hr-department-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.hr-department-delete-form {
  margin-left: 0.5rem;
}

.hr-department-note {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  color: #67748a;
  display: grid;
  gap: 0.25rem;
  margin-top: 1rem;
  padding: 0.75rem;
}

.hr-department-note strong {
  color: #14213d;
}

.hr-department-list-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.hr-department-list-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.hr-department-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(95px, 1fr));
  margin-bottom: 1rem;
}

.hr-department-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.hr-department-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.hr-department-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.hr-department-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(220px, 1fr) auto;
  margin-bottom: 1rem;
}

.hr-department-search-actions {
  display: flex;
  gap: 0.5rem;
}

.hr-department-table-wrap {
  max-height: 58vh;
}

.hr-department-table {
  min-width: 720px;
}

.hr-department-table th:nth-child(2) {
  min-width: 260px;
}

.hr-department-inactive-row td {
  background: #f8fafc;
  color: #67748a;
}

.hr-department-active-status {
  background: #e6f5ef;
  color: #007d54;
}

.hr-department-inactive-status {
  background: #eef2f7;
  color: #304057;
}

.hr-designation-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(380px, 0.78fr) minmax(0, 1.22fr);
}

.hr-designation-form-panel,
.hr-designation-list-panel {
  padding: 1rem;
}

.hr-designation-form-panel h2,
.hr-designation-list-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.hr-designation-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hr-designation-form-grid .wide {
  grid-column: span 2;
}

.hr-designation-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.hr-designation-toggle {
  display: grid;
  gap: 0.6rem;
}

.hr-designation-toggle .form-check {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  margin: 0;
  min-height: 42px;
  padding: 0.6rem 0.75rem 0.6rem 2.25rem;
}

.hr-designation-actions,
.hr-designation-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.hr-designation-delete-form {
  margin-left: 0.5rem;
}

.hr-designation-note {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  color: #67748a;
  display: grid;
  gap: 0.25rem;
  margin-top: 1rem;
  padding: 0.75rem;
}

.hr-designation-note strong {
  color: #14213d;
}

.hr-designation-list-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.hr-designation-list-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.hr-designation-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(95px, 1fr));
  margin-bottom: 1rem;
}

.hr-designation-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.hr-designation-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.hr-designation-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.hr-designation-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(220px, 1fr) auto;
  margin-bottom: 1rem;
}

.hr-designation-search-actions {
  display: flex;
  gap: 0.5rem;
}

.hr-designation-table-wrap {
  max-height: 58vh;
}

.hr-designation-table {
  min-width: 720px;
}

.hr-designation-table th:nth-child(2) {
  min-width: 260px;
}

.hr-designation-inactive-row td {
  background: #f8fafc;
  color: #67748a;
}

.hr-designation-active-status {
  background: #e6f5ef;
  color: #007d54;
}

.hr-designation-inactive-status {
  background: #eef2f7;
  color: #304057;
}

.hr-shift-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(460px, 0.9fr) minmax(0, 1.1fr);
}

.hr-shift-form-panel,
.hr-shift-list-panel {
  padding: 1rem;
}

.hr-shift-form-panel h2,
.hr-shift-list-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.hr-shift-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hr-shift-form-grid .wide {
  grid-column: span 2;
}

.hr-shift-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.hr-shift-toggle-grid {
  display: grid;
  gap: 0.6rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hr-shift-toggle-grid .form-check {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  margin: 0;
  min-height: 42px;
  padding: 0.6rem 0.75rem 0.6rem 2.25rem;
}

.hr-shift-duration {
  align-items: center;
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  padding: 0.75rem;
}

.hr-shift-duration span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.hr-shift-duration strong {
  color: #14213d;
}

.hr-shift-actions,
.hr-shift-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.hr-shift-delete-form {
  margin-left: 0.5rem;
}

.hr-shift-note {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  color: #67748a;
  display: grid;
  gap: 0.25rem;
  margin-top: 1rem;
  padding: 0.75rem;
}

.hr-shift-note strong {
  color: #14213d;
}

.hr-shift-list-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.hr-shift-list-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.hr-shift-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(95px, 1fr));
  margin-bottom: 1rem;
}

.hr-shift-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.hr-shift-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.hr-shift-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.hr-shift-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(220px, 1fr) auto;
  margin-bottom: 1rem;
}

.hr-shift-search-actions {
  display: flex;
  gap: 0.5rem;
}

.hr-shift-table-wrap {
  max-height: 58vh;
}

.hr-shift-table {
  min-width: 1420px;
}

.hr-shift-table th:nth-child(3),
.hr-shift-table th:nth-child(13) {
  min-width: 180px;
}

.hr-shift-inactive-row td {
  background: #f8fafc;
  color: #67748a;
}

.hr-shift-active-status {
  background: #e6f5ef;
  color: #007d54;
}

.hr-shift-inactive-status {
  background: #eef2f7;
  color: #304057;
}

.hr-holiday-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(420px, 0.84fr) minmax(0, 1.16fr);
}

.hr-holiday-form-panel,
.hr-holiday-list-panel {
  padding: 1rem;
}

.hr-holiday-form-panel h2,
.hr-holiday-list-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.hr-holiday-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hr-holiday-form-grid .wide {
  grid-column: span 2;
}

.hr-holiday-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.hr-holiday-toggle {
  align-self: end;
  display: grid;
}

.hr-holiday-toggle .form-check {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  margin: 0;
  min-height: 42px;
  padding: 0.6rem 0.75rem 0.6rem 2.25rem;
}

.hr-holiday-actions,
.hr-holiday-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.hr-holiday-delete-form {
  margin-left: 0.5rem;
}

.hr-holiday-note {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  color: #67748a;
  display: grid;
  gap: 0.25rem;
  margin-top: 1rem;
  padding: 0.75rem;
}

.hr-holiday-note strong {
  color: #14213d;
}

.hr-holiday-list-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.hr-holiday-list-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.hr-holiday-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(5, minmax(95px, 1fr));
  margin-bottom: 1rem;
}

.hr-holiday-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.hr-holiday-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.hr-holiday-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.hr-holiday-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(220px, 1fr) auto;
  margin-bottom: 1rem;
}

.hr-holiday-search-actions {
  display: flex;
  gap: 0.5rem;
}

.hr-holiday-table-wrap {
  max-height: 58vh;
}

.hr-holiday-table {
  min-width: 980px;
}

.hr-holiday-table th:nth-child(3),
.hr-holiday-table th:nth-child(6) {
  min-width: 190px;
}

.hr-holiday-inactive-row td {
  background: #f8fafc;
  color: #67748a;
}

.hr-holiday-active-status {
  background: #e6f5ef;
  color: #007d54;
}

.hr-holiday-inactive-status {
  background: #eef2f7;
  color: #304057;
}

.hr-employee-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(520px, 0.95fr) minmax(0, 1.05fr);
}

.hr-employee-form-panel,
.hr-employee-list-panel {
  padding: 1rem;
}

.hr-employee-form-panel h2,
.hr-employee-list-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.hr-employee-section-title {
  color: #304057;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0;
  margin: 1rem 0 0.55rem;
  text-transform: uppercase;
}

.hr-employee-section-title:first-of-type {
  margin-top: 0;
}

.hr-employee-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hr-employee-form-grid .wide {
  grid-column: span 2;
}

.hr-employee-readonly {
  background: #f8fafc;
  font-weight: 700;
}

.hr-employee-toggle-grid {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hr-employee-toggle-grid .form-check {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  margin: 0;
  min-height: 42px;
  padding: 0.6rem 0.75rem 0.6rem 2.25rem;
}

.hr-employee-actions,
.hr-employee-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.hr-employee-delete-form {
  margin-left: 0.5rem;
}

.hr-employee-list-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.hr-employee-list-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.hr-employee-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(5, minmax(95px, 1fr));
  margin-bottom: 1rem;
}

.hr-employee-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.hr-employee-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.hr-employee-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.hr-employee-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(240px, 1fr) auto;
  margin-bottom: 1rem;
}

.hr-employee-search-actions {
  display: flex;
  gap: 0.5rem;
}

.hr-employee-table-wrap {
  max-height: 58vh;
}

.hr-employee-table {
  min-width: 1420px;
}

.hr-employee-table th:nth-child(3),
.hr-employee-table th:nth-child(7) {
  min-width: 190px;
}

.hr-employee-inactive-row td {
  background: #f8fafc;
  color: #67748a;
}

.hr-employee-active-status {
  background: #e6f5ef;
  color: #007d54;
}

.hr-employee-inactive-status {
  background: #eef2f7;
  color: #304057;
}

.attendance-register-filter {
  align-items: end;
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 140px 140px 170px 170px 220px 170px 140px minmax(250px, 1fr) auto;
  margin-bottom: 1rem;
  padding: 1rem;
}

.attendance-register-actions {
  display: flex;
  gap: 0.5rem;
}

.attendance-register-query {
  min-width: 0;
}

.attendance-register-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(8, minmax(105px, 1fr));
  margin-bottom: 1rem;
}

.attendance-register-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.attendance-register-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.attendance-register-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.attendance-register-panel {
  padding: 1rem;
}

.attendance-register-table-wrap {
  max-height: 72vh;
}

.attendance-register-table {
  min-width: 1580px;
}

.attendance-register-table th:nth-child(4),
.attendance-register-table th:last-child {
  min-width: 190px;
}

.attendance-register-absent-row td {
  background: #fff7f7;
}

.attendance-register-leave-row td,
.attendance-register-halfday-row td {
  background: #fffbeb;
}

.monthly-attendance-filter {
  align-items: end;
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 145px 110px 190px 240px minmax(260px, 1fr) auto;
  margin-bottom: 1rem;
  padding: 1rem;
}

.monthly-attendance-actions {
  display: flex;
  gap: 0.5rem;
}

.monthly-attendance-query {
  min-width: 0;
}

.monthly-attendance-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(8, minmax(105px, 1fr));
  margin-bottom: 1rem;
}

.monthly-attendance-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.monthly-attendance-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.monthly-attendance-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.monthly-attendance-panel {
  padding: 1rem;
}

.monthly-attendance-table-wrap {
  max-height: 72vh;
}

.monthly-attendance-table {
  min-width: 1980px;
}

.monthly-attendance-table th:nth-child(3),
.monthly-attendance-table th:nth-child(4),
.monthly-attendance-table th:nth-child(5) {
  min-width: 160px;
}

.monthly-attendance-unmarked-row td {
  background: #fffbeb;
}

.deduction-high-row td {
  background: #fef2f2;
}

.deduction-positive-row td {
  background: #fffbeb;
}

.pfesi-positive-row td {
  background: #f8fcf8;
}

.print-only {
  display: none;
}

.ipd-admission-picker {
  max-height: 68vh;
}

.patient-table-wrap {
  max-height: 62vh;
}

.patient-table {
  min-width: 980px;
}

.billing-table {
  min-width: 760px;
}

.ipd-charge-table {
  min-width: 1680px;
}

.ipd-charge-table th:nth-child(1) {
  width: 280px;
}

.ipd-charge-table th:nth-child(10) {
  width: 160px;
}

.ipd-charge-table th:nth-child(11) {
  width: 190px;
}

.ipd-charge-table th:nth-child(12) {
  width: 220px;
}

.billing-table th:nth-child(1) {
  width: 52%;
}

.billing-table th:nth-child(2),
.billing-table th:nth-child(3),
.billing-table th:nth-child(4) {
  width: 16%;
}

.patient-table thead th {
  background: #eef3f8;
  color: #304057;
  font-size: 0.82rem;
  position: sticky;
  top: 0;
  z-index: 1;
}

.patient-table td {
  color: #304057;
}

.empty-table {
  color: #67748a;
  padding: 2rem !important;
  text-align: center;
}

.status-pill {
  background: #e6f5ef;
  border-radius: 999px;
  color: #007d54;
  display: inline-block;
  font-size: 0.72rem;
  font-weight: 800;
  margin-left: 0.4rem;
  padding: 0.12rem 0.45rem;
}

.status-admitted {
  background: #e6f5ef;
  color: #007d54;
}

.status-discharged {
  background: #e8f0ff;
  color: #2446a5;
}

.status-reserved {
  background: #f0e9ff;
  color: #6f42c1;
}

.status-occupied {
  background: #fff2d5;
  color: #a55a00;
}

.status-neutral {
  background: #eef3f8;
  color: #304057;
}

.cancelled-row td {
  color: #8a98aa;
  text-decoration: line-through;
}

.status-cancelled,
.status-no-show {
  background: #fdecec;
  color: #b4232a;
}

.status-visited {
  background: #e8f0ff;
  color: #2446a5;
}

.compact-empty {
  box-shadow: none;
  margin: 0;
  max-width: none;
}

.patient-form {
  display: grid;
  gap: 1rem;
}

.ipd-patient-picker {
  max-height: 34vh;
}

.form-panel {
  padding: 1rem;
}

.panel-title {
  border-bottom: 1px solid #e3e8f0;
  margin-bottom: 1rem;
  padding-bottom: 0.6rem;
}

.panel-title h2 {
  font-size: 1rem;
  margin: 0;
}

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

.form-field {
  display: grid;
  gap: 0.3rem;
  min-width: 0;
}

.form-field.wide {
  grid-column: span 2;
}

.compact-pair {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 1fr 1fr;
}

.patient-check {
  align-items: center;
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: flex;
  gap: 0.5rem;
  margin: 1.7rem 0 0;
  min-height: 38px;
  padding: 0.35rem 0.75rem;
}

.patient-check .form-check-input {
  margin: 0;
}

.receipt-check {
  margin: 0;
}

.form-actions,
.delete-strip {
  align-items: center;
  display: flex;
  gap: 0.75rem;
  justify-content: flex-end;
}

.delete-strip {
  margin-top: 0.75rem;
}

.cancel-reason {
  max-width: 360px;
}

.totals-strip {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.final-totals-strip {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.totals-strip div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.totals-strip span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.totals-strip strong {
  color: #14213d;
  font-size: 1.05rem;
}

.final-save-strip {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: auto 220px auto;
  margin-bottom: 1rem;
}

.final-save-strip .form-label {
  align-self: center;
  margin: 0;
}

.final-bill-banner {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.final-bill-banner div {
  background: #eef7f7;
  border: 1px solid #b9dcdf;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.final-bill-banner span {
  color: #477178;
  font-size: 0.8rem;
  font-weight: 700;
}

.final-bill-table {
  min-width: 1280px;
}

.final-receipt-table {
  min-width: 860px;
}

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

.discharge-note-grid .wide:last-child {
  grid-column: span 2;
}

.discharge-rx-table {
  min-width: 980px;
}

.discharge-rx-table th:nth-child(1) {
  width: 30%;
}

.discharge-actions {
  margin-top: 1rem;
}

.discharge-print {
  max-width: 940px;
}

.discharge-print-section {
  border-top: 1px solid #d8dee9;
  padding: 0.75rem 0;
}

.discharge-print-section h2,
.discharge-print-title {
  font-size: 0.98rem;
  margin: 0 0 0.35rem;
}

.discharge-print-section p {
  margin: 0;
  min-height: 1.35rem;
  white-space: pre-wrap;
}

.bed-transfer-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 1.8fr 1fr 0.7fr;
  margin-bottom: 1rem;
}

.bed-transfer-summary div,
.bed-transfer-help {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.bed-transfer-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.bed-transfer-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.bed-transfer-help {
  color: #67748a;
  margin: 0.75rem 0 1rem;
}

.bed-transfer-history-table {
  min-width: 920px;
}

.compact-panel-title {
  margin-top: 1rem;
}

.final-bill-print {
  max-width: 980px;
}

.final-print-grid {
  margin-bottom: 1.25rem;
}

.final-print-table {
  border: 1px solid #d8dee9;
}

.final-print-table th {
  background: #eef3f8;
}

.final-print-summary {
  display: grid;
  gap: 0.35rem 1rem;
  grid-template-columns: minmax(0, 1fr) 140px;
  margin-left: auto;
  margin-top: 1rem;
  max-width: 360px;
}

.final-print-summary span {
  color: #67748a;
  font-weight: 700;
  text-align: right;
}

.final-print-summary strong {
  text-align: right;
}

.receipt-print {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  margin: 0 auto;
  max-width: 760px;
  padding: 2rem;
}

.receipt-print-head {
  border-bottom: 1px solid #14213d;
  margin-bottom: 1.25rem;
  padding-bottom: 0.75rem;
  text-align: center;
}

.receipt-print-head h2 {
  font-size: 1.3rem;
  margin: 0;
}

.receipt-print-head p {
  color: #67748a;
  margin: 0.2rem 0 0;
}

.receipt-print-grid {
  display: grid;
  gap: 0.6rem 1rem;
  grid-template-columns: 150px minmax(0, 1fr);
}

.receipt-print-grid span,
.receipt-amount span {
  color: #67748a;
  font-weight: 700;
}

.receipt-amount {
  align-items: center;
  border: 2px solid #14213d;
  display: flex;
  justify-content: space-between;
  margin-top: 1.5rem;
  padding: 0.8rem 1rem;
}

.receipt-amount strong {
  font-size: 1.35rem;
}

.receipt-sign-row {
  display: flex;
  justify-content: space-between;
  margin-top: 4rem;
}

.hospital-info-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
}

.hospital-info-main {
  display: grid;
  gap: 1rem;
}

.hospital-info-side {
  position: sticky;
  top: 1rem;
}

.logo-panel {
  display: grid;
  gap: 1rem;
}

.logo-preview {
  align-items: center;
  background: #f8fafc;
  border: 1px dashed #aab7c8;
  border-radius: 8px;
  color: #67748a;
  display: flex;
  justify-content: center;
  min-height: 180px;
  overflow-wrap: anywhere;
  padding: 1rem;
  text-align: center;
}

.opd-encounter-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(330px, 0.78fr) minmax(0, 1.55fr);
}

.opd-encounter-picker,
.opd-encounter-workspace {
  min-width: 0;
}

.opd-encounter-picker {
  display: grid;
  gap: 0.85rem;
}

.opd-encounter-filter {
  grid-template-columns: 140px minmax(190px, 1fr);
}

.opd-encounter-filter input[name="search"],
.opd-encounter-previous-search input,
.opd-encounter-item-search input {
  min-width: 0;
}

.opd-encounter-previous-search,
.opd-encounter-item-search {
  grid-template-columns: minmax(0, 1fr) auto;
}

.opd-encounter-section-title {
  margin-bottom: -0.35rem;
}

.opd-encounter-appointment-wrap,
.opd-encounter-visit-wrap,
.opd-encounter-previous-wrap {
  max-height: 29vh;
}

.opd-encounter-appointment-table,
.opd-encounter-visit-table,
.opd-encounter-previous-table {
  min-width: 620px;
}

.opd-encounter-form {
  display: grid;
  gap: 1rem;
}

.opd-encounter-master-panel {
  margin-top: 0;
}

.opd-encounter-form-grid {
  grid-template-columns: repeat(4, minmax(145px, 1fr));
}

.opd-encounter-vitals-grid {
  display: grid;
  gap: 0.9rem;
  grid-template-columns: repeat(5, minmax(110px, 1fr));
}

.opd-encounter-notes-grid {
  display: grid;
  gap: 0.9rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.opd-encounter-notes-grid .wide {
  grid-column: span 2;
}

.opd-encounter-followup {
  align-items: end;
  display: grid;
  gap: 0.45rem;
  grid-template-columns: 130px minmax(150px, 1fr);
}

.opd-encounter-followup .form-check {
  align-items: center;
  display: flex;
  gap: 0.45rem;
  margin-bottom: 0.45rem;
}

.opd-encounter-rx-title {
  align-items: center;
}

.opd-encounter-rx-wrap {
  max-height: 42vh;
}

.opd-encounter-rx-table {
  min-width: 1420px;
}

.opd-encounter-rx-table th:first-child,
.opd-encounter-rx-table th:nth-child(2) {
  min-width: 220px;
}

.opd-encounter-rx-table th:nth-child(9) {
  min-width: 240px;
}

.opd-encounter-actions {
  margin-top: 0;
}

.opd-lab-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(340px, 0.82fr) minmax(0, 1.55fr);
}

.opd-lab-picker,
.opd-lab-workspace {
  min-width: 0;
}

.opd-lab-picker {
  display: grid;
  gap: 0.85rem;
}

.opd-lab-search {
  grid-template-columns: minmax(0, 1fr) auto;
}

.opd-lab-load-strip {
  grid-template-columns: minmax(170px, 0.5fr) auto auto;
}

.opd-lab-patient-wrap,
.opd-lab-bill-wrap {
  max-height: 28vh;
}

.opd-lab-item-panels {
  display: grid;
  gap: 0.85rem;
}

.opd-lab-item-wrap {
  max-height: 24vh;
}

.opd-lab-patient-table,
.opd-lab-bill-table,
.opd-lab-item-table {
  min-width: 620px;
}

.opd-lab-form {
  display: grid;
  gap: 1rem;
}

.opd-lab-head-grid {
  grid-template-columns: repeat(4, minmax(145px, 1fr));
}

.opd-lab-refer-grid {
  grid-template-columns: minmax(260px, 1fr) 130px 150px;
}

.opd-lab-line-title {
  align-items: center;
}

.opd-lab-line-title div {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
}

.opd-lab-line-wrap {
  max-height: 43vh;
}

.opd-lab-line-table {
  min-width: 1160px;
}

.opd-lab-line-table th:nth-child(2) {
  min-width: 120px;
}

.opd-lab-line-table th:nth-child(3) {
  min-width: 130px;
}

.opd-lab-line-table th:nth-child(4) {
  min-width: 280px;
}

.opd-lab-summary {
  grid-template-columns: repeat(5, minmax(120px, 1fr));
}

.opd-lab-summary input {
  font-size: 1rem;
  font-weight: 800;
  min-height: 36px;
}

.opd-lab-payment-grid {
  grid-template-columns: 160px 200px minmax(260px, 1fr);
}

.opd-lab-actions {
  margin-top: 0;
}

.ipd-lab-order-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(370px, 0.9fr) minmax(0, 1.55fr);
}

.ipd-lab-order-picker,
.ipd-lab-order-workspace {
  min-width: 0;
}

.ipd-lab-order-picker {
  display: grid;
  gap: 0.85rem;
}

.ipd-lab-order-search {
  grid-template-columns: minmax(0, 1fr) auto;
}

.ipd-lab-order-search.compact-search {
  grid-template-columns: minmax(0, 1fr) auto;
}

.ipd-lab-order-load-strip {
  grid-template-columns: minmax(190px, 0.55fr) auto auto;
}

.ipd-lab-admission-wrap,
.ipd-lab-order-wrap {
  max-height: 27vh;
}

.ipd-lab-admission-table,
.ipd-lab-order-table {
  min-width: 720px;
}

.ipd-lab-item-panels {
  display: grid;
  gap: 0.85rem;
  grid-template-columns: 1fr;
}

.ipd-lab-item-wrap {
  max-height: 27vh;
}

.ipd-lab-item-table {
  min-width: 640px;
}

.ipd-lab-order-form {
  display: grid;
  gap: 1rem;
}

.ipd-lab-order-head-grid {
  grid-template-columns: repeat(4, minmax(145px, 1fr));
}

.ipd-lab-line-title {
  align-items: center;
}

.ipd-lab-line-wrap {
  max-height: 48vh;
}

.ipd-lab-line-table {
  min-width: 1120px;
}

.ipd-lab-line-table th:nth-child(4) {
  min-width: 290px;
}

.ipd-lab-order-summary {
  grid-template-columns: repeat(3, minmax(140px, 1fr));
}

.ipd-lab-order-actions {
  margin-top: 0;
}

.ipd-lab-result-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(370px, 0.9fr) minmax(0, 1.55fr);
}

.ipd-lab-result-picker,
.ipd-lab-result-workspace {
  min-width: 0;
}

.ipd-lab-result-picker {
  display: grid;
  gap: 0.85rem;
}

.ipd-lab-result-search {
  grid-template-columns: 150px minmax(0, 1fr) auto;
}

.ipd-lab-result-load-strip {
  grid-template-columns: minmax(190px, 0.55fr) auto auto;
}

.ipd-lab-result-order-wrap {
  max-height: 74vh;
}

.ipd-lab-result-order-table {
  min-width: 760px;
}

.ipd-lab-result-form {
  display: grid;
  gap: 1rem;
}

.ipd-lab-result-head-grid {
  grid-template-columns: repeat(4, minmax(145px, 1fr));
}

.ipd-lab-result-line-title {
  align-items: center;
}

.ipd-lab-result-line-wrap {
  max-height: 62vh;
}

.ipd-lab-result-line-table {
  min-width: 1180px;
}

.ipd-lab-result-line-table th:nth-child(2) {
  min-width: 290px;
}

.ipd-lab-result-line-table th:nth-child(4) {
  min-width: 190px;
}

.ipd-lab-result-line-table th:nth-child(5) {
  min-width: 150px;
}

.ipd-lab-result-flag-high {
  background-color: #fee2e2;
}

.ipd-lab-result-flag-normal {
  background-color: #dcfce7;
}

.ipd-lab-result-actions {
  margin-top: 0;
}

.radiology-booking-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(350px, 0.85fr) minmax(0, 1.55fr);
}

.radiology-booking-picker,
.radiology-booking-workspace {
  min-width: 0;
}

.radiology-booking-picker {
  display: grid;
  gap: 0.85rem;
}

.radiology-booking-search {
  grid-template-columns: 130px minmax(0, 1fr) auto;
}

.radiology-booking-search.compact-search {
  grid-template-columns: minmax(0, 1fr) auto;
}

.radiology-booking-load-strip {
  grid-template-columns: minmax(170px, 0.5fr) auto auto;
}

.radiology-patient-wrap,
.radiology-booking-wrap {
  max-height: 28vh;
}

.radiology-test-wrap {
  max-height: 31vh;
}

.radiology-patient-table,
.radiology-booking-table,
.radiology-test-table {
  min-width: 650px;
}

.radiology-booking-form {
  display: grid;
  gap: 1rem;
}

.radiology-booking-head-grid {
  grid-template-columns: repeat(4, minmax(145px, 1fr));
}

.radiology-line-title {
  align-items: center;
}

.radiology-line-title div {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
}

.radiology-line-wrap {
  max-height: 48vh;
}

.radiology-line-table {
  min-width: 1480px;
}

.radiology-line-table th:nth-child(3) {
  min-width: 270px;
}

.radiology-line-table th:nth-child(4) {
  min-width: 170px;
}

.radiology-line-table th:nth-child(5) {
  min-width: 140px;
}

.radiology-booking-summary {
  grid-template-columns: repeat(3, minmax(140px, 1fr));
}

.radiology-booking-actions {
  margin-top: 0;
}

.radiology-billing-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(350px, 0.85fr) minmax(0, 1.55fr);
}

.radiology-billing-picker,
.radiology-billing-workspace {
  min-width: 0;
}

.radiology-billing-picker {
  display: grid;
  gap: 0.85rem;
}

.radiology-billing-search {
  grid-template-columns: minmax(0, 1fr) auto;
}

.radiology-billing-load-strip {
  grid-template-columns: minmax(170px, 0.5fr) auto auto;
}

.radiology-billing-booking-wrap,
.radiology-billing-bill-wrap {
  max-height: 36vh;
}

.radiology-billing-booking-table,
.radiology-billing-bill-table {
  min-width: 690px;
}

.radiology-billing-form {
  display: grid;
  gap: 1rem;
}

.radiology-billing-head-grid {
  grid-template-columns: repeat(4, minmax(145px, 1fr));
}

.radiology-billing-line-wrap {
  max-height: 48vh;
}

.radiology-billing-line-table {
  min-width: 1180px;
}

.radiology-billing-line-table th:nth-child(3) {
  min-width: 300px;
}

.radiology-billing-summary {
  grid-template-columns: repeat(6, minmax(120px, 1fr));
}

.radiology-billing-summary input,
.radiology-billing-summary select {
  font-size: 1rem;
  font-weight: 800;
  min-height: 36px;
}

.radiology-billing-actions {
  margin-top: 0;
}

.radiology-report-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(360px, 0.9fr) minmax(0, 1.55fr);
}

.radiology-report-picker,
.radiology-report-workspace {
  min-width: 0;
}

.radiology-report-picker {
  display: grid;
  gap: 0.85rem;
}

.radiology-report-search,
.radiology-report-load-strip {
  grid-template-columns: minmax(0, 1fr) auto;
}

.radiology-report-load-strip {
  grid-template-columns: minmax(190px, 0.55fr) auto auto;
}

.radiology-report-case-wrap {
  max-height: 74vh;
}

.radiology-report-case-table {
  min-width: 820px;
}

.radiology-report-form {
  display: grid;
  gap: 1rem;
}

.radiology-report-head-grid {
  grid-template-columns: repeat(4, minmax(145px, 1fr));
}

.radiology-report-editor-grid {
  grid-template-columns: repeat(2, minmax(180px, 1fr));
}

.radiology-report-editor-grid .wide {
  grid-column: 1 / -1;
}

.radiology-report-editor-grid textarea {
  line-height: 1.45;
  resize: vertical;
}

.radiology-report-actions {
  margin-top: 0;
}

.readonly-like {
  background-color: #f8fafc;
}

@media (max-width: 980px) {
  .dashboard-head {
    grid-template-columns: 1fr;
  }

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

  .ipd-receipt-layout {
    grid-template-columns: 1fr;
  }

  .ipd-final-layout {
    grid-template-columns: 1fr;
  }

  .ipd-discharge-layout {
    grid-template-columns: 1fr;
  }

  .ipd-bed-transfer-layout {
    grid-template-columns: 1fr;
  }

  .ipd-transaction-layout {
    grid-template-columns: 1fr;
  }

  .doctor-visit-layout {
    grid-template-columns: 1fr;
  }

  .dialysis-layout {
    grid-template-columns: 1fr;
  }

  .doctor-round-layout {
    grid-template-columns: 1fr;
  }

  .icu-admission-layout {
    grid-template-columns: 1fr;
  }

  .icu-monitoring-layout {
    grid-template-columns: 1fr;
  }

  .icu-ventilator-layout {
    grid-template-columns: 1fr;
  }

  .icu-billing-layout {
    grid-template-columns: 1fr;
  }

  .approval-layout {
    grid-template-columns: 1fr;
  }

  .claim-doc-layout {
    grid-template-columns: 1fr;
  }

  .settlement-layout {
    grid-template-columns: 1fr;
  }

  .package-mapping-layout {
    grid-template-columns: 1fr;
  }

  .refer-commission-payment-layout {
    grid-template-columns: 1fr;
  }

  .purchase-entry-layout {
    grid-template-columns: 1fr;
  }

  .batch-stock-layout {
    grid-template-columns: 1fr;
  }

  .advance-entry-layout {
    grid-template-columns: 1fr;
  }

  .loan-entry-layout {
    grid-template-columns: 1fr;
  }

  .emergency-registration-layout {
    grid-template-columns: 1fr;
  }

  .emergency-triage-layout {
    grid-template-columns: 1fr;
  }

  .emergency-treatment-layout {
    grid-template-columns: 1fr;
  }

  .emergency-billing-layout {
    grid-template-columns: 1fr;
  }

  .admission-emergency-layout {
    grid-template-columns: 1fr;
  }

  .abdm-care-layout {
    grid-template-columns: 1fr;
  }

  .abdm-consent-layout {
    grid-template-columns: 1fr;
  }

  .abdm-share-layout {
    grid-template-columns: 1fr;
  }

  .abdm-settings-layout {
    grid-template-columns: 1fr;
  }

  .abha-link-layout {
    grid-template-columns: 1fr;
  }

  .hospital-payment-layout {
    grid-template-columns: 1fr;
  }

  .contra-voucher-layout {
    grid-template-columns: 1fr;
  }

  .journal-voucher-layout {
    grid-template-columns: 1fr;
  }

  .ledger-master-layout {
    grid-template-columns: 1fr;
  }

  .menu-master-layout {
    grid-template-columns: 1fr;
  }

  .attendance-entry-layout {
    grid-template-columns: 1fr;
  }

  .duty-roster-layout {
    grid-template-columns: 1fr;
  }

  .leave-application-layout {
    grid-template-columns: 1fr;
  }

  .leave-approval-layout {
    grid-template-columns: 1fr;
  }

  .leave-type-layout {
    grid-template-columns: 1fr;
  }

  .hr-department-layout {
    grid-template-columns: 1fr;
  }

  .hr-designation-layout {
    grid-template-columns: 1fr;
  }

  .hr-shift-layout {
    grid-template-columns: 1fr;
  }

  .hr-holiday-layout {
    grid-template-columns: 1fr;
  }

  .hr-employee-layout {
    grid-template-columns: 1fr;
  }

  .payroll-process-layout {
    grid-template-columns: 1fr;
  }

  .salary-slip-layout {
    grid-template-columns: 1fr;
  }

  .opd-med-layout {
    grid-template-columns: 1fr;
  }

  .opd-encounter-layout {
    grid-template-columns: 1fr;
  }

  .opd-lab-layout {
    grid-template-columns: 1fr;
  }

  .ipd-lab-order-layout {
    grid-template-columns: 1fr;
  }

  .ipd-lab-result-layout {
    grid-template-columns: 1fr;
  }

  .radiology-booking-layout {
    grid-template-columns: 1fr;
  }

  .radiology-billing-layout {
    grid-template-columns: 1fr;
  }

  .radiology-report-layout {
    grid-template-columns: 1fr;
  }

  .opd-encounter-form-grid,
  .opd-encounter-vitals-grid,
  .opd-lab-head-grid,
  .ipd-lab-order-head-grid,
  .ipd-lab-result-head-grid,
  .radiology-booking-head-grid,
  .radiology-billing-head-grid,
  .radiology-report-head-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .radiology-report-editor-grid {
    grid-template-columns: 1fr;
  }

  .bed-board-summary,
  .bed-status-summary,
  .admission-report-summary,
  .receipt-report-summary,
  .charge-report-summary,
  .final-bill-report-summary,
  .discharge-report-summary,
    .current-stock-summary,
    .medicine-ledger-summary,
    .refer-commission-ledger-summary,
    .refer-commission-payment-summary,
    .refer-commission-report-summary,
    .opd-refer-commission-summary,
    .opd-report-summary,
    .opd-report-appointment-summary,
    .daily-collection-summary,
    .daily-attendance-summary,
    .transaction-totals,
    .doctor-visit-summary,
    .dialysis-summary,
  .doctor-round-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .icu-admission-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .icu-monitoring-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .icu-ventilator-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .icu-billing-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

  .claim-doc-totals {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

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

  .package-mapping-totals {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .refer-commission-payment-selected-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .purchase-entry-totals,
  .purchase-entry-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .batch-stock-form-grid,
  .batch-stock-totals,
  .pharma-purchase-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .deduction-report-filter {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .deduction-report-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .pfesi-report-filter {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pfesi-report-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .hospital-info-layout {
    grid-template-columns: 1fr;
  }

  .hospital-info-side {
    position: static;
  }
}

@media (max-width: 720px) {
  html {
    font-size: 14px;
  }

  .dashboard-metrics {
    grid-template-columns: 1fr;
  }

  .hospital-block {
    align-items: flex-start;
  }

  .nav-session {
    align-items: flex-start;
    flex-direction: column;
    padding: 0.75rem 0 0.25rem;
  }

  .page-head {
    align-items: stretch;
    flex-direction: column;
  }

  .page-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .search-strip,
  .opd-search-strip,
  .ipd-search-strip,
  .ipd-receipt-filter,
  .ipd-charge-search,
  .master-search-strip,
  .final-save-strip,
  .discharge-search-strip,
  .bed-board-filter,
  .bed-status-report-filter,
  .admission-report-filter,
  .admission-report-summary,
  .receipt-report-filter,
  .receipt-report-summary,
  .charge-report-filter,
  .charge-report-summary,
  .current-stock-filter,
  .current-stock-summary,
  .medicine-ledger-filter,
  .medicine-ledger-summary,
  .refer-commission-ledger-filter,
  .refer-commission-ledger-summary,
  .refer-commission-payment-filter,
  .refer-commission-payment-summary,
  .refer-commission-payment-selected-grid,
  .refer-commission-payment-form-grid,
  .refer-commission-report-filter,
  .refer-commission-report-summary,
  .opd-refer-commission-filter,
  .opd-refer-commission-summary,
  .opd-report-filter,
  .opd-report-appointment-filter,
  .opd-report-summary,
  .opd-report-appointment-summary,
  .daily-collection-filter,
  .daily-collection-summary,
  .opd-med-search,
  .opd-med-item-search,
  .opd-med-patient-grid,
  .opd-med-summary,
  .opd-encounter-filter,
  .opd-encounter-previous-search,
  .opd-encounter-item-search,
  .opd-encounter-form-grid,
  .opd-encounter-vitals-grid,
  .opd-encounter-notes-grid,
  .opd-encounter-followup,
  .opd-lab-search,
  .opd-lab-load-strip,
  .opd-lab-head-grid,
  .opd-lab-refer-grid,
  .opd-lab-payment-grid,
  .opd-lab-summary,
  .radiology-booking-search,
  .radiology-booking-load-strip,
  .radiology-booking-head-grid,
  .radiology-booking-summary,
  .radiology-billing-search,
  .radiology-billing-load-strip,
  .radiology-billing-head-grid,
  .radiology-billing-summary,
  .final-bill-report-filter,
  .final-bill-report-summary,
  .discharge-report-filter,
  .discharge-report-summary,
  .transaction-search,
  .transaction-filter,
  .patient-ledger-filter,
  .transaction-totals,
  .doctor-visit-summary,
  .dialysis-summary,
  .doctor-round-filter,
  .doctor-round-summary,
  .doctor-round-form-grid,
  .doctor-round-notes-grid,
  .icu-admission-summary,
  .icu-admission-list-summary,
  .icu-admission-form-grid,
  .icu-admission-note-grid,
  .icu-admission-filter,
  .icu-monitoring-summary,
  .icu-monitoring-form-grid,
  .icu-ventilator-summary,
  .icu-ventilator-form-grid,
  .icu-ventilator-note-grid,
  .icu-billing-summary,
  .icu-billing-generate-form,
  .icu-billing-form-grid,
  .approval-search,
  .approval-patient-search,
  .approval-totals,
  .approval-form-grid,
  .approval-party-grid,
  .approval-claim-grid,
  .claim-doc-search,
  .claim-doc-totals,
  .claim-doc-approval-grid,
  .claim-doc-detail-grid,
  .settlement-search,
  .settlement-totals,
  .settlement-head-grid,
  .settlement-approval-grid,
  .settlement-amount-grid,
  .package-mapping-search,
  .package-mapping-totals,
  .package-mapping-head-grid,
  .package-mapping-party-grid,
  .package-mapping-rate-grid,
  .purchase-entry-search,
  .purchase-entry-totals,
  .purchase-entry-summary,
  .purchase-entry-head-grid,
  .batch-stock-item-search,
  .batch-stock-form-grid,
  .batch-stock-post,
  .batch-stock-totals,
  .deduction-report-filter,
  .deduction-report-summary,
  .pfesi-report-filter,
  .pfesi-report-summary,
  .attendance-entry-form-grid,
  .attendance-entry-search,
  .duty-roster-form-grid,
  .duty-roster-search,
  .leave-application-form-grid,
  .leave-application-search,
  .leave-application-summary,
  .leave-approval-detail-grid,
  .leave-approval-search,
  .leave-approval-summary,
  .leave-approval-balance,
  .leave-type-form-grid,
  .leave-type-toggle-grid,
  .leave-type-search,
  .leave-type-summary,
  .hr-department-form-grid,
  .hr-department-toggle,
  .hr-department-search,
  .hr-department-summary,
  .hr-designation-form-grid,
  .hr-designation-toggle,
  .hr-designation-search,
  .hr-designation-summary,
  .hr-shift-form-grid,
  .hr-shift-toggle-grid,
  .hr-shift-search,
  .hr-shift-summary,
  .hr-holiday-form-grid,
  .hr-holiday-search,
  .hr-holiday-summary,
  .hr-employee-form-grid,
  .hr-employee-toggle-grid,
  .hr-employee-search,
  .hr-employee-summary,
  .attendance-register-filter,
  .attendance-register-summary,
  .monthly-attendance-filter,
  .monthly-attendance-summary,
  .daily-attendance-filter,
  .daily-attendance-summary,
  .employee-list-report-filter,
  .employee-list-report-summary,
  .payroll-process-settings-grid,
  .payroll-process-summary,
  .salary-slip-filter,
  .payroll-report-filter,
  .payroll-report-summary,
  .advance-entry-form-grid,
  .advance-entry-search,
  .advance-entry-summary,
  .loan-entry-form-grid,
  .loan-entry-search,
  .loan-entry-summary,
  .emergency-registration-form-grid,
  .emergency-registration-search,
  .emergency-registration-summary,
  .emergency-slip-grid,
  .emergency-triage-form-grid,
  .emergency-triage-search,
  .emergency-triage-selected,
  .emergency-triage-summary,
  .emergency-treatment-form-grid,
  .emergency-treatment-search,
  .emergency-treatment-selected,
  .emergency-treatment-summary,
  .emergency-billing-form-grid,
  .emergency-billing-search,
  .emergency-billing-selected,
  .emergency-billing-amounts,
  .emergency-billing-summary,
  .emergency-billing-print-summary,
  .admission-emergency-form-grid,
  .admission-emergency-search,
  .admission-emergency-selected,
  .admission-emergency-summary,
  .abdm-care-form-grid,
  .abdm-care-patient-search,
  .abdm-care-search,
  .abdm-care-summary,
  .abdm-consent-form-grid,
  .abdm-consent-patient-search,
  .abdm-consent-search,
  .abdm-consent-summary,
  .abdm-share-form-grid,
  .abdm-share-care-search,
  .abdm-share-search,
  .abdm-share-summary,
  .abdm-settings-form-grid,
  .abdm-settings-summary,
  .abha-link-form-grid,
  .abha-link-patient-search,
  .abha-link-search,
  .abha-link-summary,
  .hospital-payment-form-grid,
  .hospital-payment-search,
  .hospital-payment-summary,
  .contra-voucher-form-grid,
  .contra-voucher-search,
  .contra-voucher-summary,
  .journal-voucher-head-grid,
  .journal-voucher-search,
  .journal-voucher-summary,
  .journal-voucher-list-summary,
  .ledger-master-form-grid,
  .ledger-master-search,
  .ledger-master-summary,
  .cash-book-filter,
  .cash-book-summary,
  .bank-book-filter,
  .bank-book-summary,
  .receipt-payment-filter,
  .receipt-payment-summary,
  .menu-master-search,
  .menu-master-summary,
  .menu-master-form-grid,
  .form-grid {
    grid-template-columns: 1fr;
  }

  .admission-report-query,
  .receipt-report-query,
  .charge-report-query,
  .daily-collection-query,
  .final-bill-report-query,
  .discharge-report-query,
  .attendance-register-query,
  .monthly-attendance-query,
  .daily-attendance-query,
  .employee-list-report-query,
  .payroll-report-query,
  .advance-entry-search-text,
  .loan-entry-search-text,
  .emergency-registration-search-text,
  .emergency-triage-search-text,
  .emergency-treatment-search-text,
  .emergency-billing-search-text,
  .admission-emergency-search-text,
  .abdm-care-search-text,
  .abdm-consent-search-text,
  .abdm-share-search-text,
  .abha-link-search-text,
  .hospital-payment-search-text,
  .contra-voucher-search-text,
  .journal-voucher-search-text,
  .ledger-master-search-text {
    grid-column: span 1;
  }

  .menu-master-search-text {
    grid-column: span 1;
  }

  .salary-slip-info-grid,
  .salary-slip-metric-grid,
  .salary-slip-salary-grid {
    grid-template-columns: 1fr;
  }

  .attendance-entry-form-grid .wide {
    grid-column: span 1;
  }

  .duty-roster-form-grid .wide {
    grid-column: span 1;
  }

  .leave-application-form-grid .wide {
    grid-column: span 1;
  }

  .leave-approval-detail-grid .wide {
    grid-column: span 1;
  }

  .leave-type-form-grid .wide {
    grid-column: span 1;
  }

  .hr-department-form-grid .wide {
    grid-column: span 1;
  }

  .hr-designation-form-grid .wide {
    grid-column: span 1;
  }

  .hr-shift-form-grid .wide {
    grid-column: span 1;
  }

  .hr-holiday-form-grid .wide {
    grid-column: span 1;
  }

  .hr-employee-form-grid .wide {
    grid-column: span 1;
  }

  .payroll-process-settings-grid .wide {
    grid-column: span 1;
  }

  .advance-entry-form-grid .wide {
    grid-column: span 1;
  }

  .loan-entry-form-grid .wide {
    grid-column: span 1;
  }

  .emergency-registration-form-grid .wide,
  .emergency-slip-grid .wide,
  .emergency-triage-form-grid .wide,
  .emergency-triage-selected .wide,
  .emergency-treatment-form-grid .wide,
  .emergency-treatment-selected .wide,
  .emergency-billing-form-grid .wide,
  .emergency-billing-selected .wide,
  .admission-emergency-form-grid .wide,
  .admission-emergency-selected .wide,
  .abdm-care-form-grid .wide,
  .abdm-consent-form-grid .wide,
  .abdm-share-form-grid .wide,
  .abdm-settings-form-grid .wide,
  .abha-link-form-grid .wide,
  .hospital-payment-form-grid .wide,
  .contra-voucher-form-grid .wide {
    grid-column: span 1;
  }

  .abdm-care-ref-row,
  .abdm-consent-request-row,
  .abdm-consent-hi-types,
  .abdm-settings-secret-row {
    grid-template-columns: 1fr;
  }

  .admission-report-actions,
  .receipt-report-actions,
  .charge-report-actions,
  .daily-collection-actions,
  .final-bill-report-actions,
  .discharge-report-actions,
  .attendance-entry-actions,
  .attendance-entry-delete-form,
  .attendance-entry-search-actions,
  .duty-roster-actions,
  .duty-roster-delete-form,
  .duty-roster-search-actions,
  .leave-application-actions,
  .leave-application-delete-form,
  .leave-application-search-actions,
  .leave-approval-actions,
  .leave-approval-search-actions,
  .leave-type-actions,
  .leave-type-delete-form,
  .leave-type-search-actions,
  .hr-department-actions,
  .hr-department-delete-form,
  .hr-department-search-actions,
  .hr-designation-actions,
  .hr-designation-delete-form,
  .hr-designation-search-actions,
  .hr-shift-actions,
  .hr-shift-delete-form,
  .hr-shift-search-actions,
  .hr-holiday-actions,
  .hr-holiday-delete-form,
  .hr-holiday-search-actions,
  .hr-employee-actions,
  .hr-employee-delete-form,
  .hr-employee-search-actions,
  .attendance-register-actions,
  .monthly-attendance-actions,
  .daily-attendance-actions,
  .employee-list-report-actions,
  .payroll-process-actions,
  .salary-slip-actions,
  .payroll-report-actions,
  .advance-entry-actions,
  .advance-entry-delete-form,
  .advance-entry-search-actions,
  .loan-entry-actions,
  .loan-entry-delete-form,
  .loan-entry-search-actions,
  .emergency-registration-actions,
  .emergency-registration-delete-form,
  .emergency-registration-search-actions,
  .emergency-triage-actions,
  .emergency-triage-delete-form,
  .emergency-triage-search-actions,
  .emergency-treatment-actions,
  .emergency-treatment-delete-form,
  .emergency-treatment-search-actions,
  .emergency-billing-actions,
  .emergency-billing-delete-form,
  .emergency-billing-search-actions,
  .emergency-billing-line-head div,
  .admission-emergency-actions,
  .admission-emergency-cancel-form,
  .admission-emergency-search-actions,
  .abdm-care-actions,
  .abdm-care-delete-form,
  .abdm-care-search-actions,
  .abdm-consent-actions,
  .abdm-consent-delete-form,
  .abdm-consent-search-actions,
  .abdm-share-actions,
  .abdm-share-delete-form,
  .abdm-share-search-actions,
  .abdm-settings-actions,
  .abdm-settings-delete-form,
  .abha-link-actions,
  .abha-link-delete-form,
  .abha-link-search-actions,
  .hospital-payment-actions,
  .hospital-payment-cancel-form,
  .hospital-payment-search-actions,
  .contra-voucher-actions,
  .contra-voucher-delete-form,
  .contra-voucher-search-actions,
  .ledger-master-actions,
  .ledger-master-inactive-form,
  .ledger-master-search-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .menu-master-actions,
  .menu-master-delete-form,
  .menu-master-search-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .emergency-registration-delete-form {
    margin-left: 0;
  }

  .emergency-triage-delete-form {
    margin-left: 0;
  }

  .emergency-treatment-delete-form {
    margin-left: 0;
  }

  .emergency-billing-delete-form {
    margin-left: 0;
  }

  .admission-emergency-cancel-form {
    margin-left: 0;
  }

  .abdm-care-delete-form {
    margin-left: 0;
  }

  .abdm-consent-delete-form {
    margin-left: 0;
  }

  .abdm-share-delete-form {
    margin-left: 0;
  }

  .abdm-settings-delete-form {
    margin-left: 0;
  }

  .abha-link-delete-form {
    margin-left: 0;
  }

  .hospital-payment-cancel-form {
    margin-left: 0;
  }

  .contra-voucher-delete-form {
    margin-left: 0;
  }

  .ledger-master-inactive-form {
    margin-left: 0;
  }

  .menu-master-delete-form {
    margin-left: 0;
  }

  .emergency-slip-signatures {
    grid-template-columns: 1fr;
  }

  .transaction-patient-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .transaction-patient-head div:last-child {
    text-align: left;
  }

  .final-bill-banner,
  .final-totals-strip {
    grid-template-columns: 1fr;
  }

  .form-field.wide {
    grid-column: span 1;
  }

  .icu-admission-note-grid .wide:last-child {
    grid-column: span 1;
  }

  .icu-monitoring-notes {
    grid-column: span 1;
  }

  .icu-ventilator-procedure-notes {
    grid-column: span 1;
  }

  .refer-commission-payment-actions,
  .refer-commission-payment-form-actions,
  .refer-commission-report-actions,
  .opd-refer-commission-actions,
  .opd-report-actions,
  .opd-encounter-actions,
  .opd-lab-actions,
  .radiology-booking-actions,
  .radiology-billing-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .icu-billing-remarks {
    grid-column: span 1;
  }

  .approval-remarks {
    grid-column: span 1;
  }

  .claim-doc-approval-field,
  .claim-doc-file-field,
  .claim-doc-remarks {
    grid-column: span 1;
  }

  .settlement-approval-field,
  .settlement-deduction-reason,
  .settlement-remarks {
    grid-column: span 1;
  }

  .package-mapping-package-field,
  .package-mapping-package-name,
  .package-mapping-remarks {
    grid-column: span 1;
  }

  .purchase-entry-supplier-field,
  .purchase-entry-remarks,
  .batch-stock-remarks,
  .pharma-purchase-supplier-field,
  .pharma-purchase-remarks {
    grid-column: span 1;
  }

  .approval-master-title {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.5rem;
  }

  .claim-doc-master-title {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.5rem;
  }

  .settlement-master-title {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.5rem;
  }

  .package-mapping-master-title {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.5rem;
  }

  .purchase-entry-master-title {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.5rem;
  }

  .opd-med-master-title {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.5rem;
  }

  .deduction-report-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .pfesi-report-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .discharge-note-grid .wide:last-child {
    grid-column: span 1;
  }

  .bed-transfer-summary {
    grid-template-columns: 1fr;
  }

  .bed-board-summary,
  .bed-status-summary,
  .admission-report-summary,
  .receipt-report-summary,
  .charge-report-summary,
  .final-bill-report-summary,
  .discharge-report-summary,
  .transaction-totals,
  .bed-card-details {
    grid-template-columns: 1fr;
  }
}

.ot-case-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(420px, 0.9fr) minmax(0, 1.7fr);
}

.ot-case-admissions,
.ot-case-workspace {
  padding: 1rem;
}

.ot-case-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.ot-case-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.ot-case-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.ot-case-search {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-bottom: 1rem;
}

.ot-case-search-actions,
.ot-case-actions,
.ot-case-delete-form {
  display: inline-flex;
  gap: 0.5rem;
}

.ot-case-actions,
.ot-case-delete-form {
  margin-top: 0.85rem;
}

.ot-case-delete-form {
  margin-left: 0.5rem;
}

.ot-case-admission-wrap {
  max-height: 72vh;
}

.ot-case-admission-table {
  min-width: 840px;
}

.ot-case-admission-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.18rem;
}

.ot-case-selected-row td {
  box-shadow: inset 3px 0 0 #2d6cdf;
}

.ot-case-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  margin: 1rem 0;
}

.ot-case-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.ot-case-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.ot-case-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.ot-case-form {
  display: grid;
  gap: 1rem;
}

.ot-case-form-grid,
.ot-case-check-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ot-case-form-grid .wide,
.ot-case-check-grid .wide {
  grid-column: span 4;
}

.ot-case-readonly {
  background: #f8fafc;
  font-weight: 800;
}

.ot-case-next-visit-check {
  margin: 1.45rem 0 0;
}

.ot-case-rx-wrap {
  max-height: 34vh;
}

.ot-case-rx-table {
  min-width: 1080px;
}

.ot-case-rx-table th:nth-child(2),
.ot-case-rx-table td:nth-child(2) {
  min-width: 220px;
}

.ot-case-record-wrap {
  max-height: 38vh;
}

.ot-case-record-table {
  min-width: 900px;
}

.ot-case-print {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 10px 28px rgb(20 33 61 / 8%);
  margin: 0 auto;
  max-width: 980px;
  padding: 1.5rem;
}

.ot-case-print-head {
  border-bottom: 2px solid #14213d;
  margin-bottom: 1rem;
  padding-bottom: 0.85rem;
  text-align: center;
}

.ot-case-print-head h2 {
  color: #14213d;
  font-size: 1.35rem;
  font-weight: 900;
  margin: 0 0 0.35rem;
}

.ot-case-print-head strong {
  color: #304057;
  font-size: 0.92rem;
  text-transform: uppercase;
}

.ot-case-print h3 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 900;
  margin: 1.25rem 0 0.75rem;
}

.ot-case-print-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ot-case-print-grid div {
  border-bottom: 1px solid #d8dee9;
  display: grid;
  gap: 0.2rem;
  min-height: 3.1rem;
  padding-bottom: 0.55rem;
}

.ot-case-print-grid .wide {
  grid-column: span 2;
}

.ot-case-print-grid span {
  color: #67748a;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.ot-case-print-grid strong {
  color: #14213d;
  font-size: 0.95rem;
  overflow-wrap: anywhere;
}

.ot-case-print-rx-table {
  font-size: 0.86rem;
}

.ot-case-print-rx-table thead th {
  background: #14213d;
  color: #fff;
}

.ot-case-print-signature {
  display: flex;
  justify-content: flex-end;
  margin-top: 3.5rem;
}

.ot-case-print-signature span {
  border-top: 1px solid #14213d;
  color: #304057;
  font-size: 0.85rem;
  font-weight: 800;
  min-width: 220px;
  padding-top: 0.45rem;
  text-align: center;
}

@media (max-width: 980px) {
  .ot-case-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .ot-case-search,
  .ot-case-summary,
  .ot-case-form-grid,
  .ot-case-check-grid,
  .ot-case-print-grid {
    grid-template-columns: 1fr;
  }

  .ot-case-search-text,
  .ot-case-form-grid .wide,
  .ot-case-check-grid .wide,
  .ot-case-print-grid .wide {
    grid-column: span 1;
  }

  .ot-case-search-actions,
  .ot-case-actions,
  .ot-case-delete-form {
    align-items: stretch;
    flex-direction: column;
  }

  .ot-case-delete-form {
    margin-left: 0;
  }
}

@media print {
  .ot-case-admission-wrap,
  .ot-case-rx-wrap,
  .ot-case-record-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .ot-case-admission-table,
  .ot-case-rx-table,
  .ot-case-record-table,
  .ot-case-print-rx-table {
    font-size: 0.5rem;
    min-width: 0;
  }

  .ot-case-print {
    border: 0;
    box-shadow: none;
    max-width: none;
    padding: 0;
  }
}

.nursing-notes-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(420px, 0.9fr) minmax(0, 1.75fr);
}

.nursing-notes-admissions,
.nursing-notes-workspace {
  padding: 1rem;
}

.nursing-notes-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.nursing-notes-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.nursing-notes-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.nursing-notes-filter {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) 150px 150px auto;
  margin-bottom: 1rem;
}

.nursing-notes-filter-actions,
.nursing-notes-actions,
.nursing-notes-delete-form {
  display: inline-flex;
  gap: 0.5rem;
}

.nursing-notes-admission-wrap {
  max-height: 72vh;
}

.nursing-notes-admission-table {
  min-width: 860px;
}

.nursing-notes-admission-table td span,
.nursing-notes-history-table td span,
.nursing-activity-history-table td span,
.nursing-notes-print-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.18rem;
}

.nursing-notes-selected-row td {
  box-shadow: inset 3px 0 0 #2d6cdf;
}

.nursing-notes-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  margin: 1rem 0;
}

.nursing-notes-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.nursing-notes-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.nursing-notes-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.nursing-notes-work-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.nursing-notes-column,
.nursing-notes-form {
  display: grid;
  gap: 1rem;
}

.nursing-note-form-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.nursing-activity-form-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.nursing-note-form-grid .wide,
.nursing-activity-form-grid .wide {
  grid-column: span 3;
}

.nursing-notes-delete-form {
  justify-content: flex-end;
}

.nursing-notes-history-wrap,
.nursing-activity-history-wrap {
  max-height: 44vh;
}

.nursing-notes-history-table,
.nursing-activity-history-table {
  min-width: 980px;
}

.nursing-notes-print {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  box-shadow: 0 10px 28px rgb(20 33 61 / 8%);
  margin: 0 auto;
  max-width: 1100px;
  padding: 1.5rem;
}

.nursing-notes-print-head {
  border-bottom: 2px solid #14213d;
  margin-bottom: 1rem;
  padding-bottom: 0.85rem;
  text-align: center;
}

.nursing-notes-print-head h2 {
  color: #14213d;
  font-size: 1.35rem;
  font-weight: 900;
  margin: 0 0 0.35rem;
}

.nursing-notes-print-head strong {
  color: #304057;
  font-size: 0.92rem;
  text-transform: uppercase;
}

.nursing-notes-print h3 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 900;
  margin: 1.25rem 0 0.75rem;
}

.nursing-notes-print-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nursing-notes-print-grid div {
  border-bottom: 1px solid #d8dee9;
  display: grid;
  gap: 0.2rem;
  min-height: 3.1rem;
  padding-bottom: 0.55rem;
}

.nursing-notes-print-grid .wide {
  grid-column: span 2;
}

.nursing-notes-print-grid span {
  color: #67748a;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.nursing-notes-print-grid strong {
  color: #14213d;
  font-size: 0.95rem;
  overflow-wrap: anywhere;
}

.nursing-notes-print-table {
  font-size: 0.82rem;
}

.nursing-notes-print-table thead th {
  background: #14213d;
  color: #fff;
}

.nursing-notes-print-signature {
  display: flex;
  justify-content: flex-end;
  margin-top: 3.5rem;
}

.nursing-notes-print-signature span {
  border-top: 1px solid #14213d;
  color: #304057;
  font-size: 0.85rem;
  font-weight: 800;
  min-width: 220px;
  padding-top: 0.45rem;
  text-align: center;
}

@media (max-width: 1180px) {
  .nursing-notes-work-grid,
  .nursing-notes-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .nursing-notes-filter,
  .nursing-notes-summary,
  .nursing-note-form-grid,
  .nursing-activity-form-grid,
  .nursing-notes-print-grid {
    grid-template-columns: 1fr;
  }

  .nursing-notes-search-text,
  .nursing-note-form-grid .wide,
  .nursing-activity-form-grid .wide,
  .nursing-notes-print-grid .wide {
    grid-column: span 1;
  }

  .nursing-notes-filter-actions,
  .nursing-notes-actions,
  .nursing-notes-delete-form {
    align-items: stretch;
    flex-direction: column;
  }
}

@media print {
  .nursing-notes-layout {
    display: block;
  }

  .nursing-notes-admissions,
  .nursing-notes-filter,
  .nursing-notes-summary,
  .nursing-notes-work-grid,
  .nursing-notes-delete-form {
    display: none;
  }

  .nursing-notes-history-wrap,
  .nursing-activity-history-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .nursing-notes-history-table,
  .nursing-activity-history-table,
  .nursing-notes-print-table {
    font-size: 0.58rem;
    min-width: 0;
  }

  .nursing-notes-print {
    border: 0;
    box-shadow: none;
    max-width: none;
    padding: 0;
  }
}

.birth-register-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(520px, 1.2fr) minmax(360px, 0.8fr);
}

.birth-register-list,
.birth-register-editor {
  padding: 1rem;
}

.birth-register-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.birth-register-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.birth-register-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.birth-register-filter {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) 150px 150px auto;
  margin-bottom: 1rem;
}

.birth-register-filter-actions,
.birth-register-actions,
.birth-register-delete-form {
  display: inline-flex;
  gap: 0.5rem;
}

.birth-register-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(120px, 1fr));
  margin-bottom: 1rem;
}

.birth-register-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.birth-register-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.birth-register-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.birth-register-table-wrap {
  max-height: 68vh;
}

.birth-register-table {
  min-width: 980px;
}

.birth-register-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.18rem;
}

.birth-register-selected-row td {
  box-shadow: inset 3px 0 0 #2d6cdf;
}

.birth-register-form-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.birth-register-form-grid .wide {
  grid-column: span 3;
}

.birth-register-delete-form {
  justify-content: flex-end;
  margin-top: 0.75rem;
}

.birth-certificate {
  background: #fff;
  border: 1px solid #14213d;
  box-shadow: 0 10px 28px rgb(20 33 61 / 8%);
  margin: 0 auto;
  max-width: 900px;
  padding: 1.5rem;
}

.birth-certificate-head {
  align-items: center;
  border-bottom: 2px solid #14213d;
  display: grid;
  gap: 1rem;
  grid-template-columns: 90px minmax(0, 1fr) 110px;
  padding-bottom: 1rem;
  text-align: center;
}

.birth-certificate-logo,
.birth-certificate-qr {
  align-items: center;
  border: 1px solid #14213d;
  color: #14213d;
  display: flex;
  flex-direction: column;
  font-weight: 900;
  justify-content: center;
  min-height: 90px;
  overflow-wrap: anywhere;
  padding: 0.45rem;
}

.birth-certificate-logo {
  font-size: 2rem;
}

.birth-certificate-qr span {
  color: #67748a;
  font-size: 0.62rem;
  font-weight: 800;
}

.birth-certificate-head h2 {
  color: #14213d;
  font-size: 1.45rem;
  font-weight: 900;
  margin: 0 0 0.35rem;
}

.birth-certificate-head p {
  color: #304057;
  font-size: 0.86rem;
  font-weight: 700;
  margin: 0.1rem 0;
}

.birth-certificate h3 {
  color: #14213d;
  font-size: 1.4rem;
  font-weight: 900;
  margin: 1.25rem 0;
  text-align: center;
  text-decoration: underline;
}

.birth-certificate-meta,
.birth-certificate-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.birth-certificate-section {
  margin-top: 1rem;
}

.birth-certificate-section h4 {
  background: #eef3f8;
  border: 1px solid #d8dee9;
  color: #14213d;
  font-size: 0.92rem;
  font-weight: 900;
  margin: 0 0 0.75rem;
  padding: 0.45rem 0.65rem;
}

.birth-certificate-meta div,
.birth-certificate-grid div {
  border-bottom: 1px solid #d8dee9;
  display: grid;
  gap: 0.2rem;
  min-height: 3rem;
  padding-bottom: 0.55rem;
}

.birth-certificate-grid .wide {
  grid-column: span 2;
}

.birth-certificate span {
  color: #67748a;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.birth-certificate strong {
  color: #14213d;
  font-size: 0.96rem;
  overflow-wrap: anywhere;
}

.birth-certificate-footer {
  display: flex;
  justify-content: space-between;
  margin-top: 4rem;
}

.birth-certificate-footer span {
  border-top: 1px solid #14213d;
  color: #304057;
  min-width: 210px;
  padding-top: 0.45rem;
  text-align: center;
}

.birth-certificate-note {
  color: #67748a;
  font-size: 0.78rem;
  font-weight: 700;
  margin: 2rem 0 0;
  text-align: center;
}

@media (max-width: 1120px) {
  .birth-register-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .birth-register-filter,
  .birth-register-summary,
  .birth-register-form-grid,
  .birth-certificate-head,
  .birth-certificate-meta,
  .birth-certificate-grid {
    grid-template-columns: 1fr;
  }

  .birth-register-search,
  .birth-register-form-grid .wide,
  .birth-certificate-grid .wide {
    grid-column: span 1;
  }

  .birth-register-filter-actions,
  .birth-register-actions,
  .birth-register-delete-form {
    align-items: stretch;
    flex-direction: column;
  }

  .birth-certificate-footer {
    display: grid;
    gap: 2.5rem;
  }
}

@media print {
  .birth-register-list,
  .birth-register-filter,
  .birth-register-summary,
  .birth-register-delete-form {
    display: none;
  }

  .birth-register-layout {
    display: block;
  }

  .birth-register-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .birth-register-table {
    font-size: 0.62rem;
    min-width: 0;
  }

  .birth-certificate {
    border: 1px solid #14213d;
    box-shadow: none;
    max-width: none;
    min-height: 94vh;
    padding: 1rem;
  }
}

.death-register-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(520px, 1.2fr) minmax(360px, 0.8fr);
}

.death-register-list,
.death-register-editor {
  padding: 1rem;
}

.death-register-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.death-register-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.death-register-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.death-register-filter {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) 150px 150px auto;
  margin-bottom: 1rem;
}

.death-register-filter-actions,
.death-register-actions,
.death-register-delete-form {
  display: inline-flex;
  gap: 0.5rem;
}

.death-register-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(120px, 1fr));
  margin-bottom: 1rem;
}

.death-register-summary div {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.death-register-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 700;
}

.death-register-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.death-register-table-wrap {
  max-height: 68vh;
}

.death-register-table {
  min-width: 980px;
}

.death-register-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.18rem;
}

.death-register-selected-row td {
  box-shadow: inset 3px 0 0 #2d6cdf;
}

.death-register-form-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.death-register-form-grid .wide {
  grid-column: span 3;
}

.death-register-check {
  min-height: 38px;
}

.death-register-delete-form {
  justify-content: flex-end;
  margin-top: 0.75rem;
}

.death-certificate {
  background: #fff;
  border: 1px solid #14213d;
  box-shadow: 0 10px 28px rgb(20 33 61 / 8%);
  margin: 0 auto;
  max-width: 900px;
  padding: 1.5rem;
}

.death-certificate-head {
  align-items: center;
  border-bottom: 2px solid #14213d;
  display: grid;
  gap: 1rem;
  grid-template-columns: 90px minmax(0, 1fr) 110px;
  padding-bottom: 1rem;
  text-align: center;
}

.death-certificate-logo,
.death-certificate-qr {
  align-items: center;
  border: 1px solid #14213d;
  color: #14213d;
  display: flex;
  flex-direction: column;
  font-weight: 900;
  justify-content: center;
  min-height: 90px;
  overflow-wrap: anywhere;
  padding: 0.45rem;
}

.death-certificate-logo {
  font-size: 2rem;
}

.death-certificate-qr span {
  color: #67748a;
  font-size: 0.62rem;
  font-weight: 800;
}

.death-certificate-head h2 {
  color: #14213d;
  font-size: 1.45rem;
  font-weight: 900;
  margin: 0 0 0.35rem;
}

.death-certificate-head p {
  color: #304057;
  font-size: 0.86rem;
  font-weight: 700;
  margin: 0.1rem 0;
}

.death-certificate h3 {
  color: #14213d;
  font-size: 1.4rem;
  font-weight: 900;
  margin: 1.25rem 0;
  text-align: center;
  text-decoration: underline;
}

.death-certificate-meta,
.death-certificate-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.death-certificate-section {
  margin-top: 1rem;
}

.death-certificate-section h4 {
  background: #eef3f8;
  border: 1px solid #d8dee9;
  color: #14213d;
  font-size: 0.92rem;
  font-weight: 900;
  margin: 0 0 0.75rem;
  padding: 0.45rem 0.65rem;
}

.death-certificate-meta div,
.death-certificate-grid div {
  border-bottom: 1px solid #d8dee9;
  display: grid;
  gap: 0.2rem;
  min-height: 3rem;
  padding-bottom: 0.55rem;
}

.death-certificate-grid .wide {
  grid-column: span 2;
}

.death-certificate span {
  color: #67748a;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.death-certificate strong {
  color: #14213d;
  font-size: 0.96rem;
  overflow-wrap: anywhere;
}

.death-certificate-footer {
  display: flex;
  justify-content: space-between;
  margin-top: 4rem;
}

.death-certificate-footer span {
  border-top: 1px solid #14213d;
  color: #304057;
  min-width: 210px;
  padding-top: 0.45rem;
  text-align: center;
}

.death-certificate-note {
  color: #67748a;
  font-size: 0.78rem;
  font-weight: 700;
  margin: 2rem 0 0;
  text-align: center;
}

@media (max-width: 1120px) {
  .death-register-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .death-register-filter,
  .death-register-summary,
  .death-register-form-grid,
  .death-certificate-head,
  .death-certificate-meta,
  .death-certificate-grid {
    grid-template-columns: 1fr;
  }

  .death-register-search,
  .death-register-form-grid .wide,
  .death-certificate-grid .wide {
    grid-column: span 1;
  }

  .death-register-filter-actions,
  .death-register-actions,
  .death-register-delete-form {
    align-items: stretch;
    flex-direction: column;
  }

  .death-certificate-footer {
    display: grid;
    gap: 2.5rem;
  }
}

@media print {
  .death-register-list,
  .death-register-filter,
  .death-register-summary,
  .death-register-delete-form {
    display: none;
  }

  .death-register-layout {
    display: block;
  }

  .death-register-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .death-register-table {
    font-size: 0.62rem;
    min-width: 0;
  }

  .death-certificate {
    border: 1px solid #14213d;
    box-shadow: none;
    max-width: none;
    min-height: 94vh;
    padding: 1rem;
  }
}

.lab-profile-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(520px, 1fr) minmax(520px, 1fr);
}

.lab-profile-directory,
.lab-profile-editor {
  padding: 1rem;
}

.lab-profile-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.lab-profile-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.lab-profile-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.lab-profile-filter {
  align-items: center;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-bottom: 1rem;
}

.lab-profile-table-wrap,
.lab-profile-test-wrap,
.lab-profile-item-wrap {
  border: 1px solid #e5e9f0;
  border-radius: 6px;
}

.lab-profile-table-wrap {
  max-height: 36vh;
}

.lab-profile-test-head {
  margin-top: 1rem;
}

.lab-profile-test-wrap {
  max-height: 42vh;
}

.lab-profile-item-wrap {
  max-height: 54vh;
}

.lab-profile-table {
  min-width: 820px;
}

.lab-profile-test-table,
.lab-profile-item-table {
  min-width: 720px;
}

.lab-profile-table td span,
.lab-profile-test-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.18rem;
}

.lab-profile-selected-row td,
.lab-profile-item-selected td {
  box-shadow: inset 3px 0 0 #2d6cdf;
}

.lab-profile-form-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.lab-profile-form-grid .wide {
  grid-column: span 2;
}

.lab-profile-active {
  align-items: center;
  display: flex;
  gap: 0.45rem;
  min-height: 38px;
}

.lab-profile-item-title {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.lab-profile-item-title .lab-profile-panel-head {
  flex: 1;
  margin-bottom: 0.75rem;
}

.lab-profile-item-actions,
.lab-profile-actions,
.lab-profile-delete-form {
  display: inline-flex;
  gap: 0.5rem;
}

.lab-profile-actions {
  justify-content: flex-end;
  margin-top: 0.85rem;
}

.lab-profile-delete-form {
  justify-content: flex-end;
  margin-top: 0.75rem;
}

.lab-profile-item-table td {
  vertical-align: middle;
}

.lab-profile-item-table td:first-child {
  color: #67748a;
  font-weight: 800;
  width: 80px;
}

@media (max-width: 1180px) {
  .lab-profile-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .lab-profile-filter,
  .lab-profile-form-grid {
    grid-template-columns: 1fr;
  }

  .lab-profile-form-grid .wide {
    grid-column: span 1;
  }

  .lab-profile-item-title,
  .lab-profile-actions,
  .lab-profile-delete-form {
    align-items: stretch;
    flex-direction: column;
  }

  .lab-profile-item-actions {
    align-self: stretch;
  }
}

@media print {
  .lab-profile-directory,
  .lab-profile-delete-form {
    display: none;
  }

  .lab-profile-layout {
    display: block;
  }

  .lab-profile-item-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .lab-profile-item-table {
    font-size: 0.7rem;
    min-width: 0;
  }
}

.case-sheet-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(560px, 1.1fr) minmax(420px, 0.9fr);
}

.case-sheet-lists,
.case-sheet-editor {
  padding: 1rem;
}

.case-sheet-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.case-sheet-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.case-sheet-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.case-sheet-filter {
  align-items: center;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-bottom: 1rem;
}

.case-sheet-mrd-wrap,
.case-sheet-storage-wrap {
  border: 1px solid #e5e9f0;
  border-radius: 6px;
}

.case-sheet-mrd-wrap {
  max-height: 36vh;
}

.case-sheet-storage-wrap {
  max-height: 46vh;
}

.case-sheet-storage-head {
  margin-top: 1rem;
}

.case-sheet-mrd-table {
  min-width: 840px;
}

.case-sheet-storage-table {
  min-width: 980px;
}

.case-sheet-mrd-table td span,
.case-sheet-storage-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.18rem;
}

.case-sheet-selected-row td {
  box-shadow: inset 3px 0 0 #2d6cdf;
}

.case-sheet-patient-grid,
.case-sheet-form-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.case-sheet-patient-grid .wide,
.case-sheet-form-grid .wide {
  grid-column: span 2;
}

.case-sheet-actions,
.case-sheet-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  justify-content: flex-end;
}

.case-sheet-actions {
  margin-top: 0.85rem;
}

.case-sheet-delete-form {
  margin-top: 0.75rem;
  width: 100%;
}

@media (max-width: 1180px) {
  .case-sheet-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .case-sheet-filter,
  .case-sheet-patient-grid,
  .case-sheet-form-grid {
    grid-template-columns: 1fr;
  }

  .case-sheet-patient-grid .wide,
  .case-sheet-form-grid .wide {
    grid-column: span 1;
  }

  .case-sheet-actions,
  .case-sheet-delete-form {
    align-items: stretch;
    flex-direction: column;
  }
}

@media print {
  .case-sheet-lists,
  .case-sheet-delete-form {
    display: none;
  }

  .case-sheet-layout {
    display: block;
  }
}

.diagnosis-coding-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(600px, 1.15fr) minmax(430px, 0.85fr);
}

.diagnosis-coding-lists,
.diagnosis-coding-editor {
  padding: 1rem;
}

.diagnosis-coding-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.diagnosis-coding-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.diagnosis-coding-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.diagnosis-coding-filter {
  align-items: center;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-bottom: 1rem;
}

.diagnosis-coding-section-head {
  margin-top: 1rem;
}

.diagnosis-coding-mrd-wrap,
.diagnosis-code-wrap,
.patient-diagnosis-wrap {
  border: 1px solid #e5e9f0;
  border-radius: 6px;
}

.diagnosis-coding-mrd-wrap {
  max-height: 27vh;
}

.diagnosis-code-wrap {
  max-height: 30vh;
}

.patient-diagnosis-wrap {
  max-height: 38vh;
}

.diagnosis-coding-mrd-table {
  min-width: 760px;
}

.diagnosis-code-table {
  min-width: 900px;
}

.patient-diagnosis-table {
  min-width: 1020px;
}

.diagnosis-coding-mrd-table td span,
.diagnosis-code-table td span,
.patient-diagnosis-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.18rem;
}

.diagnosis-coding-selected-row td {
  box-shadow: inset 3px 0 0 #2d6cdf;
}

.diagnosis-coding-patient-grid,
.diagnosis-code-form-grid,
.diagnosis-coding-form-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.diagnosis-coding-patient-grid .wide,
.diagnosis-code-form-grid .wide,
.diagnosis-coding-form-grid .wide {
  grid-column: span 2;
}

.diagnosis-coding-actions,
.diagnosis-coding-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  justify-content: flex-end;
}

.diagnosis-coding-actions {
  margin-top: 0.85rem;
}

.diagnosis-coding-delete-form {
  margin-top: 0.75rem;
  width: 100%;
}

@media (max-width: 1180px) {
  .diagnosis-coding-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .diagnosis-coding-filter,
  .diagnosis-coding-patient-grid,
  .diagnosis-code-form-grid,
  .diagnosis-coding-form-grid {
    grid-template-columns: 1fr;
  }

  .diagnosis-coding-patient-grid .wide,
  .diagnosis-code-form-grid .wide,
  .diagnosis-coding-form-grid .wide {
    grid-column: span 1;
  }

  .diagnosis-coding-actions,
  .diagnosis-coding-delete-form {
    align-items: stretch;
    flex-direction: column;
  }
}

@media print {
  .diagnosis-coding-lists,
  .diagnosis-coding-delete-form {
    display: none;
  }

  .diagnosis-coding-layout {
    display: block;
  }
}

.medical-certificate-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(600px, 1.15fr) minmax(440px, 0.85fr);
}

.medical-certificate-lists,
.medical-certificate-editor {
  padding: 1rem;
}

.medical-certificate-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.medical-certificate-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.medical-certificate-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.medical-certificate-filter {
  align-items: center;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-bottom: 1rem;
}

.medical-certificate-section-head {
  margin-top: 1rem;
}

.medical-certificate-mrd-wrap,
.medical-certificate-list-wrap {
  border: 1px solid #e5e9f0;
  border-radius: 6px;
}

.medical-certificate-mrd-wrap {
  max-height: 32vh;
}

.medical-certificate-list-wrap {
  max-height: 52vh;
}

.medical-certificate-mrd-table {
  min-width: 820px;
}

.medical-certificate-list-table {
  min-width: 1080px;
}

.medical-certificate-mrd-table td span,
.medical-certificate-list-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.18rem;
}

.medical-certificate-selected-row td {
  box-shadow: inset 3px 0 0 #2d6cdf;
}

.medical-certificate-patient-grid,
.medical-certificate-form-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.medical-certificate-patient-grid .wide,
.medical-certificate-form-grid .wide {
  grid-column: span 2;
}

.medical-certificate-textarea {
  min-height: 180px;
}

.medical-certificate-actions,
.medical-certificate-cancel-form {
  display: inline-flex;
  gap: 0.5rem;
  justify-content: flex-end;
}

.medical-certificate-actions {
  margin-top: 0.85rem;
}

.medical-certificate-cancel-form {
  margin-top: 0.75rem;
  width: 100%;
}

.medical-certificate-print {
  background: #fff;
  border: 1px solid #14213d;
  box-shadow: 0 10px 28px rgb(20 33 61 / 8%);
  margin: 0 auto;
  max-width: 900px;
  padding: 1.5rem;
}

.medical-certificate-print-head {
  align-items: center;
  border-bottom: 2px solid #14213d;
  display: grid;
  gap: 1rem;
  grid-template-columns: 90px minmax(0, 1fr) 110px;
  padding-bottom: 1rem;
  text-align: center;
}

.medical-certificate-print-logo,
.medical-certificate-print-verify {
  align-items: center;
  border: 1px solid #14213d;
  color: #14213d;
  display: flex;
  flex-direction: column;
  font-weight: 900;
  justify-content: center;
  min-height: 90px;
  overflow-wrap: anywhere;
  padding: 0.45rem;
}

.medical-certificate-print-logo {
  font-size: 2rem;
}

.medical-certificate-print-verify span {
  color: #67748a;
  font-size: 0.62rem;
  font-weight: 800;
}

.medical-certificate-print-head h2 {
  color: #14213d;
  font-size: 1.45rem;
  font-weight: 900;
  margin: 0 0 0.35rem;
}

.medical-certificate-print-head p {
  color: #304057;
  font-size: 0.86rem;
  font-weight: 700;
  margin: 0.1rem 0;
}

.medical-certificate-print h3 {
  color: #14213d;
  font-size: 1.4rem;
  font-weight: 900;
  margin: 1.25rem 0;
  text-align: center;
  text-decoration: underline;
}

.medical-certificate-print-cancelled {
  border: 2px solid #b42318;
  color: #b42318;
  font-size: 1.15rem;
  font-weight: 900;
  margin: 0 auto 1rem;
  max-width: 260px;
  padding: 0.4rem 1rem;
  text-align: center;
}

.medical-certificate-print-meta,
.medical-certificate-print-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.medical-certificate-print-section {
  margin-top: 1rem;
}

.medical-certificate-print-section h4 {
  background: #eef3f8;
  border: 1px solid #d8dee9;
  color: #14213d;
  font-size: 0.92rem;
  font-weight: 900;
  margin: 0 0 0.75rem;
  padding: 0.45rem 0.65rem;
}

.medical-certificate-print-meta div,
.medical-certificate-print-grid div {
  border-bottom: 1px solid #d8dee9;
  display: grid;
  gap: 0.2rem;
  min-height: 3rem;
  padding-bottom: 0.55rem;
}

.medical-certificate-print-grid .wide {
  grid-column: span 2;
}

.medical-certificate-print span {
  color: #67748a;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.medical-certificate-print strong {
  color: #14213d;
  font-size: 0.96rem;
  overflow-wrap: anywhere;
}

.medical-certificate-print-body {
  color: #14213d;
  font-size: 1rem;
  line-height: 1.75;
  margin: 1.5rem 0 0;
  min-height: 220px;
}

.medical-certificate-print-body p {
  margin: 0.35rem 0;
}

.medical-certificate-print-remarks {
  color: #14213d;
  font-weight: 700;
  margin: 0;
}

.medical-certificate-print-footer {
  display: flex;
  justify-content: space-between;
  margin-top: 4rem;
}

.medical-certificate-print-footer span {
  border-top: 1px solid #14213d;
  color: #304057;
  display: grid;
  gap: 0.2rem;
  min-width: 210px;
  padding-top: 0.45rem;
  text-align: center;
  text-transform: none;
}

.medical-certificate-print-footer small {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
}

.medical-certificate-print-note {
  color: #67748a;
  font-size: 0.78rem;
  font-weight: 700;
  margin: 2rem 0 0;
  text-align: center;
}

@media (max-width: 1180px) {
  .medical-certificate-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .medical-certificate-filter,
  .medical-certificate-patient-grid,
  .medical-certificate-form-grid,
  .medical-certificate-print-head,
  .medical-certificate-print-meta,
  .medical-certificate-print-grid {
    grid-template-columns: 1fr;
  }

  .medical-certificate-patient-grid .wide,
  .medical-certificate-form-grid .wide,
  .medical-certificate-print-grid .wide {
    grid-column: span 1;
  }

  .medical-certificate-actions,
  .medical-certificate-cancel-form {
    align-items: stretch;
    flex-direction: column;
  }

  .medical-certificate-print-footer {
    display: grid;
    gap: 2.5rem;
  }
}

@media print {
  .medical-certificate-lists,
  .medical-certificate-cancel-form {
    display: none;
  }

  .medical-certificate-layout {
    display: block;
  }

  .medical-certificate-print {
    border: 1px solid #14213d;
    box-shadow: none;
    max-width: none;
    min-height: 94vh;
    padding: 1rem;
  }
}

.record-retrieval-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(620px, 1.15fr) minmax(430px, 0.85fr);
}

.record-retrieval-lists,
.record-retrieval-editor {
  padding: 1rem;
}

.record-retrieval-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.record-retrieval-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.record-retrieval-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.record-retrieval-filter {
  align-items: center;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-bottom: 1rem;
}

.record-retrieval-section-head {
  margin-top: 1rem;
}

.record-retrieval-mrd-wrap,
.record-retrieval-list-wrap {
  border: 1px solid #e5e9f0;
  border-radius: 6px;
}

.record-retrieval-mrd-wrap {
  max-height: 32vh;
}

.record-retrieval-list-wrap {
  max-height: 54vh;
}

.record-retrieval-mrd-table {
  min-width: 840px;
}

.record-retrieval-list-table {
  min-width: 1180px;
}

.record-retrieval-mrd-table td span,
.record-retrieval-list-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.18rem;
}

.record-retrieval-selected-row td {
  box-shadow: inset 3px 0 0 #2d6cdf;
}

.record-retrieval-patient-grid,
.record-retrieval-form-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.record-retrieval-patient-grid .wide,
.record-retrieval-form-grid .wide {
  grid-column: span 2;
}

.record-retrieval-actions {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
  margin-top: 0.85rem;
}

@media (max-width: 1180px) {
  .record-retrieval-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .record-retrieval-filter,
  .record-retrieval-patient-grid,
  .record-retrieval-form-grid {
    grid-template-columns: 1fr;
  }

  .record-retrieval-patient-grid .wide,
  .record-retrieval-form-grid .wide {
    grid-column: span 1;
  }

  .record-retrieval-actions {
    align-items: stretch;
    flex-direction: column;
  }
}

@media print {
  .record-retrieval-lists {
    display: none;
  }

  .record-retrieval-layout {
    display: block;
  }
}

.document-scan-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(580px, 1.05fr) minmax(390px, 0.75fr) minmax(280px, 0.45fr);
}

.document-scan-lists,
.document-scan-editor,
.document-scan-preview {
  padding: 1rem;
}

.document-scan-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.document-scan-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.document-scan-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.document-scan-filter {
  align-items: center;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-bottom: 1rem;
}

.document-scan-section-head {
  margin-top: 1rem;
}

.document-scan-mrd-wrap,
.document-scan-list-wrap {
  border: 1px solid #e5e9f0;
  border-radius: 6px;
}

.document-scan-mrd-wrap {
  max-height: 29vh;
}

.document-scan-list-wrap {
  max-height: 54vh;
}

.document-scan-mrd-table {
  min-width: 760px;
}

.document-scan-list-table {
  min-width: 1160px;
}

.document-scan-mrd-table td span,
.document-scan-list-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.18rem;
}

.document-scan-selected-row td {
  box-shadow: inset 3px 0 0 #2d6cdf;
}

.document-scan-patient-grid,
.document-scan-form-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.document-scan-patient-grid .wide,
.document-scan-form-grid .wide {
  grid-column: span 2;
}

.document-scan-actions,
.document-scan-delete-form {
  display: inline-flex;
  gap: 0.5rem;
  justify-content: flex-end;
}

.document-scan-actions {
  margin-top: 0.85rem;
}

.document-scan-delete-form {
  margin-top: 0.75rem;
  width: 100%;
}

.document-scan-preview {
  min-height: 520px;
}

.document-scan-preview img,
.document-scan-preview iframe {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: block;
  height: calc(100vh - 260px);
  min-height: 420px;
  object-fit: contain;
  width: 100%;
}

.document-scan-preview-empty {
  align-content: center;
  background: #f8fafc;
  border: 1px dashed #cbd5e1;
  border-radius: 6px;
  color: #67748a;
  display: grid;
  gap: 0.3rem;
  min-height: 420px;
  padding: 1rem;
  text-align: center;
}

.document-scan-preview-empty strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

@media (max-width: 1380px) {
  .document-scan-layout {
    grid-template-columns: minmax(580px, 1.15fr) minmax(420px, 0.85fr);
  }

  .document-scan-preview {
    grid-column: 1 / -1;
  }
}

@media (max-width: 1180px) {
  .document-scan-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .document-scan-filter,
  .document-scan-patient-grid,
  .document-scan-form-grid {
    grid-template-columns: 1fr;
  }

  .document-scan-patient-grid .wide,
  .document-scan-form-grid .wide {
    grid-column: span 1;
  }

  .document-scan-actions,
  .document-scan-delete-form {
    align-items: stretch;
    flex-direction: column;
  }
}

@media print {
  .document-scan-lists,
  .document-scan-preview,
  .document-scan-delete-form {
    display: none;
  }

  .document-scan-layout {
    display: block;
  }
}

.mrd-file-status-filter {
  margin-bottom: 1rem;
  padding: 1rem;
}

.mrd-file-status-filter-grid {
  display: grid;
  gap: 0.85rem;
  grid-template-columns: minmax(280px, 1.5fr) repeat(5, minmax(130px, 0.7fr));
}

.mrd-file-status-filter-grid .wide {
  grid-column: span 1;
}

.mrd-file-status-check {
  align-content: end;
  min-height: 38px;
}

.mrd-file-status-actions {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
  margin-top: 0.85rem;
  width: 100%;
}

.mrd-file-status-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(6, minmax(120px, 1fr));
  margin-bottom: 1rem;
}

.mrd-file-status-summary div {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem;
}

.mrd-file-status-summary span {
  color: #67748a;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.mrd-file-status-summary strong {
  color: #14213d;
  font-size: 1.1rem;
  overflow-wrap: anywhere;
}

.mrd-file-status-report {
  padding: 1rem;
}

.mrd-file-status-report-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.mrd-file-status-report-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.mrd-file-status-report-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.mrd-file-status-table-wrap {
  border: 1px solid #e5e9f0;
  border-radius: 6px;
  max-height: 68vh;
}

.mrd-file-status-table {
  min-width: 1320px;
}

.mrd-file-status-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.18rem;
}

.mrd-file-status-overdue-row td {
  box-shadow: inset 3px 0 0 #b42318;
}

@media (max-width: 1180px) {
  .mrd-file-status-filter-grid,
  .mrd-file-status-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .mrd-file-status-filter-grid,
  .mrd-file-status-summary {
    grid-template-columns: 1fr;
  }

  .mrd-file-status-actions {
    align-items: stretch;
    flex-direction: column;
  }
}

@media print {
  .mrd-file-status-filter {
    display: none;
  }

  .mrd-file-status-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .mrd-file-status-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .mrd-file-status-table {
    font-size: 0.64rem;
    min-width: 0;
  }
}

.mrd-panel-head {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.mrd-panel-head h2 {
  color: #14213d;
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.mrd-panel-head span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.mrd-panel-head.danger h2 {
  color: #b42318;
}

.mrd-panel-head.success h2 {
  color: #047857;
}

.mrd-section-head {
  margin-top: 1rem;
}

.mrd-inline-filter {
  align-items: center;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) auto auto;
  margin-bottom: 1rem;
}

.mrd-register-layout,
.mrd-issue-layout,
.duplicate-uhid-layout {
  display: grid;
  gap: 1rem;
}

.mrd-register-layout {
  grid-template-columns: minmax(620px, 1.05fr) minmax(470px, 0.95fr);
}

.mrd-issue-layout {
  grid-template-columns: minmax(620px, 1fr) minmax(500px, 0.95fr);
}

.duplicate-uhid-layout {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mrd-register-list-panel,
.mrd-register-editor,
.mrd-issue-record-panel,
.mrd-issue-editor,
.mrd-movement-panel,
.mrd-label-list,
.duplicate-uhid-side,
.duplicate-uhid-options,
.duplicate-uhid-plan,
.mrd-search-records,
.mrd-history-layout .list-panel,
.uhid-settings-panel {
  padding: 1rem;
}

.mrd-register-form-grid,
.mrd-issue-patient-grid,
.mrd-issue-form-grid,
.uhid-settings-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mrd-register-form-grid .wide,
.mrd-issue-patient-grid .wide,
.mrd-issue-form-grid .wide,
.uhid-settings-grid .wide {
  grid-column: span 2;
}

.duplicate-uhid-option-grid {
  grid-template-columns: minmax(260px, 1.4fr) minmax(180px, 0.8fr) repeat(5, minmax(130px, 0.55fr));
}

.duplicate-uhid-option-grid .wide {
  grid-column: span 1;
}

.mrd-search-filter,
.mrd-issue-filter,
.mrd-label-filter {
  margin-bottom: 1rem;
  padding: 1rem;
}

.mrd-search-filter-grid,
.mrd-issue-filter-grid,
.mrd-label-filter-grid {
  display: grid;
  gap: 0.85rem;
}

.mrd-search-filter-grid {
  grid-template-columns: minmax(280px, 1fr) minmax(160px, 0.45fr) minmax(120px, 0.3fr) auto;
}

.mrd-issue-filter-grid {
  grid-template-columns: minmax(280px, 1fr) minmax(160px, 0.35fr) auto;
}

.mrd-label-filter-grid {
  grid-template-columns: minmax(280px, 1fr) minmax(130px, 0.35fr) minmax(180px, 0.45fr) minmax(90px, 0.2fr) repeat(3, minmax(110px, 0.22fr));
}

.mrd-button-field,
.mrd-check-field {
  align-content: end;
}

.mrd-button-field {
  display: flex;
  gap: 0.5rem;
}

.mrd-register-table-wrap,
.mrd-search-table-wrap,
.mrd-issue-record-wrap,
.mrd-movement-table-wrap,
.mrd-label-table-wrap,
.duplicate-uhid-record-wrap,
.duplicate-uhid-plan-wrap,
.mrd-history-table-wrap {
  border: 1px solid #e5e9f0;
  border-radius: 6px;
}

.mrd-register-table-wrap,
.mrd-search-table-wrap,
.mrd-issue-record-wrap,
.duplicate-uhid-record-wrap {
  max-height: 56vh;
}

.mrd-movement-table-wrap,
.mrd-label-table-wrap,
.duplicate-uhid-plan-wrap {
  max-height: 68vh;
}

.mrd-history-table-wrap {
  max-height: 36vh;
}

.mrd-register-table,
.mrd-search-table,
.mrd-issue-record-table,
.mrd-label-table {
  min-width: 960px;
}

.mrd-movement-table {
  min-width: 1280px;
}

.duplicate-uhid-record-table {
  min-width: 720px;
}

.duplicate-uhid-plan-table,
.mrd-history-table {
  min-width: 980px;
}

.mrd-register-table td span,
.mrd-search-table td span,
.mrd-issue-record-table td span,
.mrd-movement-table td span,
.mrd-label-table td span,
.duplicate-uhid-record-table td span {
  color: #67748a;
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  margin-top: 0.18rem;
}

.mrd-selected-row td {
  box-shadow: inset 3px 0 0 #2d6cdf;
}

.mrd-history-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(260px, 0.7fr) minmax(420px, 1fr) minmax(420px, 1fr);
  margin-top: 1rem;
}

.mrd-selected-summary {
  display: grid;
  gap: 0.3rem;
}

.mrd-selected-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.mrd-selected-summary span {
  color: #67748a;
  font-size: 0.84rem;
  font-weight: 700;
}

.uhid-preview {
  align-items: center;
  background: #ecfdf5;
  border: 1px solid #a7f3d0;
  border-radius: 6px;
  color: #047857;
  display: flex;
  font-size: 1.15rem;
  font-weight: 800;
  min-height: 38px;
  overflow-wrap: anywhere;
  padding: 0.35rem 0.75rem;
}

@media (max-width: 1220px) {
  .mrd-register-layout,
  .mrd-issue-layout,
  .duplicate-uhid-layout,
  .mrd-history-layout {
    grid-template-columns: 1fr;
  }

  .mrd-search-filter-grid,
  .mrd-issue-filter-grid,
  .mrd-label-filter-grid,
  .duplicate-uhid-option-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .mrd-inline-filter,
  .mrd-register-form-grid,
  .mrd-issue-patient-grid,
  .mrd-issue-form-grid,
  .uhid-settings-grid,
  .mrd-search-filter-grid,
  .mrd-issue-filter-grid,
  .mrd-label-filter-grid,
  .duplicate-uhid-option-grid {
    grid-template-columns: 1fr;
  }

  .mrd-register-form-grid .wide,
  .mrd-issue-patient-grid .wide,
  .mrd-issue-form-grid .wide,
  .uhid-settings-grid .wide {
    grid-column: span 1;
  }

  .mrd-button-field,
  .mrd-actions {
    align-items: stretch;
    flex-direction: column;
  }
}

@media print {
  .mrd-register-list-panel,
  .mrd-search-filter,
  .mrd-issue-filter,
  .mrd-issue-record-panel,
  .mrd-label-filter,
  .duplicate-uhid-options {
    display: none;
  }

  .mrd-register-layout,
  .mrd-issue-layout,
  .mrd-history-layout,
  .duplicate-uhid-layout {
    display: block;
  }

  .mrd-movement-table-wrap,
  .mrd-history-table-wrap,
  .duplicate-uhid-plan-wrap {
    max-height: none;
    overflow: visible !important;
  }
}

.inline-control {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: minmax(0, 1fr) auto;
}

.package-billing-layout,
.package-utilization-layout {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(420px, 1.2fr) minmax(360px, 0.8fr);
}

.package-billing-form-panel,
.package-utilization-workspace {
  padding: 1rem;
}

.package-billing-head-grid,
.package-utilization-head-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.package-billing-head-grid .wide,
.package-utilization-head-grid .wide {
  grid-column: span 2;
}

.package-billing-billno,
.package-select-field {
  min-width: 0;
}

.package-billing-search {
  display: grid;
  gap: 0.65rem;
  grid-template-columns: minmax(0, 1fr) auto auto;
  margin-bottom: 0.85rem;
}

.package-billing-totals,
.reports-hub-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  margin-bottom: 1rem;
}

.package-billing-totals div,
.reports-hub-summary div {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  min-width: 0;
  padding: 0.85rem;
}

.package-billing-totals span,
.reports-hub-summary span {
  color: #67748a;
  font-size: 0.8rem;
  font-weight: 800;
}

.package-billing-totals strong,
.reports-hub-summary strong {
  color: #007d84;
  font-size: 1.08rem;
  overflow-wrap: anywhere;
}

.package-billing-list-wrap,
.package-utilization-list-wrap {
  max-height: 620px;
  overflow: auto;
}

.package-report-filter {
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 150px 150px minmax(150px, 1fr) minmax(170px, 1fr) minmax(220px, 1.3fr) auto;
  margin-bottom: 1rem;
  padding: 1rem;
}

.package-report-actions {
  align-items: end;
  display: flex;
  gap: 0.5rem;
}

.package-report-summary {
  margin-bottom: 1rem;
}

.package-utilization-item-panel {
  box-shadow: none;
  margin-top: 1rem;
}

.package-utilization-table-wrap {
  max-height: 560px;
  overflow: auto;
}

.package-utilization-table {
  min-width: 1120px;
}

.package-utilization-table .form-control {
  min-width: 86px;
}

.package-utilization-summary {
  margin-top: 1rem;
}

.reports-hub-group {
  margin-top: 1.25rem;
}

.reports-hub-grid {
  display: grid;
  gap: 0.85rem;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.reports-hub-tile {
  background: #fff;
  border: 1px solid #d8dee9;
  border-left: 4px solid #007d84;
  border-radius: 8px;
  display: grid;
  gap: 0.3rem;
  min-height: 92px;
  padding: 0.95rem;
  text-decoration: none;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.reports-hub-tile:hover {
  border-color: #fca311;
  box-shadow: 0 12px 22px rgba(20, 33, 61, 0.08);
  color: inherit;
  transform: translateY(-1px);
}

.reports-hub-tile strong {
  overflow-wrap: anywhere;
}

.reports-hub-tile small {
  color: #67748a;
  line-height: 1.35;
}

.birth-death-hub {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.birth-death-tile {
  align-items: start;
  background: #fff;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  gap: 0.45rem;
  min-height: 150px;
  padding: 1.1rem;
  text-decoration: none;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.birth-death-tile:hover {
  border-color: #007d84;
  box-shadow: 0 12px 22px rgba(20, 33, 61, 0.08);
  color: inherit;
  transform: translateY(-1px);
}

.birth-death-tile span {
  align-items: center;
  background: #fca311;
  border-radius: 8px;
  color: #14213d;
  display: inline-flex;
  font-weight: 900;
  height: 2.35rem;
  justify-content: center;
  width: 2.35rem;
}

.birth-death-tile strong {
  font-size: 1.05rem;
}

.birth-death-tile small {
  color: #67748a;
  line-height: 1.35;
}

@media (max-width: 1180px) {
  .package-billing-layout,
  .package-utilization-layout,
  .package-report-filter {
    grid-template-columns: 1fr;
  }

  .package-report-actions {
    align-items: stretch;
  }
}

@media (max-width: 720px) {
  .package-billing-head-grid,
  .package-utilization-head-grid,
  .package-billing-search,
  .inline-control {
    grid-template-columns: 1fr;
  }

  .package-billing-head-grid .wide,
  .package-utilization-head-grid .wide {
    grid-column: span 1;
  }

  .package-report-actions {
    flex-direction: column;
  }
}

@media print {
  .package-billing-list-panel,
  .package-utilization-list-panel,
  .package-report-filter {
    display: none;
  }

  .package-billing-layout,
  .package-utilization-layout {
    display: block;
  }

  .package-utilization-table-wrap,
  .package-billing-list-wrap,
  .package-utilization-list-wrap {
    max-height: none;
    overflow: visible !important;
  }
}

@media print {
  .topbar,
  .print-actions,
  footer {
    display: none !important;
  }

  body {
    background: #fff;
  }

  .app-main {
    padding: 0;
  }

  .receipt-print {
    border: 0;
    box-shadow: none;
    max-width: none;
    padding: 0;
  }

  .bed-status-report-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .bed-status-report-table {
    font-size: 0.72rem;
    min-width: 0;
  }

  .admission-report-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .admission-report-table {
    font-size: 0.72rem;
    min-width: 0;
  }

  .receipt-report-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .receipt-report-table {
    font-size: 0.72rem;
    min-width: 0;
  }

  .charge-report-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .charge-report-table {
    font-size: 0.72rem;
    min-width: 0;
  }

  .daily-collection-patient-wrap,
  .daily-collection-detail-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .daily-collection-patient-table,
  .daily-collection-detail-table {
    font-size: 0.62rem;
    min-width: 0;
  }

  .daily-attendance-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .daily-attendance-table {
    font-size: 0.68rem;
    min-width: 0;
  }

  .employee-list-report-meta {
    display: flex;
    flex-wrap: wrap;
  }

  .employee-list-report-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .employee-list-report-table {
    font-size: 0.68rem;
    min-width: 0;
  }

  .payroll-process-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .payroll-process-table {
    font-size: 0.48rem;
    min-width: 0;
  }

  .payroll-report-meta {
    display: flex;
    flex-wrap: wrap;
  }

  .payroll-report-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .payroll-report-table {
    font-size: 0.48rem;
    min-width: 0;
  }

  .advance-entry-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .advance-entry-table {
    font-size: 0.58rem;
    min-width: 0;
  }

  .loan-entry-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .loan-entry-table {
    font-size: 0.54rem;
    min-width: 0;
  }

  .emergency-registration-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .emergency-registration-table {
    font-size: 0.58rem;
    min-width: 0;
  }

  .emergency-triage-patient-table-wrap,
  .emergency-triage-history-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .emergency-triage-patient-table,
  .emergency-triage-history-table {
    font-size: 0.52rem;
    min-width: 0;
  }

  .emergency-treatment-patient-table-wrap,
  .emergency-treatment-line-table-wrap,
  .emergency-treatment-history-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .emergency-treatment-patient-table,
  .emergency-treatment-line-table,
  .emergency-treatment-history-table,
  .emergency-treatment-print-table {
    font-size: 0.5rem;
    min-width: 0;
  }

  .emergency-billing-patient-table-wrap,
  .emergency-billing-line-table-wrap,
  .emergency-billing-history-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .emergency-billing-patient-table,
  .emergency-billing-line-table,
  .emergency-billing-history-table,
  .emergency-billing-print-table {
    font-size: 0.48rem;
    min-width: 0;
  }

  .admission-emergency-patient-table-wrap,
  .admission-emergency-history-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .admission-emergency-patient-table,
  .admission-emergency-history-table {
    font-size: 0.5rem;
    min-width: 0;
  }

  .abdm-care-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .abdm-care-table {
    font-size: 0.52rem;
    min-width: 0;
  }

  .abdm-consent-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .abdm-consent-table {
    font-size: 0.5rem;
    min-width: 0;
  }

  .abdm-share-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .abdm-share-table {
    font-size: 0.48rem;
    min-width: 0;
  }

  .abdm-settings-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .abdm-settings-table {
    font-size: 0.62rem;
    min-width: 0;
  }

  .abha-link-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .abha-link-table {
    font-size: 0.58rem;
    min-width: 0;
  }

  .hospital-payment-layout,
  .hospital-payment-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .hospital-payment-table {
    font-size: 0.6rem;
    min-width: 0;
  }

  .hospital-payment-print {
    border: 0;
    display: block;
    max-width: none;
    padding: 0;
  }

  body:has(.hospital-payment-print) .print-actions,
  body:has(.hospital-payment-print) .hospital-payment-layout {
    display: none !important;
  }

  body:has(.hospital-payment-print) .app-main {
    padding: 0;
  }

  .emergency-slip {
    border: 0;
    box-shadow: none;
    max-width: none;
    padding: 0;
  }

  .salary-slip-filter,
  .salary-slip-list-panel {
    display: none !important;
  }

  .salary-slip-layout {
    display: block;
  }

  .salary-slip-detail-panel {
    border: 0;
    box-shadow: none;
    padding: 0;
  }

  .salary-slip-print {
    border: 0;
    border-radius: 0;
    padding: 0;
  }

  .salary-slip-info-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .salary-slip-metric-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

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

  .salary-slip-info-grid div,
  .salary-slip-metric-grid div,
  .salary-slip-salary-grid div,
  .salary-slip-remarks {
    padding: 0.42rem 0.5rem;
  }

  .attendance-entry-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .attendance-entry-table {
    font-size: 0.68rem;
    min-width: 0;
  }

  .duty-roster-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .duty-roster-table {
    font-size: 0.68rem;
    min-width: 0;
  }

  .leave-application-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .leave-application-table {
    font-size: 0.62rem;
    min-width: 0;
  }

  .leave-approval-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .leave-approval-table {
    font-size: 0.58rem;
    min-width: 0;
  }

  .leave-type-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .leave-type-table {
    font-size: 0.66rem;
    min-width: 0;
  }

  .hr-department-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .hr-department-table {
    font-size: 0.72rem;
    min-width: 0;
  }

  .hr-designation-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .hr-designation-table {
    font-size: 0.72rem;
    min-width: 0;
  }

  .hr-shift-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .hr-shift-table {
    font-size: 0.58rem;
    min-width: 0;
  }

  .hr-holiday-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .hr-holiday-table {
    font-size: 0.66rem;
    min-width: 0;
  }

  .hr-employee-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .hr-employee-table {
    font-size: 0.56rem;
    min-width: 0;
  }

  .attendance-register-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .attendance-register-table {
    font-size: 0.62rem;
    min-width: 0;
  }

  .monthly-attendance-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .monthly-attendance-table {
    font-size: 0.56rem;
    min-width: 0;
  }

  .current-stock-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .current-stock-table {
    font-size: 0.68rem;
    min-width: 0;
  }

  .medicine-ledger-meta {
    display: flex;
    flex-wrap: wrap;
  }

  .medicine-ledger-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .medicine-ledger-table {
    font-size: 0.66rem;
    min-width: 0;
  }

  .refer-commission-ledger-meta {
    display: flex;
    flex-wrap: wrap;
  }

  .refer-commission-ledger-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .refer-commission-ledger-table {
    font-size: 0.68rem;
    min-width: 0;
  }

  .refer-commission-payment-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .refer-commission-payment-table {
    font-size: 0.66rem;
    min-width: 0;
  }

  .refer-commission-report-meta {
    display: flex;
    flex-wrap: wrap;
  }

  .refer-commission-report-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .refer-commission-report-table {
    font-size: 0.64rem;
    min-width: 0;
  }

  .opd-refer-commission-tabs {
    display: none;
  }

  .opd-refer-commission-tab-content,
  .opd-refer-commission-tab-content .tab-pane {
    display: block !important;
    opacity: 1 !important;
  }

  .opd-refer-commission-meta {
    display: flex;
    flex-wrap: wrap;
  }

  .opd-refer-commission-summary-wrap,
  .opd-refer-commission-detail-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .opd-refer-commission-summary-table,
  .opd-refer-commission-detail-table {
    font-size: 0.66rem;
    min-width: 0;
  }

  .opd-report-tabs {
    display: none;
  }

  .opd-report-tab-content,
  .opd-report-tab-content .tab-pane {
    display: block !important;
    opacity: 1 !important;
  }

  .opd-report-table-wrap,
  .opd-report-appointment-wrap,
  .opd-report-due-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .opd-report-doctor-table,
  .opd-report-collection-table,
  .opd-report-appointment-table,
  .opd-report-due-table {
    font-size: 0.64rem;
    min-width: 0;
  }

  .opd-med-line-wrap,
  .opd-med-appointment-wrap,
  .opd-med-recent-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .opd-med-line-table,
  .opd-med-appointment-table,
  .opd-med-recent-table {
    font-size: 0.68rem;
    min-width: 0;
  }

  .opd-encounter-layout {
    display: block;
  }

  .opd-encounter-picker,
  .opd-encounter-item-search {
    display: none;
  }

  .opd-encounter-workspace,
  .opd-encounter-workspace .form-panel {
    border: 0;
    box-shadow: none;
    padding: 0.35rem 0;
  }

  .opd-encounter-form-grid,
  .opd-encounter-vitals-grid,
  .opd-encounter-notes-grid,
  .opd-encounter-followup {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .opd-encounter-rx-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .opd-encounter-rx-table {
    font-size: 0.68rem;
    min-width: 0;
  }

  .opd-lab-layout {
    display: block;
  }

  .opd-lab-picker,
  .opd-lab-load-strip {
    display: none;
  }

  .opd-lab-workspace,
  .opd-lab-workspace .form-panel {
    border: 0;
    box-shadow: none;
    padding: 0.35rem 0;
  }

  .opd-lab-head-grid,
  .opd-lab-refer-grid,
  .opd-lab-payment-grid,
  .opd-lab-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .opd-lab-line-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .opd-lab-line-table {
    font-size: 0.68rem;
    min-width: 0;
  }

  .ipd-lab-order-layout {
    display: block;
  }

  .ipd-lab-order-picker,
  .ipd-lab-order-load-strip {
    display: none;
  }

  .ipd-lab-order-workspace,
  .ipd-lab-order-workspace .form-panel {
    border: 0;
    box-shadow: none;
    padding: 0.35rem 0;
  }

  .ipd-lab-order-head-grid,
  .ipd-lab-order-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ipd-lab-line-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .ipd-lab-line-table {
    font-size: 0.66rem;
    min-width: 0;
  }

  .ipd-lab-result-layout {
    display: block;
  }

  .ipd-lab-result-picker,
  .ipd-lab-result-load-strip {
    display: none;
  }

  .ipd-lab-result-workspace,
  .ipd-lab-result-workspace .form-panel {
    border: 0;
    box-shadow: none;
    padding: 0.35rem 0;
  }

  .ipd-lab-result-head-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ipd-lab-result-line-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .ipd-lab-result-line-table {
    font-size: 0.66rem;
    min-width: 0;
  }

  .radiology-booking-layout {
    display: block;
  }

  .radiology-booking-picker,
  .radiology-booking-load-strip {
    display: none;
  }

  .radiology-booking-workspace,
  .radiology-booking-workspace .form-panel {
    border: 0;
    box-shadow: none;
    padding: 0.35rem 0;
  }

  .radiology-booking-head-grid,
  .radiology-booking-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .radiology-line-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .radiology-line-table {
    font-size: 0.62rem;
    min-width: 0;
  }

  .radiology-billing-layout {
    display: block;
  }

  .radiology-billing-picker,
  .radiology-billing-load-strip {
    display: none;
  }

  .radiology-billing-workspace,
  .radiology-billing-workspace .form-panel {
    border: 0;
    box-shadow: none;
    padding: 0.35rem 0;
  }

  .radiology-billing-head-grid,
  .radiology-billing-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .radiology-billing-line-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .radiology-billing-line-table {
    font-size: 0.66rem;
    min-width: 0;
  }

  .radiology-report-layout {
    display: block;
  }

  .radiology-report-picker,
  .radiology-report-load-strip {
    display: none;
  }

  .radiology-report-workspace,
  .radiology-report-workspace .form-panel {
    border: 0;
    box-shadow: none;
    padding: 0.35rem 0;
  }

  .radiology-report-head-grid,
  .radiology-report-editor-grid {
    grid-template-columns: 1fr;
  }

  .final-bill-report-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .cash-book-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .cash-book-table {
    font-size: 0.66rem;
    min-width: 0;
  }

  .bank-book-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .bank-book-table {
    font-size: 0.66rem;
    min-width: 0;
  }

  .receipt-payment-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .receipt-payment-table {
    font-size: 0.62rem;
    min-width: 0;
  }

  .cash-book-meta {
    display: flex;
    flex-wrap: wrap;
  }

  .bank-book-meta {
    display: flex;
    flex-wrap: wrap;
  }

  .receipt-payment-meta {
    display: flex;
    flex-wrap: wrap;
  }

  .final-bill-report-table {
    font-size: 0.72rem;
    min-width: 0;
  }

  .discharge-report-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .discharge-report-table {
    font-size: 0.72rem;
    min-width: 0;
  }

  .transaction-admission-table-wrap,
  .transaction-summary-wrap,
  .transaction-detail-wrap,
  .transaction-payment-wrap,
  .patient-ledger-table-wrap,
  .patient-ledger-patient-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .transaction-admission-table,
  .transaction-summary-table,
  .transaction-detail-table,
  .transaction-payment-table,
  .patient-ledger-table,
  .patient-ledger-patient-table {
    font-size: 0.72rem;
    min-width: 0;
  }

  .patient-ledger-meta {
    display: flex;
    flex-wrap: wrap;
  }

  .deduction-report-filter {
    display: none;
  }

  .deduction-report-meta {
    display: flex;
    gap: 1rem;
    margin-bottom: 0.75rem;
  }

  .deduction-report-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .deduction-report-table {
    font-size: 0.7rem;
    min-width: 0;
  }

  .pfesi-report-filter {
    display: none;
  }

  .pfesi-report-meta {
    display: flex;
    gap: 1rem;
    margin-bottom: 0.75rem;
  }

  .pfesi-report-table-wrap {
    max-height: none;
    overflow: visible !important;
  }

  .pfesi-report-table {
    font-size: 0.68rem;
    min-width: 0;
  }
}

.role-permission-toolbar {
  align-items: end;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(180px, 260px) minmax(260px, auto);
  margin-bottom: 1rem;
}

.role-permission-role-form {
  margin: 0;
}

.role-permission-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(120px, 1fr));
}

.role-permission-summary div {
  background: #f5f7fb;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  padding: 0.75rem;
}

.role-permission-summary span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.role-permission-summary strong {
  color: #14213d;
  font-size: 1.15rem;
}

.role-permission-panel {
  padding: 1rem;
}

.role-permission-table-wrap {
  max-height: calc(100vh - 310px);
}

.role-permission-table {
  min-width: 920px;
}

.role-permission-table .form-check-input {
  cursor: pointer;
  height: 1.1rem;
  width: 1.1rem;
}

.role-permission-table .form-check-input:disabled {
  cursor: not-allowed;
}

.role-permission-form-name {
  color: #67748a;
  font-size: 0.86rem;
}

.role-permission-actions {
  align-items: center;
  display: flex;
  gap: 0.65rem;
  justify-content: flex-end;
  margin-top: 1rem;
}

@media (max-width: 760px) {
  .role-permission-toolbar {
    align-items: stretch;
    grid-template-columns: 1fr;
  }

  .role-permission-summary {
    grid-template-columns: 1fr 1fr;
  }
}

.audit-log-filter-panel {
  margin-bottom: 1rem;
  padding: 1rem;
}

.audit-log-filter {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(220px, 1fr) 150px 150px 150px auto;
}

.audit-log-filter-actions {
  align-items: center;
  display: flex;
  gap: 0.6rem;
}

.audit-log-panel {
  padding: 1rem;
}

.audit-log-summary {
  color: #67748a;
  display: flex;
  font-weight: 700;
  gap: 1rem;
  margin-bottom: 0.75rem;
}

.audit-log-table-wrap {
  max-height: calc(100vh - 330px);
}

.audit-log-table {
  min-width: 1120px;
}

.audit-log-table td strong,
.audit-log-table td small {
  display: block;
}

.audit-log-table td small {
  color: #67748a;
  margin-top: 0.15rem;
}

.audit-log-details {
  color: #67748a;
  font-family: Consolas, "Courier New", monospace;
  font-size: 0.76rem;
  max-width: 420px;
  overflow-wrap: anywhere;
}

.audit-log-pager {
  align-items: center;
  display: flex;
  gap: 0.65rem;
  justify-content: flex-end;
  margin-top: 1rem;
}

@media (max-width: 980px) {
  .audit-log-filter {
    grid-template-columns: 1fr 1fr;
  }

  .audit-log-filter-actions {
    grid-column: 1 / -1;
  }
}

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

.database-backup-summary {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(200px, 0.8fr) minmax(120px, 0.35fr) minmax(260px, 1.4fr);
  margin-bottom: 1rem;
  padding: 1rem;
}

.database-backup-summary div {
  background: #f5f7fb;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  min-width: 0;
  padding: 0.75rem;
}

.database-backup-summary span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.database-backup-summary strong {
  color: #14213d;
  overflow-wrap: anywhere;
}

.database-backup-panel {
  padding: 1rem;
}

.database-backup-table {
  min-width: 980px;
}

.database-backup-table td strong,
.database-backup-table td small {
  display: block;
}

.database-backup-table td small {
  color: #67748a;
  margin-top: 0.15rem;
}

.database-backup-file,
.database-backup-error {
  color: #67748a;
  overflow-wrap: anywhere;
}

.database-backup-error {
  max-width: 360px;
}

@media (max-width: 900px) {
  .database-backup-summary {
    grid-template-columns: 1fr;
  }
}

.database-backup-warning {
  margin-bottom: 1rem;
}

.restore-danger {
  margin-bottom: 1rem;
}

.restore-confirm-panel {
  padding: 1rem;
}

.restore-confirm-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  margin-bottom: 1rem;
}

.restore-confirm-grid div {
  background: #f5f7fb;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  display: grid;
  min-width: 0;
  padding: 0.8rem;
}

.restore-confirm-grid span {
  color: #67748a;
  font-size: 0.82rem;
  font-weight: 700;
}

.restore-confirm-grid strong {
  overflow-wrap: anywhere;
}

.restore-confirm-form {
  border-top: 1px solid #d8dee9;
  display: grid;
  gap: 1rem;
  padding-top: 1rem;
}

.restore-confirm-actions {
  align-items: center;
  display: flex;
  gap: 0.65rem;
  justify-content: flex-end;
}

@media (max-width: 760px) {
  .restore-confirm-grid {
    grid-template-columns: 1fr;
  }
}
