/* 이용안내: 요양원 현황/서비스안내와 같은 색과 여백. 화면에만 적용. */
@media screen {
  body .gsh-sub-wrap:is([data-mid="page5"], [data-mid="page16"], [data-mid="page85"], [data-mid="page88"], [data-mid="page7"], [data-mid="page83"], [data-mid="board8"], [data-mid="board2"]) {
    --u-deep: #17352f;
    --u-green: #23791f;
    --u-green-2: #2f9630;
    --u-line: #dce9d7;
    --u-soft: #f5fbf1;
    --u-muted: #52645b;
    --primary: #23791f;
    --primary-dark: #17651c;
    --text-main: #17352f;
    --text-sub: #52645b;
    --bg-soft: #f5fbf1;
    --border: #dce9d7;
    --line: #dce9d7;
    --soft: #f5fbf1;
    --green: #23791f;
    --green-dark: #17651c;
    --today-bg: #f1faea;
    --item-bg: #f5fbf1;
  }

  body .gsh-sub-wrap:is([data-mid="page5"], [data-mid="page16"], [data-mid="page85"], [data-mid="page88"], [data-mid="page7"], [data-mid="page83"], [data-mid="board8"], [data-mid="board2"]) > .gsh-content {
    min-width: 0;
    overflow-wrap: break-word;
  }

  body .gsh-sub-wrap:is([data-mid="page5"], [data-mid="page16"], [data-mid="page85"], [data-mid="page88"], [data-mid="page7"], [data-mid="page83"], [data-mid="board8"], [data-mid="board2"]) .gsh-content :is(button, a, input, select, textarea):focus-visible {
    outline: 3px solid #8bd335;
    outline-offset: 2px;
  }

  /* 입소안내 */
  body .gsh-sub-wrap[data-mid="page5"] :is(.admission-qual-wrap, .care-grade-wrap, .care-flow-wrap, #gshAdmissionPrintBox) {
    padding: 18px 0 42px;
    background: transparent;
  }
  body .gsh-sub-wrap[data-mid="page5"] :is(.admission-qual-header, .care-grade-header) {
    padding: 32px 20px;
    border: 1px solid var(--u-line);
    border-radius: 26px;
    background: linear-gradient(120deg, #edf9e5, #f7fce9, #fff0d9);
  }
  body .gsh-sub-wrap[data-mid="page5"] :is(.admission-qual-header h2, .care-grade-header h2, .care-step-title, .info-head-title) { color: var(--u-deep); }
  body .gsh-sub-wrap[data-mid="page5"] :is(.admission-qual-header .icon, .care-grade-header .icon, .admission-qual-title i, .care-grade-title i) { color: var(--u-green); }
  body .gsh-sub-wrap[data-mid="page5"] :is(.admission-qual-card, .care-grade-card, .care-grade-summary-box, .care-step, #gshAdmissionPrintBox .gsh-ap-card, .info-card) {
    border: 1px solid var(--u-line);
    border-radius: 20px;
    box-shadow: 0 10px 28px rgba(23, 53, 47, .06);
  }
  body .gsh-sub-wrap[data-mid="page5"] :is(.admission-qual-title, .care-grade-title, #gshAdmissionPrintBox .gsh-ap-head) { border-color: var(--u-green); }
  body .gsh-sub-wrap[data-mid="page5"] :is(.admission-qual-line, .care-grade-line) { background: var(--u-line); }
  body .gsh-sub-wrap[data-mid="page5"] :is(.care-grade-badge, .info-head-badge) { color: var(--u-green); background: var(--u-soft); border-color: var(--u-line); }
  body .gsh-sub-wrap[data-mid="page5"] :is(.care-step-num, .info-num, .info-tab-btn.active, #gshAdmissionPrintBox .gsh-ap-print-btn, #gshAdmissionPrintBox .common .gsh-ap-badge) { background: var(--u-green); color: #fff; }
  body .gsh-sub-wrap[data-mid="page5"] :is(.info-tab-btn, #gshAdmissionPrintBox .gsh-ap-option) { border-color: var(--u-line); border-radius: 14px; background: var(--u-soft); color: var(--u-deep); }
  body .gsh-sub-wrap[data-mid="page5"] :is(.info-tab-btn.active, .info-tab-btn[data-tab].active) { background: linear-gradient(135deg, var(--u-green-2), var(--u-green)); color: #fff; }
  body .gsh-sub-wrap[data-mid="page5"] :is(.info-side, .limit .info-side, .prepare .info-side) { background: var(--u-deep); }
  body .gsh-sub-wrap[data-mid="page5"] :is(.info-head-badge, .info-num, .limit .info-num, .prepare .info-num) { background: var(--u-green); color: #fff; }
  body .gsh-sub-wrap[data-mid="page5"] :is(.admission-qual-list li, .care-grade-list li, #gshAdmissionPrintBox .gsh-ap-list li) { list-style: none !important; }
  body .gsh-sub-wrap[data-mid="page5"] :is(.admission-qual-list li, .care-grade-list li, #gshAdmissionPrintBox .gsh-ap-list li)::marker { content: ""; }
  body .gsh-sub-wrap[data-mid="page5"] :is(.admission-qual-list li, .care-grade-list li, #gshAdmissionPrintBox .gsh-ap-list li)::before { background: var(--u-green); }

  /* 입소비용: 계산기와 요금표의 구조는 유지한다. */
  body .gsh-sub-wrap[data-mid="page16"] :is(.fee-wrap, .price-table-wrap, .bank-wrap) { padding: 18px 0 42px; background: transparent; }
  body .gsh-sub-wrap[data-mid="page16"] .fee-header {
    padding: 44px 26px;
    border: 1px solid var(--u-line);
    border-radius: 28px;
    background: linear-gradient(120deg, #edf9e5, #f7fce9, #fff0d9);
    box-shadow: 0 16px 36px rgba(23, 53, 47, .07);
  }
  body .gsh-sub-wrap[data-mid="page16"] .fee-header::before { border-color: rgba(35, 121, 31, .19); border-radius: 18px; }
  body .gsh-sub-wrap[data-mid="page16"] :is(.fee-header h2, .fee-card-title, .fee-flow-title, .section-title, .table-head h3, .bank-title) { color: var(--u-deep); }
  body .gsh-sub-wrap[data-mid="page16"] :is(.fee-header .icon, .fee-card-title i, .bank-icon) { color: var(--u-green); background: var(--u-soft); border-color: var(--u-line); border-radius: 16px; }
  body .gsh-sub-wrap[data-mid="page16"] :is(.fee-line, .fee-card::after) { background: linear-gradient(90deg, #8bd335, var(--u-green)); }
  body .gsh-sub-wrap[data-mid="page16"] .fee-summary-item { background: var(--u-deep); border-color: #8bd335; border-radius: 18px; }
  body .gsh-sub-wrap[data-mid="page16"] .fee-summary-item i { color: #b9eb8d; }
  body .gsh-sub-wrap[data-mid="page16"] :is(.fee-card, .fee-flow, .fee-flow-step, .select-card, .result-card, .table-card, .bank-box) { border-color: var(--u-line); border-radius: 20px; box-shadow: 0 10px 28px rgba(23, 53, 47, .06); }
  body .gsh-sub-wrap[data-mid="page16"] .fee-card-title { border-color: var(--u-green); }
  body .gsh-sub-wrap[data-mid="page16"] :is(.fee-box, .fee-flow-step, .flow-guide, .result-item) { background: var(--u-soft); border-color: var(--u-line); }
  body .gsh-sub-wrap[data-mid="page16"] :is(.fee-box, .flow-guide) { border-left-color: var(--u-green); }
  body .gsh-sub-wrap[data-mid="page16"] :is(.fee-flow-step span, .print-btn, .option-btn.is-selected, .result-item.total-box, .copy-btn) { background: var(--u-green); border-color: var(--u-green); color: #fff; border-radius: 12px; }
  body .gsh-sub-wrap[data-mid="page16"] :is(.section-mini-title, .result-label, .result-item .item-value, .bank-account, .price-table .total-cell, .fee-highlight) { color: var(--u-green); }
  body .gsh-sub-wrap[data-mid="page16"] .result-item.total-box :is(.item-label, .item-value) { color: #fff; }
  body .gsh-sub-wrap[data-mid="page16"] .option-btn { border-color: var(--u-line); border-radius: 12px; }
  body .gsh-sub-wrap[data-mid="page16"] .option-btn:hover { background: var(--u-soft); border-color: var(--u-green); }
  body .gsh-sub-wrap[data-mid="page16"] .price-table thead th { background: #eaf6e4; color: var(--u-deep); }
  body .gsh-sub-wrap[data-mid="page16"] .price-table tr.is-active td { background: #f0fae9; }
  body .gsh-sub-wrap[data-mid="page16"] .price-table tr.is-active td.highlight,
  body .gsh-sub-wrap[data-mid="page16"] .price-table tr.is-active td.fee-cell { background: #dff1d5; color: var(--u-deep); }
  body .gsh-sub-wrap[data-mid="page16"] .price-table tr.is-active td.total-cell { background: #bfe5a8; color: var(--u-deep); }
  body .gsh-sub-wrap[data-mid="page16"] .price-table td.grade-cell.is-grade-selected,
  body .gsh-sub-wrap[data-mid="page16"] .price-table td.suga-cell.is-grade-selected { background: #dff1d5; box-shadow: inset 0 0 0 2px var(--u-green); }
  body .gsh-sub-wrap[data-mid="page16"] :is(.fee-card li, .fee-card ul) { list-style: none !important; }
  body .gsh-sub-wrap[data-mid="page16"] .fee-card li::marker { content: ""; }
  body .gsh-sub-wrap[data-mid="page16"] .fee-card li::before { background: var(--u-green); }

  /* 이용 약관과 입소신청 */
  body .gsh-sub-wrap[data-mid="page85"] .contract-guide,
  body .gsh-sub-wrap[data-mid="page88"] .gsh-admission-section { padding: 18px 0 42px; background: transparent; }
  body .gsh-sub-wrap[data-mid="page85"] .cg-title,
  body .gsh-sub-wrap[data-mid="page88"] .gsh-admission-card { border: 1px solid var(--u-line); border-radius: 24px; }
  body .gsh-sub-wrap[data-mid="page85"] .cg-title { padding: 34px 22px; background: linear-gradient(120deg, #edf9e5, #f7fce9, #fff0d9); }
  body .gsh-sub-wrap[data-mid="page85"] :is(.cg-title .eyebrow, .cg-icon, .cg-word strong),
  body .gsh-sub-wrap[data-mid="page88"] .gsh-head .label { color: var(--u-green); }
  body .gsh-sub-wrap[data-mid="page85"] :is(.cg-title h2, .cg-card h3),
  body .gsh-sub-wrap[data-mid="page88"] :is(.gsh-head h2, .gsh-health-title) { color: var(--u-deep); }
  body .gsh-sub-wrap[data-mid="page85"] .cg-card,
  body .gsh-sub-wrap[data-mid="page88"] :is(.gsh-admission-card, .gsh-health-box, .gsh-check) { border-color: var(--u-line); background: #fff; }
  body .gsh-sub-wrap[data-mid="page85"] :is(.cg-word, .cg-card) { background: var(--u-soft); border-color: var(--u-line); border-radius: 18px; }
  body .gsh-sub-wrap[data-mid="page85"] .cg-word { border-left-color: var(--u-green); }
  body .gsh-sub-wrap[data-mid="page85"] .cg-notice { background: var(--u-deep); border-radius: 20px; }
  body .gsh-sub-wrap[data-mid="page85"] .cg-card ul,
  body .gsh-sub-wrap[data-mid="page85"] .cg-card li { list-style: none !important; }
  body .gsh-sub-wrap[data-mid="page85"] .cg-card ul { padding-left: 0; }
  body .gsh-sub-wrap[data-mid="page85"] .cg-card li { position: relative; padding-left: 17px; }
  body .gsh-sub-wrap[data-mid="page85"] .cg-card li::marker { content: ""; }
  body .gsh-sub-wrap[data-mid="page85"] .cg-card li::before { content: ""; position: absolute; left: 0; top: .7em; width: 6px; height: 6px; border-radius: 50%; background: var(--u-green); }
  body .gsh-sub-wrap[data-mid="page88"] :is(.address-wrap button, .submit-btn) { background: var(--u-green); }
  body .gsh-sub-wrap[data-mid="page88"] :is(.gsh-check:hover, input:focus, select:focus, textarea:focus) { border-color: var(--u-green); }
  body .gsh-sub-wrap[data-mid="page88"] .gsh-health-box { background: var(--u-soft); }

  /* 일일생활시간표 */
  body .gsh-sub-wrap[data-mid="page7"] .schedule-wrap { padding: 18px 0 42px; }
  body .gsh-sub-wrap[data-mid="page7"] .schedule-header { padding: 34px 20px; border: 1px solid var(--u-line); border-radius: 26px; background: linear-gradient(120deg, #edf9e5, #f7fce9, #fff0d9); }
  body .gsh-sub-wrap[data-mid="page7"] :is(.schedule-header h2, .day-control-date, .timeline-content strong) { color: var(--u-deep); }
  body .gsh-sub-wrap[data-mid="page7"] :is(.schedule-header .icon, .day-control button, .timeline-time) { color: var(--u-green); }
  body .gsh-sub-wrap[data-mid="page7"] :is(.day-control, .day-control-center, .timeline-content) { border-color: var(--u-line); background: var(--u-soft); }
  body .gsh-sub-wrap[data-mid="page7"] .day-control { background: linear-gradient(135deg, #edf9e5, #f7fce9); }
  body .gsh-sub-wrap[data-mid="page7"] .day-control button { background: #fff; border-color: var(--u-line); }
  body .gsh-sub-wrap[data-mid="page7"] :is(.timeline-dot, .timeline-content::before) { background: var(--u-green); }

  /* 프로그램, 목욕, 식단: 날짜·상태 색상은 유지하고 기본 면을 통일한다. */
  body .gsh-sub-wrap[data-mid="page83"] :is(.gsh-bath-nav, .gsh-bath-table td),
  body .gsh-sub-wrap[data-mid="board8"] :is(.gsh-prog-nav, .gsh-prog-table td),
  body .gsh-sub-wrap[data-mid="board2"] :is(#today-diet-widget, .meal-card, .day-card) { border-color: var(--u-line); }
  body .gsh-sub-wrap[data-mid="board2"] .day-card.today {
    border: 3px solid var(--u-green);
    box-shadow: 0 0 0 3px rgba(35, 121, 31, .12);
  }
  body .gsh-sub-wrap[data-mid="page83"] .gsh-bath-nav,
  body .gsh-sub-wrap[data-mid="board8"] .gsh-prog-nav { background: linear-gradient(120deg, #edf9e5, #f7fce9, #fff0d9); }
  body .gsh-sub-wrap[data-mid="board8"] :is(.gsh-prog-print-btn, .gsh-prog-nav button),
  body .gsh-sub-wrap[data-mid="board2"] :is(.diet-print-btn, .arrow-btn) { background: var(--u-green); color: #fff; }
  body .gsh-sub-wrap[data-mid="board2"] #today-diet-widget { background: linear-gradient(120deg, #f5fbf1, #fff); }
  body .gsh-sub-wrap[data-mid="board2"] :is(.tdw-kicker, .meal-icon) { background: var(--u-soft); color: var(--u-green); border-color: var(--u-line); }
  body .gsh-sub-wrap[data-mid="board2"] :is(.tdw-title, .top-title, .meal-name, .origin-title) { color: var(--u-deep); }
  body .gsh-sub-wrap[data-mid="board2"] :is(.meal-list li, .menu-list li) { list-style: none !important; }
  body .gsh-sub-wrap[data-mid="board2"] :is(.meal-list li, .menu-list li)::marker { content: ""; }
  body .gsh-sub-wrap[data-mid="board2"] :is(.meal-list li, .menu-list li)::before { color: var(--u-green); }

  @media (max-width: 760px) {
    body .gsh-sub-wrap:is([data-mid="page5"], [data-mid="page16"], [data-mid="page85"], [data-mid="page88"], [data-mid="page7"], [data-mid="page83"], [data-mid="board8"], [data-mid="board2"]) > .gsh-content { padding: 12px !important; }
    body .gsh-sub-wrap[data-mid="page5"] :is(.admission-qual-header h2, .care-grade-header h2),
    body .gsh-sub-wrap[data-mid="page7"] .schedule-header h2,
    body .gsh-sub-wrap[data-mid="page16"] .fee-header h2,
    body .gsh-sub-wrap[data-mid="page85"] .cg-title h2,
    body .gsh-sub-wrap[data-mid="page88"] .gsh-head h2,
    body .gsh-sub-wrap[data-mid="board2"] .tdw-title { font-size: 28px !important; line-height: 1.3; }
    body .gsh-sub-wrap[data-mid="page83"] .gsh-bath-nav h2,
    body .gsh-sub-wrap[data-mid="board8"] .gsh-prog-nav h2 { font-size: 20px !important; }
    body .gsh-sub-wrap[data-mid="page5"] :is(.admission-qual-title, .care-grade-title),
    body .gsh-sub-wrap[data-mid="page16"] :is(.fee-card-title, .table-head h3),
    body .gsh-sub-wrap[data-mid="page85"] .cg-card h3 { font-size: 21px !important; }
    body .gsh-sub-wrap[data-mid="page5"] :is(.admission-qual-wrap, .care-grade-wrap, .care-flow-wrap, #gshAdmissionPrintBox),
    body .gsh-sub-wrap[data-mid="page16"] :is(.fee-wrap, .price-table-wrap, .bank-wrap),
    body .gsh-sub-wrap[data-mid="page85"] .contract-guide,
    body .gsh-sub-wrap[data-mid="page88"] .gsh-admission-section,
    body .gsh-sub-wrap[data-mid="page7"] .schedule-wrap { padding: 12px 0 28px; }
    body .gsh-sub-wrap[data-mid="page16"] .fee-header { padding: 34px 18px; margin-bottom: 24px; }
    body .gsh-sub-wrap[data-mid="page16"] .fee-header::before { inset: 8px; }
    body .gsh-sub-wrap[data-mid="page16"] .fee-summary { gap: 12px; margin-bottom: 22px; }
    body .gsh-sub-wrap[data-mid="page16"] .fee-grid { gap: 14px; }
    body .gsh-sub-wrap[data-mid="page16"] :is(.fee-card, .select-card, .result-card) { min-width: 0; padding: 22px 18px; }
    body .gsh-sub-wrap[data-mid="page16"] .fee-flow { padding: 22px 18px; }
    body .gsh-sub-wrap[data-mid="page16"] .result-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body .gsh-sub-wrap[data-mid="page16"] .result-item { min-width: 0; padding: 14px 8px; }
    body .gsh-sub-wrap[data-mid="page16"] .result-item .item-value { font-size: clamp(14px, 4vw, 19px); overflow-wrap: anywhere; }
    body .gsh-sub-wrap[data-mid="page16"] .bank-main { min-width: 0; gap: 12px; }
    body .gsh-sub-wrap[data-mid="page16"] .bank-main > div:last-child { min-width: 0; }
    body .gsh-sub-wrap[data-mid="page16"] .bank-account { font-size: clamp(17px, 5vw, 23px); overflow-wrap: anywhere; }
    body .gsh-sub-wrap[data-mid="page16"] .table-card { min-width: 0; overflow: hidden; }
    body .gsh-sub-wrap[data-mid="page16"] .price-table-box { width: 100%; max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; -webkit-overflow-scrolling: touch; scrollbar-width: thin; }
    body .gsh-sub-wrap[data-mid="page16"] .price-table { min-width: 850px; }
    body .gsh-sub-wrap[data-mid="page16"] .price-table th,
    body .gsh-sub-wrap[data-mid="page16"] .price-table td { white-space: nowrap; padding: 10px 7px; }
    body .gsh-sub-wrap[data-mid="page5"] :is(.admission-qual-header, .care-grade-header),
    body .gsh-sub-wrap[data-mid="page7"] .schedule-header,
    body .gsh-sub-wrap[data-mid="page85"] .cg-title { padding: 26px 18px; }
    body .gsh-sub-wrap[data-mid="page85"] .cg-grid { grid-template-columns: minmax(0, 1fr); }
    body .gsh-sub-wrap[data-mid="page88"] .gsh-admission-card { padding: 24px 18px; }
    body .gsh-sub-wrap[data-mid="page88"] :is(.grid, .gsh-check-grid) { grid-template-columns: minmax(0, 1fr); }
    body .gsh-sub-wrap[data-mid="board2"] :is(#today-diet-widget, #diet-app) { margin: 12px 0; }
    body .gsh-sub-wrap[data-mid="board2"] :is(.tdw-inner, #diet-app) { padding-inline: 12px; }
  }
}
