@charset "utf-8";
/* 학교 상세 공립 초·중(/school/public/elementary-middle/{슬러그} · BC pub_ele_bc_temp_3 · ON pub_ele_on_temp_3) 모바일 전용 재배치 — 사이클 13 (mobile 프로젝트)
   확정 목업 「나안」: 짧은 상단(교육청 · 이름 · 메타) · 고정 알약 탭 · 관심학교 한 줄 + 지표 2×2 작은 카드 ·
   소개 4줄 말줄임 · 모든 카드를 접지 않고 압축(기본 정보 격자 · 주변 거주자 작은 칸 · 활동 압축 줄 · 지도 220px · 갤러리 가로 넘김 · 상담 카드 순서 조정).
   폭 767px 이하에서만 적용 — PC·태블릿(768px~)은 style.css 와 템플릿 인라인 CSS 그대로. 마크업·링크·데이터·기존 스크립트 무변경.
   요소 순서는 지금 그대로(헤더 → 탭 → 관심학교·지표 → (BC 소개 영상) → 본문 → 상담 신청)이고 #school-info-temp · main · .container 의 표시 방식은 바꾸지 않는다.
   BC 소개 영상 블록(section.ytv)은 모양 불변: 컨테이너의 좌우 패딩을 바꾸지 않고(0 그대로 → 블록 폭 390) 좌우 여백은 자식 구역(#overview · #dp-vacancy · .content-section · .cta-section)에 준다.
   JS 가 인라인 display 로 숨기는 요소(#feature1~3 · #considerationArea · tr.school_website · #ggl-map · .district_description · #gallery · #gallery-nav ·
   #managed-programs · #managed-nav · #dp-vacancy · #ige_rank · .programs-content · .accordion-content)와 .loading-box 는 display 를 덮지 않아 숨은 채로 남는다.
   새 스크립트는 index.php 의 <script id="mc-school"> 하나(소개 「더보기/접기」 클래스만 토글). */

/* 새 단추는 PC·태블릿에서 화면 높이 0 (스크립트가 못 돌아도 안 보임) */
.mc-desc-more { display: none; }

