status, page_id, related_pages, last_updated
status
page_id
related_pages
last_updated
draft
A05_EduDetail
2026-07-12
A05_EduDetail — Frontend
architecture/public_admin_map 의 공개 교육 경로이며 a00_app_shell_framework 의 SPA 라우터가 이 화면을 로드한다.
로그인 전 교육 상세 페이지. 교육 과정 소개 + 문의 CTA.
파일 구조
파일
위치
역할
A05_EduDetail_UI_Page.ts
A05_EduDetail/A05_EduDetail_UI_Page.ts:1-106
페이지 렌더링 로직
A05_EduDetail_UI_Style.css
A05_EduDetail/A05_EduDetail_UI_Style.css:1-87
스타일 (theme.css 변수만 사용)
컴포넌트 (섹션 빌더)
함수
위치
역할
buildHero()
A05_EduDetail/A05_EduDetail_UI_Page.ts:33-51
Hero(제목+부제목), mist-violet→canvas 그라디언트
buildCourses()
A05_EduDetail/A05_EduDetail_UI_Page.ts:53-81
교육과정 3열 카드그리드(createCard 3개)
buildCta()
A05_EduDetail/A05_EduDetail_UI_Page.ts:83-95
문의 CTA 버튼(variant: filled)
renderA05EduDetail()
A05_EduDetail/A05_EduDetail_UI_Page.ts:100-105
페이지 진입점(3개 섹션 조립)
로컬라이제이션
모든 텍스트는 ui_locales[key][currentLanguageIndex] 형식으로 ui_templates 에서 로드.
하드코딩 금지.
UI 요소
로케일 키
제목
A05_EduDetail_Title
히어로 부제목
A05_EduDetail_Hero_Subtitle
과정 섹션 제목
A05_EduDetail_Course_SectionTitle
과정 1~3
A05_EduDetail_Course{1..3}_Title, A05_EduDetail_Course{1..3}_Desc
CTA 버튼 라벨
A05_EduDetail_Cta
스타일 (CSS)
CSS 클래스 구조
.a05-edu-detail — 페이지 래퍼 (flex column, gap: section-gap)
.a05-hero — 그래디언트 배경
.a05-hero__inner — 중앙 정렬 컨테이너
.a05-hero__title — heading-lg, deep-iris, max 18자
.a05-hero__subtitle — body 텍스트, slate, max 56자
.a05-section — 공통 섹션 (max-width: page-max-width, padding: spacing-32)
.a05-section__title — heading-sm, deep-iris, 중앙 정렬
.a05-course-grid — 3열 그리드 (gap: spacing-24)
.a05-course-card — 카드 (min-height: 140px)
.a05-course__desc — body-sm, slate
.a05-cta — align-items: center (버튼 중앙 정렬)
반응형
900px 이하: 과정 그리드 1열, 히어로 제목 폰트 축소
이벤트 핸들러
함수
위치
동작
onA05_EduDetail_Inquiry_Click()
A05_EduDetail_UI_Page.ts:26-28
A08_SUPPORT로 이동
의존성