/* ============================================================================= * A02_ProgDetail_UI_Style.css * 프로그램 상세 페이지 고유 스타일 — theme.css 변수만 참조 (하드코딩 금지). * ========================================================================== */ .a02-prog-detail { display: flex; flex-direction: column; gap: var(--section-gap); padding-bottom: var(--spacing-64); } /* --- Hero --- */ .a02-hero { background: linear-gradient(to bottom, var(--color-mist-violet), var(--color-canvas)); padding: var(--spacing-96) var(--spacing-32); } .a02-hero__inner { max-width: var(--page-max-width); margin: 0 auto; display: flex; flex-direction: column; align-items: center; text-align: center; gap: var(--spacing-24); } .a02-hero__title { font-size: var(--text-heading-lg); line-height: var(--leading-heading-lg); color: var(--color-deep-iris); max-width: 18ch; } .a02-hero__subtitle { font-size: var(--text-body); line-height: var(--leading-body); color: var(--color-slate); max-width: 56ch; margin: 0; } /* --- 공통 섹션 --- */ .a02-section { max-width: var(--page-max-width); margin: 0 auto; width: 100%; padding: 0 var(--spacing-32); display: flex; flex-direction: column; gap: var(--spacing-24); } .a02-section__title { font-size: var(--text-heading-sm); line-height: var(--leading-heading-sm); color: var(--color-deep-iris); text-align: center; } /* --- Workflow (번호 배지 + 텍스트) --- */ .a02-workflow-list { display: flex; flex-direction: column; gap: var(--spacing-16); } .a02-workflow-row { display: flex; align-items: flex-start; gap: var(--spacing-24); padding: var(--spacing-24); background-color: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-cards); } .a02-workflow-row__badge { flex-shrink: 0; width: var(--spacing-40); height: var(--spacing-40); display: flex; align-items: center; justify-content: center; border-radius: 50%; background-color: var(--color-primary); color: var(--color-primary-text); font-size: var(--text-body); font-weight: 600; } .a02-workflow-row__text { display: flex; flex-direction: column; gap: var(--spacing-4); } .a02-workflow-row__title { font-size: var(--text-body); color: var(--color-charcoal); margin: 0; } .a02-workflow-row__desc { margin: 0; color: var(--color-slate); font-size: var(--text-body-sm); line-height: var(--leading-body-sm); } /* --- Tech --- */ .a02-tech-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--spacing-24); } .a02-tech-card { min-height: 140px; } .a02-tech__desc { margin: 0; color: var(--color-slate); font-size: var(--text-body-sm); line-height: var(--leading-body-sm); } @media (max-width: 900px) { .a02-tech-grid { grid-template-columns: 1fr; } .a02-hero__title { font-size: var(--text-heading); } }