Phase I: 전수 정합성 복구 + 넘침 처리 패러다임 전환 (14개 항목) - I-14: SSE 유틸 공통 추출 (src/sse_utils.py 신규, 3개 파일 중복 제거) - I-13: dead code 3건 삭제 (_call_anthropic_direct, _extract_sse_text x2) + import anthropic 제거 - I-1: STEP_B_PROMPT purpose 가이드 미존재 블록 3개 → 실존 블록 교체 - I-2: catalog.yaml not_for 13건 미존재 블록 참조 교체/제거 - I-12: BLOCK_SLOTS 주석 개수 수정 (cards 9, visuals 6, emphasis 10) - I-10: INDEX.md 38개 동기화 (삭제된 8개 블록 행 제거) - I-11: README.md 38개 동기화 (_legacy 제거, 트리/개수 정리) - I-3: PURPOSE_FALLBACK 상수 + purpose 기반 미등록 블록 교체 - I-7: compare-pill-pair 단독 사용 금지 검증 - I-4: 38개 블록 전체에 slot_desc 추가 - I-5: 편집자 프롬프트에 slot_desc 전달 로직 - I-6: 제목 유사도 70% 초과 시 자동 교정 - I-9: 넘침 판단 Kei API 호출 (KEI_OVERFLOW_PROMPT, call_kei_overflow_judgment) - I-8: 대형 콘텐츠 정보 Kei overflow 프롬프트에 포함 프로세스 재설계: - Stage 2.5 제거 → Stage 5에서 Sonnet 감지 + Kei 판단 통합 - _review_balance() 확장: zone 예산 + overflow_detected action 추가 - Stage 5 루프에 Kei 넘침 판단 호출 통합 - _apply_adjustments()에 kei_trim/kei_restructure action 추가 - _build_overflow_context(), _convert_kei_judgment() 헬퍼 함수 추가 - DOWNGRADE_MAP은 Kei API 실패 시 비상용으로만 잔존 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
657 lines
20 KiB
YAML
657 lines
20 KiB
YAML
version: '2.0'
|
|
blocks:
|
|
- id: section-title-with-bg
|
|
name: 배경 이미지 타이틀
|
|
template: blocks/headers/section-title-with-bg.html
|
|
height_cost: large
|
|
visual: 전체 너비 배경 이미지(파란 그라데이션+웨이브) 위에 흰색 영문 소제목(15px) + 한글 대제목(35px). 높이 약 500px.
|
|
when: '자세히보기 페이지의 맨 첫 화면. 배경 이미지가 있고 그 위에 타이틀을 올릴 때. 페이지의 주제를 시각적으로 강렬하게 선언할 때.
|
|
|
|
'
|
|
not_for: '슬라이드 내부의 소제목 → topic-left-right 또는 topic-center 사용. 배경 이미지 없이 텍스트만 → topic-center
|
|
사용. 높이 예산이 200px 이하일 때 → section-header-bar 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- title_ko
|
|
optional:
|
|
- title_en
|
|
- breadcrumb
|
|
- bg_image
|
|
- id: section-header-bar
|
|
name: 섹션 헤더 바
|
|
template: blocks/headers/section-header-bar.html
|
|
height_cost: compact
|
|
visual: 전체 너비 파란 배경 바(높이 ~50px) + 중앙 흰색 제목. 섹션 구분용. 컴팩트.
|
|
when: '섹션 시작을 가볍게 표시할 때. 같은 페이지 안에서 주제가 전환될 때. 높이 예산이 적을 때 섹션 구분이 필요할 때.
|
|
|
|
'
|
|
not_for: '페이지 전체 타이틀 → section-title-with-bg 사용. 꼭지별 소제목 → topic-left-right 또는 topic-numbered
|
|
사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- title
|
|
optional:
|
|
- subtitle
|
|
- id: topic-left-right
|
|
name: 좌우 꼭지 헤더
|
|
template: blocks/headers/topic-left-right.html
|
|
height_cost: compact
|
|
visual: 좌측에 파란 굵은 제목(24px, 240px 너비) + 우측에 본문 설명. 가로 2단 배치.
|
|
when: '꼭지 시작부에 질문형 제목 + 답변형 설명 구조일 때. 예: ''단순 BIM의 적용이 D/X가 아닙니다'' + ''설명...'' 좌측에
|
|
핵심 주장, 우측에 근거/설명을 배치할 때.
|
|
|
|
'
|
|
not_for: '중앙 정렬 대제목 → topic-center 사용. 번호가 붙은 순서형 꼭지 → topic-numbered 사용. 섹션 전체
|
|
타이틀 → section-title-with-bg 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- title
|
|
- description
|
|
optional: []
|
|
- id: topic-center
|
|
name: 중앙 정렬 꼭지 헤더
|
|
template: blocks/headers/topic-center.html
|
|
height_cost: medium
|
|
visual: 중앙 정렬 대제목(26px 굵게) + 파란 서브타이틀 + 하단 설명. 단독 강조.
|
|
when: '하나의 주제를 페이지 중심에 크게 선언할 때. 예: ''디지털전환을 위한 S/W 필요성'' 서브타이틀이나 부연 설명이 함께 올 때.
|
|
|
|
'
|
|
not_for: '좌:제목 우:설명 구조 → topic-left-right 사용. 번호 순서 → topic-numbered 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- title
|
|
optional:
|
|
- subtitle
|
|
- description
|
|
- id: topic-numbered
|
|
name: 번호 꼭지 헤더
|
|
template: blocks/headers/topic-numbered.html
|
|
height_cost: compact
|
|
visual: 파란 원형 번호(①②③) + 굵은 제목 + 파란 구분선 + 설명. 세로 배치.
|
|
when: '순서가 있는 꼭지를 시작할 때. 1번, 2번, 3번 식의 단계별 섹션. 실행 조건, 요구사항 등을 순서대로 설명할 때.
|
|
|
|
'
|
|
not_for: '순서 없는 꼭지 → topic-left-right 또는 topic-center 사용. 카드 안의 순서 → card-numbered
|
|
사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- number
|
|
- title
|
|
optional:
|
|
- description
|
|
- color
|
|
- id: card-image-3col
|
|
name: 이미지 카드 3열
|
|
template: blocks/cards/card-image-3col.html
|
|
height_cost: large
|
|
visual: 3열 카드. 각 카드 상단에 이미지(160px) + 하단에 색상 밑줄 제목 + 영문 + 불릿 목록.
|
|
when: '3개 항목을 각각 고유 이미지와 함께 설명할 때. 예: 설계단계(3D 모델) / 시공단계(현장) / 유지관리(자산) 단계별 설명에
|
|
이미지가 핵심인 경우.
|
|
|
|
'
|
|
not_for: '이미지 없이 텍스트만 → card-icon-desc 사용. 키워드+짧은 설명만 강조 → card-dark-overlay 사용.
|
|
2개 비교 → compare-pill-pair + comparison-table 조합 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- cards[]
|
|
optional: []
|
|
- id: card-dark-overlay
|
|
name: 다크 오버레이 카드
|
|
template: blocks/cards/card-dark-overlay.html
|
|
height_cost: medium
|
|
visual: 3~5열 카드. 다크 배경 이미지 + 그라데이션 오버레이 + 흰색 굵은 제목 + 짧은 설명.
|
|
when: '키워드+짧은 설명(2줄 이내)을 시각적으로 강조할 때. 예: 협업지원/오류감소/생산성향상/비용절감/데이터관리 배경 이미지가 있는 키워드
|
|
나열.
|
|
|
|
'
|
|
not_for: '긴 설명(3줄 이상) → card-icon-desc 사용. 이미지가 핵심(크게 보여야 함) → card-image-3col 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- cards[]
|
|
optional: []
|
|
- id: card-tag-image
|
|
name: 태그 이미지 카드
|
|
template: blocks/cards/card-tag-image.html
|
|
height_cost: large
|
|
visual: 3열 카드. 좌상단 색상 태그 라벨 + 이미지 + 제목 + 설명.
|
|
when: '카테고리별 분류가 핵심일 때. 태그로 구분. 예: 제조업(파란) / 건축(초록) / 인프라·토목(빨간)
|
|
|
|
'
|
|
not_for: '태그 불필요 → card-image-3col 사용. 이미지 없음 → card-icon-desc 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- cards[]
|
|
optional: []
|
|
- id: card-icon-desc
|
|
name: 아이콘 설명 카드
|
|
template: blocks/cards/card-icon-desc.html
|
|
height_cost: medium
|
|
visual: 2~4열. 중앙 큰 이모지 아이콘(2.5rem) + 굵은 제목 + 설명. 밝은 배경.
|
|
when: '기능/특성/장점을 아이콘과 함께 나열. 예: 🔧기술기반 / 💻S/W역량 / 🌏여건조성
|
|
|
|
'
|
|
not_for: '이미지(사진) 필요 → card-image-3col 사용. 순서 번호 → card-numbered 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- cards[]
|
|
optional: []
|
|
- id: card-compare-3col
|
|
name: 3단 비교 카드
|
|
template: blocks/cards/card-compare-3col.html
|
|
height_cost: large
|
|
visual: 3열 카드. 각 카드 상단 색상 헤더(제목+서브) + 이미지 + 불릿.
|
|
when: '3개 카테고리를 비교. 각 카테고리에 다른 색상 헤더. 예: 상용SW(회색) vs 3rd Party(파랑) vs 전문SW(빨강)
|
|
|
|
'
|
|
not_for: '2개 비교 → compare-pill-pair + comparison-table 사용. 다항목 표 → compare-3col-badge
|
|
사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- cards[]
|
|
optional: []
|
|
- id: card-step-vertical
|
|
name: 세로 단계 카드
|
|
template: blocks/cards/card-step-vertical.html
|
|
height_cost: xlarge
|
|
visual: 세로 나열. 좌측 색상 마커(단계명) + 우측 콘텐츠 박스(제목+이미지+설명). 연결선.
|
|
when: '생애주기 단계별 설명. 각 단계에 이미지+상세 설명. 예: 설계단계 → 시공단계 → 운영단계
|
|
|
|
'
|
|
not_for: '가로 흐름(간단) → process-horizontal 사용. 높이 예산 부족 → card-numbered 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- steps[]
|
|
optional: []
|
|
- id: card-image-round
|
|
name: 원형 이미지 카드
|
|
template: blocks/cards/card-image-round.html
|
|
height_cost: large
|
|
visual: 2~3열. 원형 이미지(140px, 테두리+그림자) + 제목 + 설명. 중앙 정렬.
|
|
when: '포트폴리오형 나열. 비전/가치 표현. 원형 이미지.
|
|
|
|
'
|
|
not_for: '사각형 이미지 → card-image-3col 사용. 이미지 없음 → card-icon-desc 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- cards[]
|
|
optional: []
|
|
- id: card-stat-number
|
|
name: 통계 숫자 카드
|
|
template: blocks/cards/card-stat-number.html
|
|
height_cost: medium
|
|
visual: 2~4열. 매우 큰 숫자(36px, 색상) + 단위 + 라벨 + 설명.
|
|
when: 'KPI, 성과 수치, 목표 달성률, 비용 절감율. 예: 30% 절감 / 40% 감소 / 220명+ 인력
|
|
|
|
'
|
|
not_for: '숫자가 아닌 텍스트 → card-icon-desc 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- stats[]
|
|
optional: []
|
|
- id: card-numbered
|
|
name: 번호 항목 카드
|
|
template: blocks/cards/card-numbered.html
|
|
height_cost: medium
|
|
visual: 세로 나열. 색상 원형 번호(①②③④) + 제목 + 설명. 밝은 배경.
|
|
when: '순서가 있는 항목을 세로로 나열 (실행 단계, 조건, 요구사항). 예: 1.요구사항분석 → 2.SW개발 → 3.System통합 →
|
|
4.교육
|
|
|
|
'
|
|
not_for: '순서 없음 → card-icon-desc 사용. 이미지 포함 단계 → card-step-vertical 사용. 가로 흐름 →
|
|
process-horizontal 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- items[]
|
|
optional: []
|
|
- id: compare-3col-badge
|
|
name: VS 배지 비교표
|
|
template: blocks/tables/compare-3col-badge.html
|
|
height_cost: large
|
|
visual: 3단 테이블. 좌(하늘색 헤더) | 중앙(파란 VS 배지) | 우(파란 헤더). 행별 비교.
|
|
when: '두 개념 다항목 비교 (5행 이상). 중앙에 VS 배지. 예: BIM vs DX — S/W, 프로세스, 성과물, 활용 비교
|
|
|
|
'
|
|
not_for: '시각적 대비(짧음) → compare-pill-pair 사용. 2단 분할 → compare-2col-split 사용. 범용 데이터
|
|
→ table-simple-striped 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- headers[]
|
|
- rows[][]
|
|
optional: []
|
|
- id: compare-2col-split
|
|
name: 2단 분할 비교표
|
|
template: blocks/tables/compare-2col-split.html
|
|
height_cost: large
|
|
visual: 파란 헤더(좌/구분/우) + 행별 좌:항목 | 중앙:기준라벨(파란) | 우:항목.
|
|
when: '두 기술의 항목별 상세 비교. 예: GIS vs BIM — 개념/분석/도면/발전
|
|
|
|
'
|
|
not_for: 'VS 배지 필요 → compare-3col-badge 사용. 범용 데이터 → table-simple-striped 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- left_title
|
|
- right_title
|
|
- rows[]
|
|
optional: []
|
|
- id: table-simple-striped
|
|
name: 범용 줄무늬 테이블
|
|
template: blocks/tables/table-simple-striped.html
|
|
height_cost: medium
|
|
visual: 진한 남색 헤더 + 줄무늬 행 교차. 첫 열 굵은 글씨. 범용.
|
|
when: '비교가 아닌 일반 데이터 표. 예: 구분/현재/목표/비고, 스펙표, 일정표
|
|
|
|
'
|
|
not_for: 'A vs B 비교 → compare-3col-badge 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- headers[]
|
|
- rows[][]
|
|
optional: []
|
|
- id: venn-diagram
|
|
name: SVG 벤 다이어그램
|
|
template: blocks/visuals/venn-diagram.html
|
|
height_cost: xlarge
|
|
visual: SVG. 진한 파란 큰 원(동심원 링, 입체감) + 3개 작은 원(주황/민트/골드). 그라데이션+글로우.
|
|
when: '상위-하위 포함 관계. 기술 융합 구조. 예: 건설산업DX 안에 GIS/BIM/디지털트윈 ★ 반드시 단독 배치. 다른 블록과 같은
|
|
zone에 쌓지 마라.
|
|
|
|
'
|
|
not_for: '텍스트로 관계 설명 가능하면 사용 금지. sidebar(35%) 배치 금지. 높이 300px 미만 금지.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- center_label
|
|
- items[]
|
|
optional:
|
|
- center_sub
|
|
- description
|
|
- id: circle-gradient
|
|
name: 원형 라벨
|
|
template: blocks/visuals/circle-gradient.html
|
|
height_cost: compact
|
|
visual: 파란 그라데이션 원(190px) + 이중 테두리 + 중앙 흰색 텍스트.
|
|
when: '섹션 전환점 키워드 강조. 아래에 카드/표 올 때 주제 선언.
|
|
|
|
'
|
|
not_for: '본문 텍스트 → topic-header 계열. 결론 → banner-gradient.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- label
|
|
optional:
|
|
- sub_label
|
|
- id: compare-pill-pair
|
|
name: 둥근 박스 VS
|
|
template: blocks/visuals/compare-pill-pair.html
|
|
height_cost: compact
|
|
visual: 이중 테두리 둥근 박스 2개 나란히 + 'VS'. 하늘색 테두리 + 시안 텍스트.
|
|
when: '2개 개념 시각적 대비 (비교 테이블 위 헤더로). 예: ''DX 협업 프로세스'' VS ''BIM 정보 관리''
|
|
|
|
'
|
|
not_for: '상세 비교(5행+) → compare-3col-badge 사용. 3개 이상 → card-compare-3col 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- left_label
|
|
- right_label
|
|
optional:
|
|
- left_sub
|
|
- right_sub
|
|
- id: process-horizontal
|
|
name: 가로 단계 흐름
|
|
template: blocks/visuals/process-horizontal.html
|
|
height_cost: medium
|
|
visual: 가로 방향. 파란 원형 번호 + 제목 + 설명(카드). → 화살표.
|
|
when: '논리적 순서를 가로로 (1→2→3→4). 프로세스 흐름.
|
|
|
|
'
|
|
not_for: '시간 기반(연도) → process-horizontal 사용. 세로 나열 → card-numbered 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- steps[]
|
|
optional: []
|
|
- id: flow-arrow-horizontal
|
|
name: 가로 흐름 화살표
|
|
template: blocks/visuals/flow-arrow-horizontal.html
|
|
height_cost: compact
|
|
visual: SVG. 색상 둥근 캡슐이 가로 나열 + 사이 화살표. 컴팩트.
|
|
when: '기술 발전/전환 흐름을 간결하게. 예: GIS → SPCC → 토공 → BIM
|
|
|
|
'
|
|
not_for: '각 단계에 설명 필요 → process-horizontal 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- steps[]
|
|
optional: []
|
|
- id: keyword-circle-row
|
|
name: 키워드 원형 행
|
|
template: blocks/visuals/keyword-circle-row.html
|
|
height_cost: medium
|
|
visual: SVG 그라데이션 원 안에 큰 글자(G,S,I,M) + 아래 라벨 + 설명.
|
|
when: '약어 풀이. 핵심 키워드를 원형으로 시각 강조. 예: G(Geographic) + S(Structure) + I(Information)
|
|
+ M(Model)
|
|
|
|
'
|
|
not_for: '아이콘+설명 → card-icon-desc 사용. 용어 정의 → card-icon-desc 사용.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- keywords[]
|
|
optional: []
|
|
- id: quote-big-mark
|
|
name: 큰따옴표 인용
|
|
template: blocks/emphasis/quote-big-mark.html
|
|
height_cost: medium
|
|
visual: 좌상단 ❝ + 우하단 ❞ 큰따옴표 장식. 연한 배경 박스 + 인용문 + 우측 출처.
|
|
when: '임팩트 있는 문제 제기. 시각적으로 인용임을 명확히.
|
|
|
|
'
|
|
not_for: '짧은 인용(1~2줄) → quote-question. 질문 형태 → quote-question.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- quote_text
|
|
optional:
|
|
- source
|
|
- id: quote-question
|
|
name: 질문형 강조
|
|
template: blocks/emphasis/quote-question.html
|
|
height_cost: medium
|
|
visual: 밝은 파란 배경 + 파란 테두리 + 큰 질문 텍스트(22px) + 부연 설명.
|
|
when: '독자에게 질문. 문제 인식 유도, 전환점. 예: ''지금의 방식으로도 가능할까?''
|
|
|
|
'
|
|
not_for: '인용(출처) → quote-big-mark. 결론 → banner-gradient.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- question
|
|
optional:
|
|
- description
|
|
- id: comparison-2col
|
|
name: 2단 병렬 비교
|
|
template: blocks/emphasis/comparison-2col.html
|
|
height_cost: medium
|
|
visual: 좌우 2단. 좌 파란 헤더 + 우 빨간 헤더. 중앙 구분선. 서브타이틀+본문.
|
|
when: 'A vs B 직접 비교. 장단점, Before/After.
|
|
|
|
'
|
|
not_for: '다항목 표(5행+) → compare-3col-badge. 시각 대비 → compare-pill-pair.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- left_title
|
|
- left_content
|
|
- right_title
|
|
- right_content
|
|
optional:
|
|
- left_subtitle
|
|
- right_subtitle
|
|
- id: banner-gradient
|
|
name: 그라데이션 배너
|
|
template: blocks/emphasis/banner-gradient.html
|
|
height_cost: compact
|
|
visual: 전체 너비 파란 그라데이션 배경(둥근 모서리) + 중앙 흰색 텍스트.
|
|
when: '섹션 구분, 핵심 선언, 강조 문구.
|
|
|
|
'
|
|
not_for: '하단 결론 → banner-gradient. 인용 → quote 계열.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- text
|
|
optional:
|
|
- sub_text
|
|
- id: dark-bullet-list
|
|
name: 다크 배경 불릿
|
|
template: blocks/emphasis/dark-bullet-list.html
|
|
height_cost: medium
|
|
visual: 짙은 남색 배경 + 파란 제목 + 흰 텍스트 불릿. 파란 불릿 마커.
|
|
when: '핵심 포인트를 짙은 배경 위에 강조. 시각적 무게감.
|
|
|
|
'
|
|
not_for: '밝은 배경 → card-icon-desc 또는 card-numbered.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- bullets[]
|
|
optional:
|
|
- title
|
|
- id: highlight-strip
|
|
name: 강조 분류 스트립
|
|
template: blocks/emphasis/highlight-strip.html
|
|
height_cost: compact
|
|
visual: 가로 색상 구간들. 각 구간에 흰 라벨. 카테고리 색상 분류 바.
|
|
when: '카테고리별 색상 분류를 한 줄로. 예: 상용(회색) | 3rd Party(파랑) | 전문SW(빨강)
|
|
|
|
'
|
|
not_for: '탭 전환 → tab-label-row. 결론 → banner-gradient.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- segments[]
|
|
optional: []
|
|
- id: callout-solution
|
|
name: 솔루션 콜아웃
|
|
template: blocks/emphasis/callout-solution.html
|
|
height_cost: medium
|
|
visual: 밝은 파란 배경 + 파란 테두리 + 아이콘 + 파란 제목 + 설명 + 출처.
|
|
when: '핵심 해결책, 솔루션, 방향성 강조. 예: ''💡 Solution 제시 포인트''
|
|
|
|
'
|
|
not_for: '경고/문제 → callout-warning. 인용 → quote 계열.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- title
|
|
- description
|
|
optional:
|
|
- icon
|
|
- source
|
|
- id: callout-warning
|
|
name: 경고 콜아웃
|
|
template: blocks/emphasis/callout-warning.html
|
|
height_cost: medium
|
|
visual: 연한 빨간 배경 + 빨간 테두리 + 아이콘 + 빨간 제목 + 진한 빨간 설명.
|
|
when: '문제점 지적, 주의사항, 잘못된 접근 경고. 예: ''⚠️ 현재 접근 방식의 한계''
|
|
|
|
'
|
|
not_for: '해결책 → callout-solution. 인용 → quote 계열.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- title
|
|
- description
|
|
optional:
|
|
- icon
|
|
- id: tab-label-row
|
|
name: 탭 라벨 행
|
|
template: blocks/emphasis/tab-label-row.html
|
|
height_cost: compact
|
|
visual: 가로 탭 버튼. 선택됨=색상 배경+흰 텍스트, 나머지=회색. 밝은 바탕.
|
|
when: '카테고리 전환/분류 표시. 예: 제조 | 건축 | [인프라/토목]
|
|
|
|
'
|
|
not_for: '색상 바 → highlight-strip. 실제 클릭 전환 미지원.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- tabs[]
|
|
optional: []
|
|
- id: divider-text
|
|
name: 텍스트 구분선
|
|
template: blocks/emphasis/divider-text.html
|
|
height_cost: compact
|
|
visual: 좌우 가는 회색 선 + 중앙 작은 회색 텍스트. 시각적 휴식점.
|
|
when: '섹션 구분, 주제 전환점에 가벼운 구분. 예: ── 핵심 요약 ──
|
|
|
|
'
|
|
not_for: '강한 구분 → section-header-bar. 결론 → banner-gradient.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- text
|
|
optional: []
|
|
- id: image-row-2col
|
|
name: 이미지 2열
|
|
template: blocks/media/image-row-2col.html
|
|
height_cost: large
|
|
visual: 이미지 2장 나란히. 높이 354px. 캡션 선택.
|
|
when: '시공 사진 2장, 현장 비교 나란히.
|
|
|
|
'
|
|
not_for: '4장 → image-grid-2x2. 이미지+텍스트 → image-side-text. 1장 → image-full-caption.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- images[]
|
|
optional: []
|
|
- id: image-grid-2x2
|
|
name: 이미지 2x2 그리드
|
|
template: blocks/media/image-grid-2x2.html
|
|
height_cost: large
|
|
visual: 이미지 4장 2x2 격자. 높이 200px 각. 캡션 선택.
|
|
when: '현장 사진 4장, 4개 관점 이미지.
|
|
|
|
'
|
|
not_for: '2장 → image-row-2col. 이미지+텍스트 → image-side-text.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- images[]
|
|
optional: []
|
|
- id: image-side-text
|
|
name: 이미지+텍스트 가로
|
|
template: blocks/media/image-side-text.html
|
|
height_cost: medium
|
|
visual: 좌측 이미지(320px) + 우측 제목+설명+불릿. 가로 배치.
|
|
when: '이미지에 대한 설명. 제품/시스템 소개.
|
|
|
|
'
|
|
not_for: '이미지만 → image-row-2col. 여러 장 → image-grid-2x2.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- image_src
|
|
optional:
|
|
- image_alt
|
|
- title
|
|
- description
|
|
- bullets
|
|
- id: image-full-caption
|
|
name: 전체 너비 이미지
|
|
template: blocks/media/image-full-caption.html
|
|
height_cost: large
|
|
visual: 전체 너비 이미지 1장(둥근 모서리) + 하단 캡션.
|
|
when: '핵심 도표, 대형 다이어그램, 전경 사진을 크게.
|
|
|
|
'
|
|
not_for: '2장+ → image-row-2col/image-grid-2x2. 이미지+텍스트 → image-side-text.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- src
|
|
optional:
|
|
- alt
|
|
- caption
|
|
- id: image-before-after
|
|
name: Before/After 이미지
|
|
template: blocks/media/image-before-after.html
|
|
height_cost: large
|
|
visual: 좌 Before(회색 라벨) + → 화살표(파란) + 우 After(파란 라벨). 각각 이미지.
|
|
when: '변화 전후 비교. 디지털 전환 전후, 공정 개선.
|
|
|
|
'
|
|
not_for: '이미지 단순 나열 → image-row-2col. 텍스트 비교 → comparison-2col.
|
|
|
|
'
|
|
slots:
|
|
required:
|
|
- before_src
|
|
- after_src
|
|
optional:
|
|
- before_label
|
|
- after_label
|
|
- caption
|
|
layouts:
|
|
- id: 65-35
|
|
name: 6.5:3.5 좌우 분할
|
|
grid_columns: 6.5fr 3.5fr
|
|
when: 좌측 메인 + 우측 보조
|
|
- id: 50-50
|
|
name: 5:5 균등 분할
|
|
grid_columns: 1fr 1fr
|
|
when: 대등한 비교
|
|
- id: single
|
|
name: 단일 컬럼
|
|
grid_columns: 1fr
|
|
when: 순차 구조
|
|
- id: 35-65
|
|
name: 3.5:6.5 좌우 분할
|
|
grid_columns: 3.5fr 6.5fr
|
|
when: 좌측 요약 + 우측 메인
|
|
- id: 40-60
|
|
name: 4:6 좌우 분할
|
|
grid_columns: 4fr 6fr
|
|
when: 좌측 설명 + 우측 시각화
|
|
- id: 60-40
|
|
name: 6:4 좌우 분할
|
|
grid_columns: 6fr 4fr
|
|
when: 좌측 메인 + 우측 보조
|