/* B08 구조물도 모달(PLAN 95-3) — 조합마다 카드 셋(도면 · 일위대가 · 면적산출). 색은 테마 변수만. 창 크기 = 공용 wide(96vw × 94vh · 156-4). */ .b08-sheets .ui-modal__body { gap: var(--spacing-24); } .b08-sheets__combo { display: flex; flex-direction: column; gap: var(--spacing-8); } /* 조합끼리 가름줄(156-4) */ .b08-sheets__combo + .b08-sheets__combo { padding-top: var(--spacing-24); border-top: 1px solid var(--color-border); } .b08-sheets__title { display: flex; align-items: baseline; gap: var(--spacing-8); margin: 0; font-size: var(--text-body); color: var(--color-text); } .b08-sheets__from { font-size: var(--text-caption); font-weight: var(--font-weight-regular); color: var(--color-text-secondary); } /* M02 에 없는 조합 안내 — 빨간 글 */ .b08-sheets__combo > .ui-general-block__empty { color: var(--color-danger); } /* 카드 셋 = 한 줄 세 칸 · 차례 늘 도면 › 일위대가 › 면적산출 · 폭 2 : 3 : 3(170-1) · 높이 = 큰 창에 맞춤(156-4) */ .b08-sheets .m02-struct { --m02-struct-card-h: max(480px, calc(94vh - 14rem)); grid-template-columns: minmax(0, 2fr) minmax(0, 3fr) minmax(0, 3fr); gap: var(--spacing-16); } @media (max-width: 960px) { .b08-sheets .m02-struct { grid-template-columns: minmax(0, 1fr); } } /* 머리 단추 칸(170-2) — 편집 화면 밖에선 숨김 */ .b08-sheets .ui-modal__actions[hidden] { display: none; } /* 카드 [수정] → 사본 편집 화면(163-3) — 모달 몸통을 채움 · 넣을 값이면 안내 한 줄 위 */ .b08-sheets .ui-item-picker__edit-host { flex-direction: column; gap: var(--spacing-8); } /* 「조합 연결」 칸(154-2 · 163-1) — 시설마다 한 줄(제목 + 칸 칩 · 넘치면 다음 줄) */ .b08-link__row { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spacing-8); } .b08-link__facility { font-weight: var(--font-weight-semibold); color: var(--color-text); } .b08-link__chip { display: inline-flex; align-items: center; gap: var(--spacing-8); max-width: 100%; padding: 2px var(--spacing-8); border: 1px solid var(--color-border); border-radius: var(--radius-pills); } .b08-link__chip.is-missing { border-color: var(--color-danger); } /* 칩 테두리 상태 색(170-3) — 연결됨 · 마스터가 바뀜 · 고침 있음 · 원본 없어짐(빨강 점선) */ .b08-link__chip.is-linked { border-color: var(--color-success); } .b08-link__chip.is-changed { border-color: var(--color-warning); } .b08-link__chip.is-edited { border-color: var(--color-info); } .b08-link__chip.is-gone { border-style: dashed; border-color: var(--color-danger); } .b08-link__state { overflow: hidden; max-width: 18rem; white-space: nowrap; text-overflow: ellipsis; color: var(--color-text-secondary); } .b08-link__state.is-missing { color: var(--color-danger); } .b08-link__badges, .b08-link__buttons { display: inline-flex; gap: var(--spacing-4); } .b08-link__badges:empty { display: none; } /* 배지(163-4) — 고침 있음 · 마스터가 바뀜(경고) */ .b08-link__badge { padding: 0 var(--spacing-8); border: 1px solid var(--color-border); border-radius: var(--radius-md); font-size: var(--text-caption); color: var(--color-text); } .b08-link__badge.is-warn { border-color: var(--color-warning); font-weight: var(--font-weight-semibold); }