- 길: asyncio.to_thread(build.save · refresh · reset) → store(나눈 storage 모듈) — PUT 500 고침 - 시트 서명: 수를 float 로 맞춤 — 화면(JS)을 거친 10.0 → 10 을 사용자 고침으로 잘못 알리던 덮임 알림 고침 - 화면: 본문 칸이 min-height 뿐이라 내장 엑셀 격자 높이 0 — 본문 높이 calc(100dvh - 머리) - 그림: 우기 · 지진 임계면 점선(건기와 겹쳐도 보임) · 해석 방법 글 짧게(Bishop) - 시험: 길(TestClient — 판 409 · 저장 · 갱신 · 그림 · xlsx · 초기화) · 서명 화면 왕복 같음 — 7 통과 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
82 lines
1.6 KiB
CSS
82 lines
1.6 KiB
CSS
/* =============================================================================
|
|
* E05_StabReport_UI_Style.css
|
|
* E05 보고서 본문 — 위 띠 · 내장 엑셀 · PDF 미리보기 창. 색은 테마 토큰만(밝음 · 어두움 같이)
|
|
* ========================================================================== */
|
|
|
|
.e05-page {
|
|
display: flex;
|
|
flex-direction: column;
|
|
height: calc(100dvh - var(--app-header-h)); /* 본문 칸은 min-height 뿐 — 100% 가 안 풀림 */
|
|
min-height: 0;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
.e05-stale {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: var(--spacing-12);
|
|
padding: var(--spacing-8) var(--spacing-16);
|
|
background: color-mix(in srgb, var(--color-warning) 18%, var(--color-surface));
|
|
color: var(--color-text);
|
|
border-bottom: 1px solid var(--color-border);
|
|
}
|
|
|
|
.e05-stale[hidden] {
|
|
display: none;
|
|
}
|
|
|
|
.e05-sheet {
|
|
flex: 1;
|
|
min-height: 0;
|
|
}
|
|
|
|
.e05-empty,
|
|
.e05-status,
|
|
.e05-hint {
|
|
margin: 0;
|
|
white-space: pre-line;
|
|
color: var(--color-text-muted);
|
|
}
|
|
|
|
.e05-empty {
|
|
padding: var(--spacing-16);
|
|
}
|
|
|
|
.e05-status.is-error {
|
|
color: var(--color-danger);
|
|
}
|
|
|
|
.e05-panel .ui-sidebar-actions {
|
|
flex-wrap: wrap;
|
|
}
|
|
|
|
.e05-preview {
|
|
position: fixed;
|
|
inset: 4vh 4vw;
|
|
z-index: 50;
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: var(--spacing-8);
|
|
padding: var(--spacing-12);
|
|
border-radius: var(--radius-sm);
|
|
background: var(--color-surface-raised);
|
|
box-shadow: 0 8px 32px rgb(0 0 0 / 35%);
|
|
}
|
|
|
|
.e05-preview[hidden] {
|
|
display: none;
|
|
}
|
|
|
|
.e05-preview__head {
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
gap: var(--spacing-8);
|
|
}
|
|
|
|
.e05-preview__frame {
|
|
flex: 1;
|
|
width: 100%;
|
|
border: 0;
|
|
background: #fff;
|
|
}
|