Files
Aislo/ui_template/ui_template_modal.css
T
eomsangdonandClaude Opus 5.5 1d8642fd76 feat(735-1): 서고 나무 지우기 — 쓰는 곳 경고 표 뒤 그 줄째 지움 · 되돌림
- 새 M02_Library_Delete: 쓰는 줄 미리 보기(종류 · 이름 · 키 · 줄 · 층) · 권한 밖 409 막힘 목록 ·
  확인 몸이면 쓰는 문서의 그 줄 지움(store.write 정본 다시 셈) 뒤 문서 지움 · _합친것/ 기록
  (지운 문서 · 자리 · 고친 문서 앞판) · 되돌림(그새 고친 문서는 건너뜀) · 단가산출 바탕 · 더한줄 열쇠 당김
- 미리 보기 길 POST {kind}-tree/delete-check · undo 길이 지움 기록도 되돌림 · 합친 것 목록에 「지움」
- 나무 고침 몸 확인 칸 · 세션을 나무 고침에 넘김 · 옛 _refuse_used 걷음
- 화면: 지우기 앞 경고 창(쓰는 곳 N · 표 · 프로젝트 사본 영향 없음 · 되돌림 자리) · 부품 상자
  확인창에 detail 칸(넓은 판 · 안 스크롤)
- 시험: 새 test_735_1 · test_716_4 의 쓰는 곳 409 시험을 확인 없음 409 + 목록 꼴로 고침
  (지움이 막힘에서 경고 뒤 지움으로 바뀜)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 15:50:56 +09:00

122 lines
3.2 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
.ui-modal__backdrop {
position: fixed;
inset: 0;
z-index: var(--z-modal);
display: flex;
align-items: flex-start;
justify-content: center;
background-color: var(--color-scrim); /* 공용 확인 창(.ui-confirm)과 같이 뒤를 가림 */
}
/* 위에서 고정 거리 — 최대 높이일 때 가운데 자리에 윗변을 붙이고 아래로만 늘고 줆(찾기 칸이 안 움직임).
큰 창은 max-height 대신 --modal-max 를 줌. */
.ui-modal {
display: flex;
flex-direction: column;
gap: var(--spacing-8);
width: min(720px, 92vw);
max-height: var(--modal-max, 80vh);
margin-top: calc((100dvh - var(--modal-max, 80vh)) / 2);
padding: var(--spacing-16);
border-radius: var(--radius-xl);
border: 1px solid var(--color-border);
background: var(--color-surface-raised);
box-shadow: var(--shadow-lg);
font-size: var(--text-body-sm);
overflow: auto;
}
.ui-modal__top {
display: flex;
align-items: center;
justify-content: space-between;
gap: var(--spacing-8);
}
/* 머리 단추 자리(곁값 actions) — 제목이 남는 폭을 먹고 단추는 [닫기] 바로 왼쪽 ·
긴 제목 = 한 줄 말줄임(전체 글 = title) · [닫기] · 머리 단추는 안 줄고 안 꺾임 */
.ui-modal__top > h3 {
flex: 1 1 auto;
min-width: 0;
margin-right: auto;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.ui-modal__top > :not(h3) {
flex: none;
}
.ui-modal__top > button,
.ui-modal__top > .ui-modal__actions > button {
white-space: nowrap;
}
.ui-modal__actions {
display: flex;
flex-wrap: wrap;
justify-content: flex-end;
gap: var(--spacing-8);
}
/* 큰 창(곁값 wide) — 화면 거의 꽉 · 몸 넘침만 스크롤. 화면별 클래스보다 앞서게 두 클래스 */
.ui-modal.ui-modal--wide {
width: 96vw;
height: 94vh;
--modal-max: 94vh;
overflow: hidden;
}
.ui-modal--wide > .ui-modal__body {
flex: 1;
min-height: 0;
overflow: auto;
}
.ui-modal__body {
display: flex;
flex-direction: column;
gap: var(--spacing-8);
}
/* 모달 · 확인창(552-3) — 폭 단 · 확인창 제목 · 글 묻기 칸 */
.ui-modal[data-width="24rem"] {
width: min(24rem, 92vw);
}
.ui-modal[data-width="40rem"] {
width: min(40rem, 92vw);
}
.ui-modal[data-width="960px"] {
width: min(960px, 92vw);
}
/* 넓은 중간 창(557-2) — wide 꼴 + 1100 × 680 · 몸 안 칸이 따로 스크롤 */
.ui-modal.ui-modal--wide[data-width="1100px"] {
--modal-max: min(680px, 86vh);
width: min(1100px, 94vw);
height: var(--modal-max);
}
.ui-confirm__title {
margin: 0 0 var(--spacing-8);
font-size: var(--text-body);
font-weight: 700;
color: var(--color-text);
}
/* 확인창 덧 내용(표 · `detail`) — 넓은 판 · 넘치면 안에서 스크롤 */
.ui-confirm__panel.ui-confirm__panel--wide {
max-width: min(720px, 92vw);
}
.ui-confirm__detail {
max-height: 40vh;
overflow: auto;
margin-bottom: var(--spacing-16);
}
.ui-confirm__input {
box-sizing: border-box;
width: 100%;
margin-bottom: var(--spacing-16);
}
/* 숨김 — display 가 [hidden] 을 덮지 않게(공용 기본 꼴이 안 실린 곳 · 페이지 꾸밈 위에서도) */
:is(.ui-modal, .ui-modal__actions, .ui-modal__backdrop, .ui-modal__body, .ui-modal__top)[hidden] {
display: none !important;
}