/* css/s-clinic.css — 기관 모드 화면(#/clinic), 설치 권유 카드, 자유 탐험 고르기·장소 창 덧붙임. 폰 360px 넘침 없음 */

/* ── 기관 모드 ── */
.cl-screen { padding-bottom: 48px; }
.cl-kid-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 8px; margin: 8px 0; }
.cl-kid { min-height: var(--touch-parent); overflow-wrap: anywhere; }
.cl-actions { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 8px; margin: 8px 0 12px; }
.cl-actions > * { min-height: var(--touch-parent); }
.cl-sessions h3 { font-size: var(--fs-body); margin: 12px 0 6px; }
.cl-session-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 6px 0; border-top: 1px solid var(--parent-border); }
.cl-session-t { flex: 1 1 auto; min-width: 0; overflow-wrap: anywhere; font-size: var(--fs-small); }
.cl-more { margin-top: 12px; }
.cl-foot { margin-top: 16px; }
.cl-sheet h3 { font-size: var(--fs-body); margin: 14px 0 6px; }
.cl-cards { display: grid; grid-template-columns: 1fr; gap: 6px; }
.cl-card { text-align: left; justify-content: flex-start; min-height: var(--touch-parent); overflow-wrap: anywhere; }
.cl-hw-out { margin-top: 12px; display: grid; gap: 8px; justify-items: start; }
.cl-qr svg { width: 220px; max-width: 100%; height: auto; display: block; background: #fff; }
.cl-link { font-size: var(--fs-caption); overflow-wrap: anywhere; word-break: break-all; max-width: 100%; }
.cl-report-preview { overflow-x: auto; }
.cl-report { font-size: 13px; line-height: 1.5; color: #111; }
.cl-report h1 { font-size: 17px; margin: 0 0 4px; }
.cl-report h2 { font-size: 14px; margin: 10px 0 4px; }
.cl-report table { width: 100%; border-collapse: collapse; font-size: 12px; }
.cl-report th, .cl-report td { border: 1px solid #bbb; padding: 3px 4px; vertical-align: top; text-align: left; overflow-wrap: anywhere; }
.cl-report__note { font-weight: 600; }
.p-clinic-bar { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
@media print {
  #print-area .cl-report table { font-size: 9pt; }
  #print-area .cl-report th, #print-area .cl-report td { border: 1px solid #888; padding: 2pt 3pt; }
  #print-area .cl-hw-print svg { width: 50mm; height: 50mm; }
}

/* ── 설치 권유(어른 화면만) ── */
.inst-card { margin: 8px 0; }
.inst-card__sum { cursor: pointer; font-weight: 600; min-height: 32px; }
.inst-card__row { margin-top: 8px; }
.inst-steps { margin: 0; padding-left: 0; list-style: none; display: grid; gap: 12px; }
.inst-steps li { display: flex; align-items: center; gap: 12px; }
.inst-ic { display: inline-flex; width: 44px; height: 44px; align-items: center; justify-content: center; border: 1px solid var(--parent-border); border-radius: 12px; color: #2563EB; flex: 0 0 auto; }

/* ── 자유 탐험 ── */
.play-explore__head { display: flex; align-items: center; gap: 12px; }
.play-explore__head img, .play-explore__head .scene-ch { max-width: 96px; height: auto; }
.play-tile--game { border-style: dashed; }
.home-psheet-go { margin-top: 12px; display: grid; }
.home-psheet-go > * { min-height: var(--button-height); }
.home-peek .home-psheet-pic { opacity: .85; }
.home-psheet-pic.is-fogged { filter: blur(2px) grayscale(.3); }
