From 616003479b247c6613a4a5d726fbf8f672b90570 Mon Sep 17 00:00:00 2001 From: "hehihoho3@gmail.com" Date: Fri, 12 Jun 2026 23:12:03 +0900 Subject: [PATCH] =?UTF-8?q?feat(ui):=20collection=20=E2=80=94=20compact=20?= =?UTF-8?q?category,=20help=20modal,=20fit-to-width=20table?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Category management collapsed into a slim single-row strip - "사용법" button opens a reusable help modal (.modal-overlay/.modal-card + .help-item) explaining categories, filters, list view, and row actions - Merge thumbnail+title+channel into one "영상" column and tighten cells so the whole table fits the viewport — no horizontal scroll on page or table card - #mainContent min-width:0 to avoid flex overflow Co-Authored-By: Claude Opus 4.8 (1M context) --- src/main/resources/static/css/style.css | 38 ++++- src/main/resources/templates/collection.html | 165 ++++++++++++------- 2 files changed, 141 insertions(+), 62 deletions(-) diff --git a/src/main/resources/static/css/style.css b/src/main/resources/static/css/style.css index 4ff7095..8ed4d51 100644 --- a/src/main/resources/static/css/style.css +++ b/src/main/resources/static/css/style.css @@ -256,7 +256,7 @@ ul { list-style: none; padding: 0; margin: 0; } .nav-icon { margin-right: 0.7rem; color: currentColor; min-width: 18px; width: 18px; height: 18px; } /* Main content offset */ -#mainContent { transition: margin-left 0.3s ease; margin-left: var(--sidebar-width); } +#mainContent { transition: margin-left 0.3s ease; margin-left: var(--sidebar-width); min-width: 0; } body.sidebar-collapsed #mainContent { margin-left: var(--sidebar-collapsed-width); } /* ===== Page header (shared) ===== */ @@ -401,3 +401,39 @@ thead th { tbody td { padding: 0.65rem 0.75rem; border-bottom: 1px solid var(--border); } tbody tr { transition: background 0.15s ease; } tbody tr:hover { background: var(--hover); } + +/* ===== Modal (reusable) ===== */ +.modal-overlay { + display: none; position: fixed; inset: 0; z-index: 1000; + background: rgba(10, 14, 22, 0.55); + -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); + align-items: center; justify-content: center; padding: 1rem; +} +.modal-overlay.open { display: flex; } +.modal-card { + background: var(--surface); border: 1px solid var(--border); + border-radius: var(--r); box-shadow: var(--shadow-lg); + width: 100%; max-width: 580px; max-height: 86vh; overflow: auto; +} +.modal-head { + display: flex; align-items: center; justify-content: space-between; + padding: 1.05rem 1.4rem; border-bottom: 1px solid var(--border); + position: sticky; top: 0; background: var(--surface); z-index: 1; +} +.modal-head h3 { font-size: 1.05rem; font-weight: 700; } +.modal-close { background: none; border: none; color: var(--text-3); cursor: pointer; font-size: 1.5rem; line-height: 1; padding: 0 0.2rem; } +.modal-close:hover { color: var(--text); } +.modal-body { padding: 0.6rem 1.4rem 1.2rem; } + +/* Help guide items */ +.help-item { display: flex; gap: 0.9rem; padding: 0.85rem 0; border-bottom: 1px solid var(--border); } +.help-item:last-child { border-bottom: none; } +.help-item .hi-ic { + width: 34px; height: 34px; border-radius: 9px; flex-shrink: 0; + background: var(--accent-soft); color: var(--accent); + display: flex; align-items: center; justify-content: center; +} +.help-item .hi-ic svg { width: 17px; height: 17px; } +.help-item .hi-t { font-weight: 600; font-size: 0.9rem; margin-bottom: 3px; } +.help-item .hi-d { font-size: 0.82rem; color: var(--text-2); line-height: 1.6; } +.help-item .hi-d b { color: var(--text); font-weight: 600; } diff --git a/src/main/resources/templates/collection.html b/src/main/resources/templates/collection.html index 468d5b0..f22a1c9 100644 --- a/src/main/resources/templates/collection.html +++ b/src/main/resources/templates/collection.html @@ -13,31 +13,28 @@

수집함

수집한 영상을 분류·발굴하고 재가공 대상을 관리합니다.

- - - -
-
-

카테고리

-
-
- 로딩... +
+ + +
+
+ 카테고리 +
+ 로딩... +
+
- @@ -89,27 +86,65 @@
- - +
+ - - - - - - - - - - + + + + + + + + - +
썸네일제목채널구독자조회수시간당배율상태카테고리관리영상구독자조회수시간당배율상태카테고리관리
로딩 중...
로딩 중...
+ + +