@media (max-width: 767px) {

  :root {
    --mcs-teal: #0b4f54; --mcs-teal2: #0e6a70; --mcs-ink: #13232b; --mcs-sub: #5d6c73; --mcs-line: #e3e9ea;
    --mcs-bg: #f4f8f7; --mcs-mint: #e4f1f0; --mcs-yel: #ffd24a;
  }

  /* 사이트 공통 CSS 가 body 에 overflow-x:hidden 을 줘서 body 가 스크롤 상자가 되고, 그 안의 .nav-tabs(position:sticky)가 끝내 붙지 못한다.
     이 화면에서만 clip(잘라 내되 스크롤 상자는 만들지 않음)으로 바꿔 탭 막대가 위에 붙게 한다. clip 을 모르는 브라우저는 지금 그대로다. */
  html body { overflow: clip; }

  #school-info-temp { background: var(--mcs-bg); }

  /* ── A. 짧은 상단: 교육청 링크(작은 글씨) · 학교 이름 · 메타 줄 ── */
  #school-info-temp .sch-header {
    padding: 14px 0 13px; background: linear-gradient(160deg, #0b4f54, #0a3f44); box-shadow: none;
  }
  #school-info-temp .sch-header::before, #school-info-temp .sch-header::after { display: none; }
  /* 사이트 공통 res.css 가 모바일에서 .container 에 padding:0 !important 를 주므로 이 화면의 좌우 여백은 !important 로 */
  #school-info-temp .sch-header > .container { padding: 0 16px !important; }
  #school-info-temp .school-header { text-align: left; }
  #school-info-temp .school-header > div:first-child { margin-bottom: 3px !important; }
  /* 인라인 링크 — JS 가 .hide() 로 숨기는 요소라 display 는 건드리지 않고, 위아래 안쪽 여백으로 누르는 영역만 36px 로 키운다(줄 높이·헤더 높이 불변) */
  #school-info-temp .school-header #district-link { padding: 14px 0 8px; font-size: 12.5px !important; font-weight: 700; color: #a9d6d3 !important; }
  #school-info-temp .school-header > div:nth-child(2) { justify-content: flex-start !important; gap: 0 !important; }
  #school-info-temp .sch-header h1.school-title {
    margin: 0 0 3px; font-size: 23px !important; line-height: 1.25; font-weight: 800; letter-spacing: -.02em; word-break: keep-all; overflow-wrap: anywhere;
  }
  #school-info-temp .sch-header .school-meta { margin: 0; font-size: 12.5px; line-height: 1.45; opacity: .92; }

  /* ── B. 고정 알약 탭 (헤더 바로 아래 · 지금처럼 화면 위에 붙음) ── */
  #school-info-temp .nav-tabs { top: 61px; background: var(--mcs-bg); box-shadow: none; border-bottom: 1px solid var(--mcs-line); }
  #school-info-temp .nav-tabs > .container { padding: 0; overflow: visible; }
  #school-info-temp .nav-tabs ul { gap: 6px; padding: 5px 14px; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  #school-info-temp .nav-tabs ul::-webkit-scrollbar { display: none; }
  #school-info-temp .nav-tabs ul::before, #school-info-temp .nav-tabs ul::after { display: none; }
  #school-info-temp .nav-tabs a {
    box-sizing: border-box; display: flex; align-items: center; min-height: 36px; padding: 6px 14px; border: 0; border-radius: 999px;
    font-size: 13px; line-height: 20px; font-weight: 700; white-space: nowrap; color: var(--mcs-sub); background: transparent; transition: none;
  }
  #school-info-temp .nav-tabs a:hover { background: transparent; color: var(--mcs-ink); }
  #school-info-temp .nav-tabs a.active, #school-info-temp .nav-tabs a.active:hover { background: var(--mcs-teal); color: #fff; }

  /* 탭이 가리키는 자리: 고정 검색줄(실측 61) 밑에 붙은 탭 막대(실측 47) 아래 + 4px */
  #school-info-temp #overview, #school-info-temp #programs, #school-info-temp #activities, #school-info-temp #location,
  #school-info-temp #gallery, #school-info-temp #managed-programs, #school-info-temp #admission, #school-info-temp #contact {
    scroll-margin-top: 112px;
  }

  /* ── C. 관심학교 한 줄 + 지표 2×2 작은 카드 (순서 그대로 — #overview 상자는 유지) ── */
  #school-info-temp .main-content { margin: 0; padding-bottom: 12px; }
  /* 사이트 공통 .container 의 overflow:hidden 은 스크롤 상자가 되어, 맨 위 자식(#overview)에 준 scroll-margin 을 상자 윗선에서 잘라 버린다
     (「학교 소개」 탭이 대상을 탭 막대 밑에 숨김). 가로 넘침은 그대로 잘라 내되 스크롤 상자는 만들지 않는 clip 으로 바꾼다.
     좌우 패딩은 건드리지 않는다 — 패딩이 생기면 BC 소개 영상 블록의 폭이 390 → 362 로 줄어 모양이 바뀐다. */
  #school-info-temp .main-content > .container { overflow-x: clip; overflow-y: visible; }
  /* 좌우 14px 여백은 자식 구역이 진다 (영상 블록은 이 목록에 없다 → 390 꽉 찬 폭 그대로) */
  #school-info-temp #overview, #school-info-temp #dp-vacancy, #school-info-temp .content-section, #school-info-temp .cta-section {
    margin-left: 14px; margin-right: 14px;
  }
  #school-info-temp #overview {
    margin-top: 0; margin-bottom: 10px; padding: 10px 0 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; animation: none;
  }
  #school-info-temp #overview:hover { box-shadow: none; }
  /* 지표를 담는 인라인 격자 상자 2개(BC·ON 공통, 각 2카드): 열 수만 2 로 덮는다 — .hero-section > div 포괄 선택자와 display:contents 는 쓰지 않는다
     (BC 의 숨은 #ige_rank 배너를 되살리기 때문) */
  #school-info-temp .hero-section > .favorite-area ~ div[style*="grid-template-columns"] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px !important; margin: 0 0 8px !important;
  }
  #school-info-temp .hero-section > .favorite-area ~ div[style*="grid-template-columns"] + div[style*="grid-template-columns"] { margin-bottom: 0 !important; }
  #school-info-temp .hero-section .favorite-area { margin: 0 0 8px; text-align: center; }
  #school-info-temp .hero-section .favorite-area button {
    box-sizing: border-box; display: flex; width: 100%; min-height: 42px; padding: 6px 16px; justify-content: center; border-radius: 999px;
    background: #fff; border: 1.5px solid var(--mcs-teal); color: var(--mcs-teal); font-size: 14px; font-weight: 700;
  }
  #school-info-temp .hero-section .favorite-area button.active { background: var(--mcs-teal); color: #fff; }
  /* 상위 10% 학교만 JS 가 켜는 추천 배너(BC): display 는 건드리지 않고, 켜졌을 때만 여백을 줄인다 */
  #school-info-temp #ige_rank { margin-top: 8px !important; padding: 8px 12px !important; }
  #school-info-temp #ige_rank p { font-size: 12.5px !important; line-height: 1.5; }

  #school-info-temp .hero-section .metric-card {
    box-sizing: border-box; min-width: 0; margin: 0; padding: 9px 11px; text-align: left; background: #fff;
    border: 1px solid var(--mcs-line); border-radius: 14px; box-shadow: none;
  }
  #school-info-temp .hero-section .metric-card:hover { box-shadow: none; }
  /* 라벨은 글줄로 흘려 「?」 설명 아이콘이 마지막 글자 옆에 붙게 한다(flex 로 두면 긴 라벨에서 아이콘이 홀로 한 줄을 차지) */
  #school-info-temp .hero-section .metric-label {
    display: block !important; margin: 0 0 3px; font-size: 11px; line-height: 1.45; text-align: left; word-break: keep-all; color: var(--mcs-sub);
  }
  #school-info-temp .hero-section .metric-label .info-tooltip { display: inline-block; vertical-align: middle; }
  #school-info-temp .hero-section .metric-value { font-size: 20px; line-height: 1.2; font-weight: 800; color: var(--mcs-teal); }
  #school-info-temp .hero-section .metric-badge {
    margin-top: 4px; padding: 2px 8px; border-radius: 999px; font-size: 11px; line-height: 1.4; word-break: keep-all; background: #eef4f3;
  }
  #school-info-temp .hero-section .metric-label .tooltip-icon {
    width: 15px; height: 15px; margin-left: 4px !important; font-size: 11px !important; line-height: 1; background: #d5e4e3 !important; color: #3d5057;
  }
  /* 설명 말풍선(마우스를 올리거나 누르면 보임)은 카드 폭 안에 들어오게 — 왼쪽 정렬 라벨의 말풍선이 화면 밖으로 잘리지 않도록 */
  #school-info-temp .hero-section .metric-card { position: relative; }
  #school-info-temp .hero-section .metric-label .info-tooltip { position: static; }
  #school-info-temp .hero-section .metric-label .tooltip-text {
    left: 0; right: 0; width: auto; margin-left: 0; bottom: calc(100% + 6px); font-size: 12px; z-index: 5;
  }
  #school-info-temp .hero-section .metric-label .tooltip-text::after { display: none; }
  #school-info-temp .hero-section .lock-flag { display: block; font-size: 12px; }
  #school-info-temp .hero-section .lock-flag .lock-flag-btn {
    box-sizing: border-box; min-height: 36px; margin: 0; padding: 6px 12px; border-radius: 999px; font-size: 12px; font-weight: 800; line-height: 1.3;
  }

  /* ── D. 본문 카드 공통 압축 ── */
  #school-info-temp .content-section { gap: 0; margin-top: 4px; margin-bottom: 0; }
  #school-info-temp .card {
    margin: 0 0 8px; padding: 10px 12px; border: 1px solid var(--mcs-line); border-radius: 16px; box-shadow: none; background: #fff;
  }
  #school-info-temp .card:hover { box-shadow: none; }
  #school-info-temp .card-header { margin-bottom: 6px; padding-bottom: 4px; border-bottom: 1px solid var(--mcs-line); }
  #school-info-temp .card-header .icon { width: auto; height: auto; margin-right: 8px; font-size: 17px; line-height: 1.2; }
  /* style.css 가 #school-info-temp h1~h6 에 font-size:1.2em !important 를 줘서, 제목 글자 크기는 !important 로 */
  #school-info-temp .card-header h3 { font-size: 16px !important; line-height: 1.3; font-weight: 800; color: var(--mcs-ink); word-break: keep-all; }

  /* 소개: 설명은 스크립트가 mc-desc-clamp 를 붙였을 때만 4줄 — 스크립트가 없으면 전부 보인다 */
  #school-info-temp #sch_description { margin-bottom: 8px !important; font-size: 12.5px; line-height: 1.7 !important; }
  #school-info-temp #sch_description.mc-desc-clamp { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  #school-info-temp #sch_description.mc-desc-clamp.mc-desc-open { display: block; -webkit-line-clamp: unset; overflow: visible; }
  /* 터치 높이 36px — 설명 아래 여백(8px)을 위로 당겨 덮어 전체 길이는 거의 그대로 */
  #school-info-temp .mc-desc-more:not([hidden]) {
    display: inline-flex; align-items: center; min-height: 36px; margin: -6px 0 0; padding: 0 2px; background: none; border: 0; font-size: 12.5px; font-weight: 800; color: var(--mcs-teal2); cursor: pointer;
  }
  #school-info-temp .card > div[style*="padding: 10px 0"] { padding: 0 !important; }
  #school-info-temp .card > div[style*="padding: 10px 0"] > h4 { margin-bottom: 6px !important; font-size: 13.5px !important; }
  #school-info-temp #ige-anchor-feat1, #school-info-temp #considerationArea {
    margin-top: 8px !important; padding: 10px 12px !important; border-radius: 12px !important;
  }
  #school-info-temp #ige-anchor-feat1 > h4, #school-info-temp #considerationArea > h4 {
    margin-bottom: 4px !important; font-size: 13.5px !important; line-height: 1.4;
  }
  #school-info-temp #ige-anchor-feat1 li, #school-info-temp #considerationArea li { padding: 6px 0 !important; gap: 8px !important; }
  #school-info-temp #ige-anchor-feat1 li > span:first-child, #school-info-temp #considerationArea li > span:first-child { font-size: 13px !important; }
  #school-info-temp .feature-desc, #school-info-temp .consideration-desc { font-size: 12.5px; line-height: 1.6 !important; }

  /* 기본 정보 표: 이름 칸 96px · 값 칸 (사이트 CSS 의 !important 셀 여백을 이 화면에서만 줄임) — 행 높이 ≥ 36px */
  #school-info-temp .info-table { table-layout: fixed; }
  #school-info-temp .info-table td { padding: 8px 4px !important; font-size: 12.5px; line-height: 20px; word-break: break-word; }
  #school-info-temp .info-table td:first-child { width: 96px; font-size: 12px; }
  #school-info-temp .info-table td [style*="font-size: 1.1rem"] { font-size: 13.5px !important; }
  #school-info-temp .info-table td small { font-size: 12px; }
  #school-info-temp .info-table td .tooltip-icon { font-size: 12px !important; }
  #school-info-temp .info-table td a { display: inline-flex; align-items: center; min-height: 36px; }

  /* 진행회원 전용 「주변 거주자」 패널: 장식(머리 아이콘 · 접기 단추 · 머리 설명)만 가리고 글자·단추·링크는 그대로 */
  #school-info-temp .nms-member { margin: 0 0 10px; }
  #school-info-temp .nms-head-icon, #school-info-temp .nms-collapse, #school-info-temp .nms-head-text p { display: none; }
  #school-info-temp .nms-panel { padding: 0 12px 12px; border-radius: 16px; }
  #school-info-temp .nms-head { grid-template-columns: minmax(0, 1fr); min-height: 0; padding: 8px 0; }
  #school-info-temp .nms-head-text h4 { font-size: 15px !important; }
  #school-info-temp .nms-strip { margin-top: 6px; gap: 4px; padding: 6px 10px; flex-direction: column; align-items: stretch; }
  #school-info-temp .nms-strip-badge { box-sizing: border-box; min-height: 36px; padding: 5px 12px; justify-content: center; }
  #school-info-temp .nms-strip-copy { font-size: 12px; gap: 6px; }
  #school-info-temp .nms-lock-hint { margin-top: 2px; font-size: 12px; }
  #school-info-temp .nms-lock-hint a { display: inline-flex; align-items: center; min-height: 36px; }
  #school-info-temp .nms-profile { margin-top: 6px; padding: 8px; }
  #school-info-temp .nms-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; margin-top: 6px; }
  #school-info-temp .nms-profile-head h5 { font-size: 14px !important; }
  #school-info-temp .nms-profile-head p { font-size: 11px; }
  #school-info-temp .nms-tag, #school-info-temp .nms-metric small, #school-info-temp .nms-ethnicity-head span { font-size: 11px; }
  #school-info-temp .nms-profile-head { gap: 4px; }
  #school-info-temp .nms-metric, #school-info-temp .nms-ethnicity { padding: 5px 9px; border-radius: 12px; }
  /* 칸 하나 = 윗줄(작은 아이콘 + 이름) · 아랫줄(값 · 잠금 단추) — 마크업 순서(아이콘 · 이름 · 값 · 안내)는 그대로 */
  #school-info-temp .nms-metric { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; column-gap: 7px; }
  #school-info-temp .nms-metric-icon { width: 20px; height: 20px; margin: 0; border-radius: 7px; font-size: 13px; }
  #school-info-temp .nms-metric p { margin: 0; font-size: 11.5px; }
  #school-info-temp .nms-metric-value { grid-column: 1 / -1; margin-top: 2px; min-height: 0; font-size: 20px; }
  #school-info-temp .nms-metric small { grid-column: 1 / -1; margin-top: 4px; }
  #school-info-temp .nms-metric-value .going-flag-btn, #school-info-temp .nms-chips .going-flag-btn { box-sizing: border-box; min-height: 36px; padding: 5px 10px; font-size: 12px; }
  #school-info-temp .nms-ethnicity { margin-top: 7px; }
  #school-info-temp .nms-ethnicity-head { margin-bottom: 6px; gap: 2px; }
  #school-info-temp .nms-note { margin-top: 7px; padding: 7px 9px; font-size: 11px; line-height: 1.45; }

  /* 교육 과정 · 설명회 · 활동 (display 는 건드리지 않는다: BC .programs-content · ON .accordion-content 의 열고 닫기는 인라인 토글) */
  #school-info-temp #programs > .card-header { min-height: 40px; margin-bottom: 0; padding-bottom: 0; border-bottom: 0; }
  #school-info-temp #programs .programs-content, #school-info-temp #programs .accordion-content { margin-top: 8px; }
  /* 열린 교육 과정 항목(common.js 가 인라인 padding 20px · margin-top 25px · 제목 margin-bottom 15px · 본문 line-height 1.8 을 줌; 3줄 말줄임은 그대로) */
  #school-info-temp .special-program-item { padding: 12px !important; margin-top: 8px !important; border-radius: 12px !important; }
  #school-info-temp .special-program-item > h4, #school-info-temp .special-program-item > h5 { margin-bottom: 6px !important; font-size: 14.5px !important; line-height: 1.4; }
  #school-info-temp .special-program-item > p { font-size: 12.5px; line-height: 1.6 !important; }
  #school-info-temp .special-program-item .program-link { box-sizing: border-box; min-height: 40px; margin-top: 8px; padding: 8px 14px; border-radius: 10px; font-size: 13px; }
  #school-info-temp #seminar { padding: 0; border: 0; background: transparent; }
  #school-info-temp #seminar .program-section > div {
    padding: 14px !important; border: 0 !important; border-radius: 18px !important; background: linear-gradient(160deg, #0b4f54, #0a3f44) !important;
  }
  #school-info-temp #seminar .program-section p { margin-bottom: 10px !important; font-size: 12.5px; line-height: 1.6 !important; color: #e4f1f0 !important; }
  #school-info-temp #seminar .program-section p strong { color: #fff !important; }
  #school-info-temp #seminar-ele {
    box-sizing: border-box; min-height: 44px; padding: 8px 16px; border-radius: 12px; background: var(--mcs-yel); color: #2d2300; font-size: 14px; font-weight: 800; box-shadow: none;
  }
  #school-info-temp #activities > .card-header { margin-bottom: 8px !important; }
  #school-info-temp .activities-grid { grid-template-columns: minmax(0, 1fr); gap: 8px; margin-top: 4px; }
  #school-info-temp .activity-category { padding: 10px 12px; border-radius: 12px; }
  #school-info-temp .activity-category h5 { margin-bottom: 4px; font-size: 14px !important; }
  #school-info-temp .activity-category li { padding: 0; font-size: 12.5px; }
  /* BC 활동 줄은 li 안의 단추(.act-btn): li 여백을 없애고 단추 자체를 36px 로 — 줄 간격은 지금보다 조금만 커진다 */
  #school-info-temp .activity-category .act-btn { box-sizing: border-box; align-items: center; min-height: 36px; padding: 0; font-size: 12.5px; }
  #school-info-temp .activity-category .act-btn p { margin: 0; }

  /* 위치: 지도 220px(JS 가 인라인으로 450px 를 줌) · 설명 상자 압축 */
  #school-info-temp #ggl-map { min-height: 0 !important; margin-bottom: 10px; gap: 8px !important; }
  #school-info-temp #ggl-map:not(.viewMap) iframe { height: 220px !important; }
  #school-info-temp #ggl-map.viewMap { width: calc(100% - 24px); height: calc(100% - 24px) !important; gap: 0 !important; margin-bottom: 0; }
  #school-info-temp .viewMap .map-btn-area { padding: 8px; flex-shrink: 0; }
  #school-info-temp .map-btn-area button { box-sizing: border-box; min-height: 36px; font-size: 12px; padding: 4px 10px; }
  #school-info-temp .location-overview { margin-top: 10px !important; padding: 12px !important; gap: 6px !important; border-radius: 12px !important; }
  #school-info-temp .location-overview h4 { margin-bottom: 6px !important; font-size: 14px !important; }
  #school-info-temp .location-overview p { margin-bottom: 8px !important; font-size: 12.5px; line-height: 1.6; }
  #school-info-temp .location-overview > div { margin-top: 0 !important; }
  /* 교육청 상자(common.js 가 인라인으로 padding 15px 20px · 0.9rem 을 줌) */
  #school-info-temp #district-code-link { padding: 10px 12px !important; font-size: 12.5px !important; line-height: 1.5 !important; border-radius: 12px !important; }
  #school-info-temp #district-code-link > div[style*="margin-top"] { margin-top: 4px !important; }
  #school-info-temp #district-code-link > div[style*="margin-bottom"] { margin-bottom: 3px !important; }

  /* 갤러리: 한 줄 가로 넘김(사진·설명·확대 열기는 그대로) */
  #school-info-temp #gallery { margin-bottom: 12px !important; }
  #school-info-temp .gallery-container { margin-top: 0; }
  #school-info-temp .image-gallery {
    flex-direction: row; gap: 8px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding-bottom: 2px;
  }
  #school-info-temp .image-gallery::-webkit-scrollbar { display: none; }
  #school-info-temp .image-gallery .img-bento, #school-info-temp .image-gallery .img-bento-set { flex-direction: row; width: auto; gap: 8px; flex: 0 0 auto; }
  #school-info-temp .image-gallery .img-bento-box,
  #school-info-temp .image-gallery .img-bento-box.img-type-a,
  #school-info-temp .image-gallery .img-bento-box.img-type-b,
  #school-info-temp .image-gallery .img-bento-box.img-type-c {
    flex: 0 0 210px; width: 210px; height: 130px; min-height: 0 !important; border-radius: 12px; scroll-snap-align: start;
  }
  #school-info-temp .image-gallery .img-bento-desc { padding: 8px 10px; }
  #school-info-temp .image-gallery .img-bento-desc h3 { font-size: 13px !important; }
  #school-info-temp .image-gallery .img-bento-desc p { font-size: 11px; line-height: 15px; max-height: 15px; -webkit-line-clamp: 1; }

  #school-info-temp #review { margin-bottom: 12px !important; }

  /* 후기: 제목이 한 글자씩 깨지지 않게 설명 줄을 아래로 내리고 버튼 2칸 */
  #school-info-temp .ige-school-review .card-header { flex-wrap: wrap; }
  #school-info-temp .ige-school-review .card-header h3 { flex: 1 1 0; min-width: 0; }
  #school-info-temp .ige-school-review .card-header p { order: 3; flex: 0 0 100%; margin: 4px 0 0; font-size: 12px; line-height: 1.5; color: var(--mcs-sub); }
  #school-info-temp .ige-school-review-empty { margin-top: 10px !important; padding: 12px !important; border-radius: 12px !important; font-size: 12.5px; }
  #school-info-temp .ige-school-review-actions { margin-top: 12px !important; gap: 8px !important; }
  #school-info-temp .ige-school-review-actions .sch-btn { flex: 1 1 0; min-width: 0; min-height: 44px; padding: 8px 10px; border-radius: 12px; font-size: 13px; line-height: 1.3; word-break: keep-all; }

  /* ── E. 사이드바 카드(맞춤형 분석 · 입학 현황 · 무료 입학 상담 · 주거 안내) ── */
  #school-info-temp .sidebar { display: flex; flex-direction: column; }
  #school-info-temp .sidebar > .card[style*="brand-navy"] { order: 9; border: 0; border-radius: 16px; padding: 14px !important; }
  #school-info-temp .sidebar > .card[style*="brand-navy"] h3 { margin-bottom: 6px !important; font-size: 16px; }
  #school-info-temp .sidebar > .card[style*="brand-navy"] p { margin-bottom: 12px !important; font-size: 12.5px; line-height: 1.6; }
  #school-info-temp .sidebar .sch-btn { box-sizing: border-box; min-height: 44px; padding: 8px 14px; border-radius: 12px; font-size: 14px; }
  #school-info-temp .sidebar .card [style*="padding: 20px"] { padding: 12px !important; }
  #school-info-temp .sidebar .card [style*="padding: 15px"] { padding: 10px !important; margin-top: 10px !important; }
  #school-info-temp .sidebar .card p { font-size: 12.5px; }
  #school-info-temp .sidebar .card [style*="line-height: 1.8"] { line-height: 1.6 !important; margin-bottom: 10px !important; }
  #school-info-temp .sidebar h4, #school-info-temp .application-status h4 { margin-bottom: 8px !important; font-size: 14px !important; line-height: 1.4; }
  #school-info-temp .application-status { padding: 12px; margin-bottom: 12px; }
  #school-info-temp .application-status .status-item { padding: 8px 0; }
  #school-info-temp .sidebar .card [style*="margin-top: 25px"] { margin-top: 14px !important; }
  #school-info-temp .sidebar select { min-height: 40px; font-size: 14px; }

  /* ── F. 끝: 상담 신청(CTA) — 두 단추 2칸, 색은 목업대로(관심학교 = 노랑 · 무료 상담 = 흰색) ── */
  #school-info-temp .cta-section {
    margin-top: 4px; margin-bottom: 0; padding: 13px 14px; border-radius: 18px; background: linear-gradient(160deg, #0b4f54, #0a3f44); box-shadow: none;
  }
  #school-info-temp .cta-section h2 { margin-bottom: 4px; font-size: 17px; line-height: 1.35; }
  #school-info-temp .cta-section p { margin-bottom: 12px; font-size: 12.5px; line-height: 1.55; }
  #school-info-temp .cta-section .cta-buttons { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0; }
  #school-info-temp .cta-section .cta-buttons > * {
    box-sizing: border-box; display: flex; align-items: center; justify-content: center; min-height: 44px; margin: 0 !important; padding: 8px 10px !important;
    border-radius: 12px !important; font-size: 13px !important; line-height: 1.3; font-weight: 800; text-align: center;
  }
  #school-info-temp .cta-section .cta-buttons > button.btn_favorite { background: var(--mcs-yel) !important; color: #2d2300 !important; border: 0 !important; }

  /* ── G. 줄바꿈: 사이트 공통 CSS 가 글자 단위로 끊는 안내 문단·제목은 어절 단위로(목업과 같게). 긴 영문·주소는 anywhere 로 넘침 방지 ── */
  #school-info-temp .cta-section h2, #school-info-temp .cta-section p, #school-info-temp .sidebar .card p,
  #school-info-temp .location-overview p, #school-info-temp .feature-desc, #school-info-temp .consideration-desc,
  #school-info-temp #sch_description, #school-info-temp #seminar .program-section p, #school-info-temp .special-program-item > p {
    word-break: keep-all; overflow-wrap: anywhere;
  }
}
