/* ============================================================================
 * mobile-concept-tc.css — 관리형유학 /IGE_Total_Care 모바일(≤767px) 전용 배치 (opt-in 프로젝트 mobile · 사이클 3)
 * 확정 목업 「나안」 규격(앞 두 사이클과 같은 값, 강조색은 이 페이지의 호박색). 폭 ≤ 767px · body.page-tc 한정, 768px 이상 무영향.
 * 마크업·스크립트·링크는 그대로 두고 배치·모양만 바꾼다 (기능 100% 보존).
 * ========================================================================== */

@media (max-width: 767px) {

    body.page-tc {
        --mh-a: #d97706; --mh-a2: #b45309; --mh-ink: #1c1917; --mh-sub: #6b625a;
        --mh-line: #ece4d8; --mh-bg: #faf6ef; --mh-mint: #fff4dc; --mh-yel: #ffd24a;
        background: var(--mh-bg);
    }
    body.page-tc [id^="section-"] { scroll-margin-top: 84px; }

    /* ---------- C1 짧은 상단 ---------- */
    body.page-tc .hero { padding: 14px 16px 12px; text-align: left; background: #0f172a; border-bottom: 3px solid var(--mh-a); }
    body.page-tc .hero::before { display: none; }
    body.page-tc .hero .hero-inner { display: flex; flex-direction: column; padding: 0; max-width: none; margin: 0; }
    body.page-tc .hero .hero-badge { display: none; }
    body.page-tc .hero .hero-badge--heritage { display: block; order: -2; margin: 0 0 2px; padding: 0; background: none; border: 0; font-size: 11.5px; color: #fcd9a0; text-align: left; }
    body.page-tc .hero .hero-lead { order: -1; margin: 0 0 3px; font-size: 11.5px; color: #fcd9a0; opacity: 1; text-align: left; max-width: none; }
    body.page-tc .hero .hero-title { margin: 0 0 4px; font-size: 18px; line-height: 1.35; letter-spacing: -.02em; text-align: left; word-break: keep-all; }
    body.page-tc .hero .hero-title em { color: var(--mh-yel); font-style: normal; }
    body.page-tc .hero .hero-stats { display: flex; justify-content: flex-start; gap: 14px; margin-top: 8px; }
    body.page-tc .hero .hero-stat { display: flex; gap: 4px; align-items: baseline; padding: 0; text-align: left; }
    body.page-tc .hero .hero-stat + .hero-stat::before { display: none; }
    body.page-tc .hero .hero-stat .num { font-size: 14px; color: var(--mh-yel); font-weight: 800; }
    body.page-tc .hero .hero-stat .lbl { font-size: 12px; opacity: .9; margin: 0; }

    /* ---------- 바로가기 4칸 (기존 sub-nav 재스타일 — 링크·자동 강조 그대로) ---------- */
    body.page-tc .sub-nav { position: static; box-shadow: none; border: 0; background: var(--mh-bg); padding: 12px 14px 4px; }
    body.page-tc .sub-nav .container { padding: 0; max-width: none; }
    body.page-tc .sub-nav .sub-nav-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; padding: 0; overflow: visible; justify-content: stretch; }
    body.page-tc .sub-nav .sub-nav-list li { list-style: none; margin: 0; }
    body.page-tc .sub-nav .sub-nav-chip { display: grid; place-items: center; gap: 2px; min-height: 56px; padding: 8px 2px; background: #fff; border: 1px solid var(--mh-line); border-radius: 14px; font-size: 12px; font-weight: 800; color: var(--mh-ink); text-align: center; white-space: normal; box-shadow: none; }
    body.page-tc .sub-nav .sub-nav-chip::before { font-size: 18px; line-height: 1; }
    body.page-tc .sub-nav .sub-nav-list li:nth-child(1) .sub-nav-chip::before { content: "🧭"; }
    body.page-tc .sub-nav .sub-nav-list li:nth-child(2) .sub-nav-chip::before { content: "📚"; }
    body.page-tc .sub-nav .sub-nav-list li:nth-child(3) .sub-nav-chip::before { content: "❓"; }
    body.page-tc .sub-nav .sub-nav-chip.is-active { background: var(--mh-a); color: #fff; border-color: var(--mh-a); }

    /* ---------- 공통 배치: 여백·구간 ---------- */
    body.page-tc .tc-wrap { box-sizing: border-box; width: 100%; min-width: 0; max-width: none; padding: 0 14px; margin: 0; }
    body.page-tc .board-wrap { min-width: 0; }
    body.page-tc .page-section { padding: 12px 0 2px; background: transparent; }
    body.page-tc .page-section--muted { background: transparent; }
    body.page-tc .page-section .container, body.page-tc .page-section .container-narrow { padding: 0 !important; max-width: none; }
    body.page-tc .section-head { margin: 0 0 10px; padding: 0; }
    body.page-tc .section-title { font-size: 16px; font-weight: 800; letter-spacing: -.02em; color: var(--mh-ink); }
    body.page-tc .section-count { font-size: 12px; color: var(--mh-a2); font-weight: 700; }

    /* ---------- 전체 프로그램: 칩 줄 + 세부 필터 + 프로그램 행 ---------- */
    body.page-tc .tc-admin-actions { margin: 8px 0 0; }
    body.page-tc .filter-bar { padding: 0; background: none; border: 0; box-shadow: none; margin: 0 0 8px; }
    body.page-tc .filter-row { margin: 0 0 6px; padding: 0; }
    body.page-tc .filter-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
    body.page-tc .filter-chips { display: flex; flex-wrap: nowrap; overflow-x: auto; gap: 6px; scrollbar-width: none; padding: 0 0 2px; }
    body.page-tc .filter-chips::-webkit-scrollbar { display: none; }
    body.page-tc .filter-chip { flex: 0 0 auto; min-height: 34px; padding: 6px 13px; border: 1px solid var(--mh-line); border-radius: 999px; background: #fff; color: var(--mh-sub); font-size: 12.5px; font-weight: 700; }
    body.page-tc .filter-chip.is-active { background: var(--mh-a); border-color: var(--mh-a); color: #fff; }
    body.page-tc .filter-search-input { width: 100%; min-height: 44px; border-radius: 12px; font-size: 13px; }
    body.page-tc .filter-advanced { margin: 0 0 8px; background: #fff; border: 1px solid var(--mh-line); border-radius: 12px; }
    body.page-tc .filter-advanced-summary { display: flex; align-items: center; min-height: 40px; padding: 8px 12px; font-size: 12.5px; font-weight: 700; color: var(--mh-sub); cursor: pointer; }
    body.page-tc .filter-advanced-body { padding: 4px 12px 12px; }
    body.page-tc #tc_card_list.cards { display: block; max-width: none; margin: 0; padding: 0; background: #fff; border: 1px solid var(--mh-line); border-radius: 16px; overflow: hidden; }
    body.page-tc #tc_card_list a.tc-card-h { position: relative; display: grid; grid-template-columns: 4px minmax(0, 1fr); align-items: stretch; margin: 0; padding: 0; border: 0; border-bottom: 1px solid var(--mh-line); border-radius: 0; box-shadow: none; transform: none; background: #fff; }
    body.page-tc #tc_card_list a.tc-card-h:last-of-type { border-bottom: 0; }
    body.page-tc #tc_card_list .tc-card-h-accent { grid-column: 1; width: 4px; }
    body.page-tc #tc_card_list .tc-card-h-info { grid-column: 2; padding: 8px 12px 9px 10px; min-width: 0; }
    body.page-tc #tc_card_list .tc-card-h-badges { margin: 0 0 3px; gap: 5px; flex-wrap: wrap; padding-right: 128px; min-height: 22px; }
    body.page-tc #tc_card_list .tc-card-h-title { margin: 0 0 4px; font-size: 14.5px; font-weight: 700; letter-spacing: -.02em; line-height: 1.35; color: var(--mh-ink); }
    body.page-tc #tc_card_list .tc-card-h-chips { margin: 0 0 3px; gap: 4px; flex-wrap: nowrap; overflow: hidden; }
    body.page-tc #tc_card_list .tc-chip { padding: 1px 7px; font-size: 10.5px; white-space: nowrap; }
    body.page-tc #tc_card_list .tc-card-h-school { margin: 0; font-size: 11.5px; color: var(--mh-sub); }
    body.page-tc #tc_card_list .tc-card-h-cost { position: absolute; right: 12px; top: 8px; min-width: 0; padding: 0; background: none; border: 0; text-align: right; align-items: flex-end; }
    body.page-tc #tc_card_list .tc-card-h .tc-card-cost { font-size: 13px; font-weight: 800; color: var(--mh-a2); white-space: nowrap; line-height: 1.5; }
    body.page-tc #tc_card_list .tc-card-cost-unit { font-size: 10px; color: var(--mh-sub); }
    body.page-tc #tc_card_list .tc-card-h-arrow { display: none; }
    body.page-tc .section-head { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
    body.page-tc .tc-year-head { min-height: 40px; padding: 4px 0; }
    body.page-tc #tc_card_list a.tc-partner-consult-link { display: inline-flex !important; align-items: center; min-height: 30px; margin: 0 0 8px 14px !important; padding: 4px 11px !important; font-size: 12px !important; border-bottom: 0; }
    body.page-tc #tc_empty { margin-top: 10px; }

    /* ---------- 16년 운영 기록: 연도별 행 ---------- */
    body.page-tc .tc-archive-head { display: block; margin: 0 0 8px; }
    body.page-tc .tc-archive-title { margin: 0 0 4px; font-size: 16px; font-weight: 800; letter-spacing: -.02em; line-height: 1.35; color: var(--mh-ink); }
    body.page-tc .tc-archive-desc { margin: 0; font-size: 12px; line-height: 1.5; color: var(--mh-sub); }
    body.page-tc .tc-archive-timeline { background: #fff; border: 1px solid var(--mh-line); border-radius: 16px; padding: 2px 12px; margin: 0; }
    body.page-tc .tc-archive-timeline::before { display: none; }
    body.page-tc .tc-year-group { margin: 0; padding: 0; border-bottom: 1px solid var(--mh-line); }
    body.page-tc .tc-year-group:last-child { border-bottom: 0; }
    body.page-tc .tc-year-group + .tc-year-group { margin-top: 0; }
    body.page-tc .tc-year-head { display: flex; align-items: center; gap: 8px; width: 100%; min-height: 40px; padding: 6px 0; background: none; border: 0; text-align: left; }
    body.page-tc .tc-year-number { font-size: 15px; font-weight: 800; color: var(--mh-ink); }
    body.page-tc .tc-year-count { font-size: 11px; }
    body.page-tc .tc-year-chevron { margin-left: auto; }
    body.page-tc .tc-year-panel { margin: 0; padding: 0; }
    body.page-tc .tc-blog-list { display: block; margin: 0; padding: 0; background: none; border: 0; }
    body.page-tc .tc-blog-item { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 6px 0 8px 2px; margin: 0; border: 0; background: none; box-shadow: none; }
    body.page-tc .tc-blog-icon { flex: 0 0 32px; width: 32px; height: 32px; font-size: 15px; border-radius: 9px; }
    body.page-tc .tc-blog-text { flex: 1; min-width: 0; }
    body.page-tc .tc-blog-title { font-size: 13px; font-weight: 700; line-height: 1.4; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    body.page-tc .tc-blog-meta { font-size: 11px; color: var(--mh-sub); }
    body.page-tc .tc-blog-arrow { flex: 0 0 auto; color: var(--mh-sub); }

    /* ---------- 공용 하단 섹션 (보딩스쿨 화면에서만 — 공용 PHP·다른 페이지 무영향) ---------- */
    body.page-tc .footer-sections { padding: 0; }
    body.page-tc .prep-cross-recommend, body.page-tc .study-cards-section, body.page-tc .uni-cta-band,
    body.page-tc .prep-university, body.page-tc .prep-faq { box-sizing: border-box; width: 100%; max-width: none; margin: 0; padding: 12px 14px 2px; background: transparent; border: 0; }
    body.page-tc .study-cards-section .container-narrow, body.page-tc .prep-university .container-narrow, body.page-tc .prep-faq .container-narrow { max-width: none; width: auto; padding: 0; margin: 0; }
    body.page-tc .prep-cross-recommend h2, body.page-tc .study-cards-section .study-h2, body.page-tc .prep-university h2, body.page-tc .prep-faq h2 { margin: 0 0 8px; font-size: 16px; font-weight: 800; text-align: left; letter-spacing: -.02em; color: var(--mh-ink); }
    body.page-tc .ige-trust-bar { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; margin: 12px 14px 0; padding: 8px 4px; background: #fff; border: 1px solid var(--mh-line); border-radius: 14px; }
    body.page-tc .ige-trust-bar .trust-item { padding: 0; text-align: center; border: 0; }
    body.page-tc .ige-trust-bar .trust-num { font-size: 15px; font-weight: 800; color: var(--mh-a); }
    body.page-tc .ige-trust-bar .trust-desc, body.page-tc .ige-trust-bar .trust-label { font-size: 9.5px; color: var(--mh-sub); line-height: 1.3; }

    body.page-tc .prep-cross-recommend .cross-cards, body.page-tc .study-cards-section .cross-cards { display: grid; grid-template-columns: 1fr; gap: 8px; padding: 0; margin: 0; }
    body.page-tc .prep-cross-recommend .cross-cards { grid-template-columns: 1fr 1fr; }
    body.page-tc .prep-cross-recommend .cross-card, body.page-tc .study-cards-section .cross-card { box-sizing: border-box; width: auto; min-width: 0; max-width: none; margin: 0; padding: 10px 12px; text-align: left; background: #fff; border: 1px solid var(--mh-line); border-radius: 16px; box-shadow: none; }
    body.page-tc .cross-card .cross-icon { display: inline; margin: 0 6px 0 0; font-size: 16px; }
    body.page-tc .cross-card .cross-title, body.page-tc .cross-card h3 { display: inline; margin: 0; font-size: 14px; font-weight: 800; color: var(--mh-ink); }
    body.page-tc .cross-card .cross-cost { margin: 4px 0 0; font-family: inherit; font-size: 13px; font-weight: 800; color: var(--mh-a); }
    body.page-tc .cross-card .cross-krw { margin: 0; font-size: 10.5px; }
    body.page-tc .cross-card .cross-desc { margin: 2px 0 0; font-size: 11px; color: var(--mh-sub); line-height: 1.4; }
    body.page-tc .cross-card .cross-link { display: none; }
    body.page-tc .study-cards-section .cross-card { display: block; position: relative; padding: 10px 12px; min-height: 0; height: auto; }
    body.page-tc .study-cards-section .cross-card .cross-icon { display: inline; font-size: 18px; margin: 0 6px 0 0; vertical-align: middle; }
    body.page-tc .study-cards-section .cross-card .cross-title, body.page-tc .study-cards-section .cross-card h3 { font-size: 13.5px; vertical-align: middle; }
    body.page-tc .study-cards-section .cross-card .cross-desc { display: block; margin: 2px 0 0; font-size: 11px; line-height: 1.3; }
    body.page-tc .study-cards-section .study-badge-lock, body.page-tc .study-cards-section .study-badge-free { position: static; float: right; display: inline-block; margin: 0 0 0 6px; font-size: 10px; line-height: 1.5; padding: 1px 7px; border-radius: 999px; white-space: nowrap; }
    body.page-tc .study-cards-section .study-sub { display: none; }
    body.page-tc .study-cards-section .study-footer { margin: 8px 0 0; padding: 6px 10px; font-size: 11px; line-height: 1.5; background: #fff; border: 1px solid var(--mh-line); border-radius: 12px; }
    body.page-tc .prep-cross-recommend .cross-footer { margin: 8px 0 6px; text-align: left; font-size: 12px; color: var(--mh-sub); }
    body.page-tc .prep-cross-recommend .btn-consult-secondary { display: flex; align-items: center; min-height: 44px; margin: 0; padding: 12px 14px; border-radius: 14px; background: var(--mh-a); color: #fff; font-size: 14px; font-weight: 800; text-align: left; box-shadow: none; }

    body.page-tc .uni-cta-band { padding-top: 8px; padding-bottom: 0; }
    body.page-tc .uni-cta-band .uni-cta-link { display: flex; align-items: center; justify-content: space-between; min-height: 44px; padding: 12px 14px; background: #fff; border: 1px solid var(--mh-a); border-radius: 14px; color: var(--mh-a); font-size: 13.5px; font-weight: 800; box-shadow: none; }
    body.page-tc .prep-university .university-list { display: grid; gap: 8px; margin: 0; padding: 0; }
    body.page-tc .prep-university .university-item { display: block; min-height: 44px; padding: 8px 14px; background: #fff; border: 1px solid var(--mh-line); border-radius: 14px; }
    body.page-tc .prep-university .university-title { margin: 0; font-size: 13.5px; font-weight: 700; line-height: 1.4; }
    body.page-tc .prep-university .university-meta { margin: 2px 0 0; font-size: 11px; color: var(--mh-sub); }
    body.page-tc .prep-university .uni-header-badge { font-size: 11px; }
    body.page-tc .prep-faq { padding-bottom: 20px; }
    body.page-tc .prep-faq .faq-item { margin: 0 0 8px; padding: 0 14px; background: #fff; border: 1px solid var(--mh-line); border-radius: 14px; box-shadow: none; }
    body.page-tc .prep-faq .faq-q { min-height: 44px; padding: 9px 0; font-size: 13px; line-height: 1.4; }
    body.page-tc .prep-faq .faq-a { font-size: 12.5px; }
}
