Files
Aislo/ui_template/ui_template_group_cards.css
T

168 lines
3.8 KiB
CSS

/* 묶음 카드 공용 양식(171-2) — 글자 14px 한 벌 · 줄 간격 좁게 · 숫자 오른쪽. 색은 테마 변수만. */
.ui-group-cards {
/* 200-3 제목 줄 = 표 머리색 계열(옅게) · 합계 줄 = 강조색 더 짙게 — 둘 다 테마 변수에서 섞음(밝음 · 어두움 같이) */
--group-head-bg: color-mix(in srgb, var(--color-accent) 6%, var(--color-surface-raised));
--group-foot-bg: color-mix(in srgb, var(--color-accent) 15%, var(--color-surface-raised));
display: flex;
flex-direction: column;
gap: var(--spacing-8);
font-size: var(--text-body-sm);
line-height: 1.35;
}
.ui-group-cards__bar {
display: flex;
flex-wrap: nowrap;
align-items: center;
gap: var(--spacing-8);
}
/* 185-2 도구 줄 = 한 줄 · 단추 · 글 줄바꿈 없음 */
.ui-group-cards__bar .ui-btn,
.ui-group-cards__label,
.ui-group-cards__count {
flex: none;
white-space: nowrap;
}
.ui-group-cards__cols {
display: inline-flex;
align-items: center;
gap: var(--spacing-4);
}
.ui-group-cards__label,
.ui-group-cards__count {
color: var(--color-text-secondary);
}
.ui-group-cards__actions {
display: flex;
gap: var(--spacing-4);
margin-left: auto;
}
.ui-group-cards__grid {
display: grid;
grid-template-columns: repeat(var(--group-cols, 2), minmax(0, 1fr));
align-items: stretch; /* 200-1 같은 가로 줄 = 높이 같음 */
gap: var(--spacing-8);
}
.ui-group-card {
display: flex;
flex-direction: column;
min-width: 0;
padding: var(--spacing-4) var(--spacing-8);
background-color: var(--color-surface-raised);
border: 1px solid var(--color-border);
border-radius: var(--radius-cards);
}
/* 목록표에서 고른 호표 — B06 횡단 카드 고름과 같은 붉은 외곽선(181-2) */
.ui-group-card.is-pick {
border-color: var(--color-danger);
box-shadow: 0 0 0 2px var(--color-danger);
}
.ui-group-card__head {
display: flex;
flex-wrap: wrap;
align-items: baseline;
column-gap: var(--spacing-8);
padding: 2px var(--spacing-4);
background-color: var(--group-head-bg);
border-bottom: 1px solid var(--color-border);
font-weight: var(--font-weight-bold);
}
.ui-group-card__no {
color: var(--color-accent);
}
.ui-group-card__spec,
.ui-group-card__unit {
color: var(--color-text-secondary);
font-weight: normal;
}
.ui-group-card__total {
margin-left: auto;
font-variant-numeric: tabular-nums;
}
.ui-group-card__body {
flex: 1 1 auto; /* 내용 적은 카드도 몸통이 늘어 합계 줄이 아래에 */
overflow-x: auto;
}
.ui-group-card__lines {
width: 100%;
border-collapse: collapse;
font-size: inherit;
}
.ui-group-card__lines th,
.ui-group-card__lines td {
padding: 1px var(--spacing-4);
text-align: left;
vertical-align: top;
}
.ui-group-cards .ui-group-card__lines th {
color: var(--color-text-secondary);
font-weight: normal;
white-space: nowrap;
}
.ui-group-card__lines .is-num {
text-align: right;
font-variant-numeric: tabular-nums;
white-space: nowrap;
}
.ui-group-card__name,
.ui-group-card__note {
white-space: pre-wrap;
overflow-wrap: anywhere;
}
.ui-group-card__note {
color: var(--color-text-secondary);
}
.ui-group-card__tag {
margin-right: var(--spacing-4);
color: var(--color-accent);
}
.ui-group-card__lines tr.is-link {
cursor: pointer;
}
.ui-group-card__lines tr.is-link:hover,
.ui-group-card .is-focus {
background: color-mix(in srgb, var(--color-accent) 8%, transparent);
}
.ui-group-card__foot {
display: flex;
flex-wrap: wrap;
justify-content: flex-end;
column-gap: var(--spacing-8);
padding: 2px var(--spacing-4);
background-color: var(--group-foot-bg);
border-top: 1px solid var(--color-border);
font-variant-numeric: tabular-nums;
}
.ui-group-card__part,
.ui-group-card__foot-note {
color: var(--color-text-secondary);
}
.ui-group-card__sum {
font-weight: var(--font-weight-bold);
}