.edu-process-link { padding:0; border:0; background:none; color:inherit; font:inherit; text-decoration:none; cursor:pointer; }
.edu-process-link:hover { text-decoration:underline; }
.edu-schedule-date { padding:0; border:0; background:none; font:inherit; }
.edu-schedule-date.is-open { color:#00adef; font-weight:700; cursor:pointer; text-decoration:underline; text-underline-offset:2px; }
.edu-schedule-date.is-closed { color:#ec008c; font-weight:700; }
.edu-check-list { margin:0; padding-left:18px; line-height:1.9; }
.edu-check-list > li { display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; }
.edu-check-main { flex:1 1 auto; min-width:220px; }
.edu-check-actions { display:inline-flex; align-items:center; justify-content:flex-end; gap:6px; flex:0 0 auto; }
.edu-btn-cancel,
.edu-btn-survey { padding:2px 10px; border:1px solid #999; border-radius:4px; background:#fff; font-size:12px; cursor:pointer; }
.edu-btn-survey { border-color:#111; background:#111; color:#fff; }

/* 교육일정표 전용 테이블 (모달 스케일). 컬러는 사이트 기존 일정표(.support-table) 동일 톤.
   모달 셸/폭/스크롤 규칙은 styles.css 의 .curriculum-modal / .policy-modal 로 이관됨. */
.edu-curriculum-table { width:100%; border-collapse:collapse; table-layout:fixed; font-size:15px; color:#222; }
/* 모든 보더 동일 (#d9d9d9 1px) — 구분은 배경 톤 단계로 처리. 셀 기본은 흰색. 넉넉한 패딩으로 공간 활용 */
.edu-curriculum-table th,
.edu-curriculum-table td { background:#fff; border:1px solid #d9d9d9; padding:13px 16px; vertical-align:top; line-height:1.55; text-align:left; }
/* 헤더(오전/오후) = 가장 진한 그레이 (헤더 항목) */
.edu-curriculum-table thead th { background:#f0f0f0; color:#333; text-align:center; vertical-align:middle; font-weight:700; padding:14px 16px; }
/* 일차 컬럼 = 흰색 (데이터, 행 라벨 — 볼드로 구분) */
.edu-curriculum-table .edu-curriculum-day { background:#fff; text-align:center; vertical-align:middle; font-weight:700; color:#222; }
/* 교육명 밴드 = 헤더 그레이와 흰색 사이 중간 톤 (그날 교육명) */
.edu-curriculum-table .edu-curriculum-title { background:#f7f7f7; font-weight:700; color:#222; text-align:center; padding:11px 16px; }
.edu-curriculum-list { margin:0; padding-left:18px; line-height:1.7; list-style:disc; }
.edu-curriculum-list li { margin:2px 0; }
.edu-curriculum-empty { color:#aaa; }
/* 교육장 라벨: 참고 이미지처럼 볼드 텍스트 ("창원 교육장") */
.edu-curriculum-sub { margin:8px 0 0 0; font-size:16px; font-weight:700; color:#222; }
.edu-status-open { color: blue; }
.edu-status-closed { color: red; }
.edu-process-col { width: 10%; }
.edu-map-image { display: block; width: 100%; height: auto; }
.edu-map-info { padding-top: 2rem; font-size: 1.4rem; line-height: 1.8; }
.edu-map-address, .edu-map-transit-title { margin: 0 0 1rem; color: #d32f2f; }
.edu-map-transit-title { font-weight: 600; }
.edu-map-note { margin: 0; color: #666; }
.edu-map-note--spaced { margin-bottom: 2rem; }
.edu-map-transit-list { margin: 0; padding-left: 2rem; list-style: disc; }
.edu-map-transit-list li { margin-bottom: .8rem; list-style: disc; }
.edu-apply-selected { margin: .6rem 0 0; color: #333; font-size: 1.4rem; }
.edu-check-result { padding: 1.2rem; border: 1px solid #eee; border-radius: .8rem; background: #fafafa; color: #333; font-size: 1.4rem; }
.edu-check-placeholder { margin: 0; color: #666; }

/* ===========================================================================
   교육센터 프레젠테이션 (시안 _design/training-center.html 이식)
   레이아웃 컨테이너는 .container(--inner-w:144rem, 시안 폭과 동일) 재사용.
   동적 일정표 내용은 training.js가 .edu-schedule-date / .edu-process-link 로 생성 →
   위쪽 규칙이 담당. 아래는 시안 고유 프레젠테이션(trn-*)만 정의.
   =========================================================================== */

/* ---------- 히어로 (완성 이미지 풀스크린) ---------- */
/* 다른 sub-hero 페이지처럼 반투명 헤더 뒤로 풀블리드 — #container 상단 패딩 제거(아래 규칙) +
   히어로가 뷰포트 전체를 채우도록 max-height 100vh */
main#container:has(> .training) { padding-top: 0; }
/* 풀스크린 베이스 = styles.css의 .hero-full. 여기선 교육 고유값만 */
.trn-hero { --hero-img: var(--trn-hero); }              /* 베이스 ::before가 읽는 이미지 변수로 매핑 */
.trn-hero::before { background-position: center bottom; } /* 이미지 하단 정렬 (베이스는 center) */
.trn-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,14,20,.12) 0%, rgba(10,14,20,0) 46%, rgba(10,14,20,.5) 100%); }
.trn-hero__inner { position: relative; z-index: 1; height: 100%; display: flex; flex-direction: column; justify-content: flex-end; padding-bottom: 4.5rem; }
.trn-hero__word { align-self: flex-end; font-family: var(--font-en); font-weight: 400; font-size: 4.2rem; letter-spacing: .04em; color: #fff; text-shadow: 0 2px 18px rgba(0,0,0,.45); }
.trn-hero__word strong { font-weight: 800; color: #fff; }

/* ---------- 섹션 공통 ---------- */
.trn-sec { padding: 8rem 0; }
.trn-sec + .trn-sec { padding-top: 2rem; }
/* 세로선 공통 톤 (section-lede·gold-divider와 동일 2px var(--line-gold)) */
.trn-head { max-width: 96ch; border-left: 2px solid var(--line-gold); padding-left: 2.4rem; }
.trn-head__tit { font-size: 2.8rem; font-weight: 800; line-height: 1.3; color: #231f20; }
.trn-head__desc { margin-top: 1.6rem; color: #434041; font-size: 1.55rem; line-height: 1.75; }

/* ---------- 교육안내 ---------- */
.trn-info { margin-top: 3.6rem; display: flex; gap: 4rem; align-items: stretch; }
.trn-info__rows { flex: 1 1 auto; min-width: 0; border-top: 1px solid #c19f76; }
.trn-info__row { display: grid; grid-template-columns: 16rem 1fr; gap: 2rem; padding: 2.2rem .4rem 2.2rem 2.7rem; border-bottom: 1px solid #c19f76; align-items: center; }
.trn-info__row dt { font-size: 1.9rem; font-weight: 700; color: var(--color-gold); }
.trn-info__row dd { min-width: 0; }
.trn-list { display: flex; flex-direction: column; gap: .7rem; }
.trn-list li { position: relative; padding-left: 1.3rem; font-size: 1.45rem; line-height: 1.7; color: #343031; }
.trn-list li::before { content: ""; position: absolute; left: 0; top: .72em; width: 4px; height: 4px; border-radius: 50%; background: var(--color-gold); }
.trn-open { color: #00adef; font-weight: 700; }
.trn-closed { color: #ec008c; font-weight: 700; }
.trn-info__photo { flex: 0 0 30rem; align-self: stretch; min-height: 24rem; overflow: hidden; }
.trn-info__photo img { width: 100%; height: 100%; object-fit: cover; }
.trn-contact { margin-top: 2.6rem; font-size: 1.4rem; color: #5b616a; }
.trn-contact b { color: #231f20; }
.trn-contact a { color: #231f20; text-decoration: underline; text-underline-offset: 2px; }

/* ---------- 교육일정 ---------- */
.trn-sched__bar { margin-top: 2.8rem; display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; flex-wrap: wrap; }
.trn-actions { display: inline-flex; align-items: stretch; gap: 0; border-bottom: 2px solid #9c948a; }
/* 밑줄바 버튼은 공용 .btn-bar(styles.css) 사용. 여기선 탭그룹 컨텍스트만 보정
   (버튼끼리 붙는 탭 룩: 밑줄은 .trn-actions가 제공하므로 개별 버튼은 투명+겹침). */
.trn-actions .btn-bar { padding: 0 2.4rem; margin-bottom: -2px; border-bottom-color: transparent; }
.trn-actions .btn-bar:hover { border-bottom-color: var(--color-gold); }
.trn-download svg { width: 1.9rem; height: 1.9rem; color: var(--color-gold); }
.trn-site { margin-top: 4rem; }
.trn-site__bar { display: flex; align-items: center; justify-content: center; gap: 1.6rem; padding: 1.15rem; background: var(--color-gold); color: #fff; text-align: center; font-size: 1.7rem; font-weight: 700; letter-spacing: .01em; }
.trn-site__name { flex: 1 1 auto; }
.trn-site__map { flex: 0 0 auto; height: 3.2rem; padding: 0 1.4rem; border: 1px solid rgba(255,255,255,.7); border-radius: .4rem; background: rgba(255,255,255,.12); color: #fff; font-size: 1.3rem; font-weight: 600; cursor: pointer; transition: background .18s; }
.trn-site__map:hover { background: rgba(255,255,255,.24); }
.trn-table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.trn-table { width: 100%; min-width: 92rem; border-collapse: collapse; font-size: 1.35rem; text-align: center; }
.trn-table th, .trn-table td { border: 1px solid #d9d6d1; padding: 1.15rem .6rem; vertical-align: middle; }
.trn-table thead th { background: #efe8e0; color: #333030; font-weight: 700; border-bottom: 1px solid var(--line-gold); }
.trn-table tbody th { background: #fff; color: var(--color-gold); font-weight: 700; white-space: nowrap; }
.trn-table tbody td { background: #fff; color: #6a7078; }
.trn-table col.trn-col--course { width: 13rem; }
.trn-date { font-weight: 700; }
.trn-date.trn-open { color: #00adef; }
.trn-date.trn-closed { color: #ec008c; }
/* 동적 일정표(training.js) 과정명 버튼도 골드 유지 */
.trn-table tbody th .edu-process-link { color: var(--color-gold); }

/* ---------- 반응형 ---------- */
@media (max-width: 1024px) { .trn-hero__word { font-size: 3.2rem; } }
@media (max-width: 768px) { .trn-info { flex-direction: column; } .trn-info__photo { flex-basis: auto; width: 100%; max-width: 40rem; min-height: 26rem; } }
@media (max-width: 640px) { .trn-sec { padding: 5rem 0; } .trn-hero { min-height: 42rem; } .trn-hero__word { font-size: 2.4rem; } .trn-info__row { grid-template-columns: 1fr; gap: .8rem; } .trn-site__bar { flex-wrap: wrap; } }

