@media screen and (max-width: 1023px) {
  :root { --gb-mobile-navy: var(--gb-brand-surgery); --gb-mobile-teal: #008579; --gb-mobile-line: #b7dacf; --gb-mobile-surface: #f0f8f4; --gb-mobile-text: #173f36; --gb-brand-surgery: #075f74; --gb-brand-jade: #008579; --gb-brand-bank: #006b3c; }
  body.gb-report-full { overflow-x: hidden; }
  #gb-report-app { width: 100%; padding: 0px 10px; box-sizing: border-box; }
  .gb-header, .gb-count-summary, .gb-patients, .gb-other-report, .gb-section-title, .gb-section-title-none { box-sizing: border-box; width: 100% !important; max-width: 100% !important; }
  .gb-header-inner { padding: 12px !important; }
  .gb-title { line-height: 1.2; font-size: 22px !important; }
  .gb-meta { line-height: 1.4; font-size: 16px !important; }
  .gb-count-summary, .gb-patients { padding: 0px !important; }
  .gb-grid-row { display: grid !important; grid-template-columns: repeat(2, minmax(0px, 1fr)) !important; gap: 8px !important; flex-wrap: unset !important; }
  .gb-box { width: 100% !important; min-width: 0px !important; max-width: none !important; min-height: auto !important; padding: 11px 8px !important; border-color: var(--gb-mobile-line) !important; border-radius: 12px !important; background: var(--gb-surface) !important; }
  .gb-box-label { line-height: 1.3; font-size: 16px !important; }
  .gb-box-value { margin-top: 4px !important; color: var(--gb-mobile-navy) !important; font-size: 23px !important; }
  .gb-other-report { margin: 7px 0px !important; padding: 11px !important; border-color: var(--gb-mobile-line) !important; background: var(--gb-mobile-surface) !important; }
  .gb-other-report .gb-other-content { font-size: 17px !important; line-height: 1.5 !important; }
  .gb-section-title, .gb-section-title-none { padding: 9px 11px !important; font-size: 18px !important; }
  .gb-list-header { gap: 10px; display: flex !important; flex-direction: column !important; align-items: stretch !important; }
  .gb-list-action, .gb-btn-new { width: 100% !important; }
  .gb-table, .gb-report-table-render { display: block; overflow-x: auto; }
  .gb-table th:last-child, .gb-table td:last-child { min-width: 140px; width: auto !important; }
  .col-updated, .gb-table th:nth-child(4), .gb-table td:nth-child(4) { display: none !important; }
  .gb-action-buttons { gap: 6px; display: flex !important; flex-direction: column !important; white-space: normal !important; }
  .gb-action-buttons .button { width: 100% !important; margin: 0px !important; }
  .pc-header { flex-direction: column; align-items: flex-start; gap: 4px; }
  .pc-header p, .pc-title, .pc-meta, .pc-room { line-height: 1.35; font-size: 18px !important; }
  .gb-patient-card.pc-vao-chuyen-khoa .pc-header { background: rgb(64, 109, 105) !important; color: rgb(255, 255, 255) !important; }
  .gb-patient-card.pc-vao-chuyen-vien .pc-header { background: rgb(54, 117, 111) !important; color: rgb(255, 255, 255) !important; }
  .gb-patient-card.pc-vao-xin-ve .pc-header { background: rgb(73, 104, 91) !important; color: rgb(255, 255, 255) !important; }
  .pc-body p, .pc-section-box p { line-height: 1.5; font-size: 17px !important; }
  .pc-other-note { font-size: 16px !important; }
  .two-col { gap: 10px; flex-direction: column !important; }
  .two-col > div { width: 100% !important; min-width: 100% !important; max-width: 100% !important; }
  .two-col > div:first-child::after { display: none; }
  .gb-editor-two-cols { flex-wrap: wrap; }
  .gb-editor-two-cols > .gb-editor-col { flex: 1 1 100%; }
  .gb-locmau-card, .gb-note-card { margin: 8px 0px; padding: 14px 16px; border: 1px solid var(--gb-mobile-line); border-radius: 12px; background: rgb(255, 255, 255); }
  .gb-locmau-card .pc-section-box { margin-bottom: 4px; }
  .gb-locmau-card .locmau-line, .gb-note-card .note-line { margin-bottom: 8px; }
  .gb-locmau-card .locmau-value, .gb-note-card .note-value { font-size: 15pt; white-space: pre-line; }
  .gb-locmau-card .label-green, .pc-canthiep .label-green { color: var(--gb-mobile-teal); font-weight: 700; }
  .pc-canthiep { background: rgb(240, 246, 246); }
  .pc-canthiep .pc-header { color: rgb(255, 255, 255); background: rgb(0, 107, 60); }
  .pc-canthiep .pc-room { color: rgb(230, 244, 238); }
  .gb-note-card .pc-title { font-size: 15pt; font-weight: 700; }
  .gb-report-table-render table { min-width: 520px; font-size: 13px; }
  .gb-report-table-render th, .gb-report-table-render td { padding: 7px 6px; }
}
@media screen and (max-width: 768px) {
  .gb-report-full .pc-header .tuoi { display: inline-flex; align-items: center; padding: 2px 7px; border: 1px solid transparent; border-radius: 999px; line-height: 1.2; text-shadow: none; }
  .gb-report-full .pc-header .tuoi.male { border-color: rgb(183, 218, 207) !important; background: rgb(230, 244, 238) !important; color: rgb(0, 107, 60) !important; }
  .gb-report-full .pc-header .tuoi.female { border-color: rgb(15, 220, 135) !important; background: rgb(197, 248, 226) !important; color: rgb(14, 93, 60) !important; }
  .gb-mobile-lab-view { width: 100%; }
  .gb-mobile-lab-heading { margin: 0px 0px 8px; font-weight: 750; }
  .gb-mobile-lab-list { display: block; }
  .gb-mobile-lab-group { display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 6px; }
  .gb-mobile-lab-group.is-single-column { grid-template-columns: minmax(0px, 1fr); }
  .gb-mobile-lab-column { display: grid; align-content: start; gap: 6px; }
  .gb-mobile-lab-item { display: grid; grid-template-columns: minmax(0px, 1fr) auto; align-items: baseline; column-gap: 8px; padding: 8px 10px; border: 1px solid rgb(230, 244, 238); border-radius: 8px; background: rgb(255, 255, 255); }
  .gb-mobile-lab-name { min-width: 0px; color: rgb(0, 107, 60); overflow-wrap: anywhere; font-size: 15px !important; font-weight: 650 !important; line-height: 1.3 !important; }
  .gb-mobile-lab-result { min-width: 0px; padding-left: 0px; border-left: 0px; color: rgb(23, 63, 54); font-weight: 700; text-align: right; overflow-wrap: anywhere; font-size: 16px !important; }
  .gb-mobile-lab-item.is-imaging { display: block; margin-top: 6px; padding: 10px; }
  .gb-mobile-lab-item.is-imaging .gb-mobile-lab-name { display: block; margin-bottom: 4px; color: rgb(0, 107, 60) !important; font-size: 16px !important; font-weight: 700 !important; line-height: 1.4 !important; }
  .gb-mobile-lab-item.is-imaging .gb-mobile-lab-result { display: block; padding-left: 0px; border-left: 0px; font-weight: 500; line-height: 1.45; text-align: left; }
}
@media screen and (max-width: 420px) {
  .gb-mobile-lab-group { grid-template-columns: minmax(0px, 1fr); }
}
@media screen and (max-width: 520px) {
  .gb-grid-row { grid-template-columns: 1fr !important; }
}
