/* ============================================================================= * B05_wf2_Route_UI_Style.css * 2차 워크플로우(경로 설계) 페이지 전용 스타일. * * 원칙(frontend.md §1): 하드코딩 색상 금지. theme.css 변수(var(--...))만 참조. * 공통 컴포넌트 스타일은 ui_template_elements.ts가 주입하므로 여기서는 * B05 고유 레이아웃(제어점 행/제약 그룹/결과 메트릭)만 정의한다. * ========================================================================== */ /* --- 좌측 입력 폼 --- */ .b05-route__form { display: flex; flex-direction: column; gap: var(--spacing-16); } .b05-route__group { display: flex; flex-direction: column; gap: var(--spacing-16); margin: 0; padding: var(--spacing-16); border: 1px solid var(--color-border); border-radius: var(--radius-cards); background-color: var(--color-surface-raised); } .b05-route__group-legend { padding: 0 var(--spacing-8); font-size: var(--text-caption); font-weight: var(--font-weight-medium); color: var(--color-text-secondary); } /* --- 제어점 (X/Y 쌍) --- */ .b05-route__point { display: flex; flex-direction: column; gap: var(--spacing-8); } .b05-route__point-label { font-size: var(--text-body-sm); font-weight: var(--font-weight-medium); color: var(--color-text-body); } .b05-route__point-row { display: grid; grid-template-columns: 1fr 1fr; gap: var(--spacing-8); } .b05-route__cp-list { display: flex; flex-direction: column; gap: var(--spacing-16); } /* --- select (지표면/제약) --- */ .b05-route__select { appearance: auto; cursor: pointer; } /* --- 체크박스 --- */ .b05-route__check { display: flex; align-items: center; gap: var(--spacing-8); font-size: var(--text-body-sm); color: var(--color-text-body); cursor: pointer; } .b05-route__check input { accent-color: var(--color-primary); } /* --- 액션 버튼 행 --- */ .b05-route__actions { display: flex; gap: var(--spacing-8); } /* --- 우측 결과 --- */ .b05-route__result { display: flex; flex-direction: column; gap: var(--spacing-16); padding: var(--spacing-24); } .b05-route__result-title { font-size: var(--text-subheading); color: var(--color-text); } .b05-route__empty { color: var(--color-text-muted); font-size: var(--text-body-sm); } .b05-route__result-body { display: flex; flex-direction: column; gap: var(--spacing-8); max-width: 480px; } .b05-route__metric { display: flex; align-items: baseline; justify-content: space-between; gap: var(--spacing-16); padding: var(--spacing-8) var(--spacing-16); border-radius: var(--radius-inputs); background-color: var(--color-surface); } .b05-route__metric-key { font-size: var(--text-caption); color: var(--color-text-secondary); } .b05-route__metric-val { font-family: var(--font-mono); font-size: var(--text-body-sm); color: var(--color-text-body); word-break: break-all; text-align: right; }