feat: strengthen design skill and refresh all showcases
Some checks failed
ci / build (push) Has been cancelled

This commit is contained in:
Yun Chan 2026-09-12 18:16:33 +09:00
parent 69e5cc1efd
commit e09d4efb1c
257 changed files with 8196 additions and 2374 deletions

View file

@ -1,5 +1,5 @@
.admin-body {
min-width: 20rem;
min-width: 0;
color: #1c1c1a;
background: #f3f4f3;
}
@ -237,7 +237,7 @@
display: inline-flex;
align-items: center;
gap: 0.55rem;
padding: 0.42rem 0.6rem;
padding: 0.42rem 0.7rem;
}
.topbar-actions .icon-button {
@ -390,10 +390,10 @@
gap: 0.5rem;
align-items: center;
margin-bottom: 0.75rem;
padding: 0.7rem;
padding: 0.875rem;
background: #fff;
border: 1px solid #dedfdd;
border-radius: 0.5rem;
border: 1px solid var(--brief-rule);
border-radius: var(--brief-panel-radius);
}
.search-field {
@ -412,6 +412,7 @@
width: 100%;
min-height: 2.75rem;
min-width: 0;
padding-inline: 0.5rem;
color: #222320;
background: transparent;
border: 0;
@ -419,6 +420,11 @@
font-size: 0.72rem;
}
.search-field:focus-within {
border-color: var(--focus);
box-shadow: 0 0 0 2px color-mix(in srgb, var(--focus) 32%, transparent);
}
.queue-toolbar select {
min-height: 2.75rem;
padding: 0.42rem 1.8rem 0.42rem 0.65rem;
@ -459,7 +465,8 @@
.settings-proof {
background: #fff;
border: 1px solid #dedfdd;
border-radius: 0.55rem;
border-radius: var(--brief-panel-radius);
box-shadow: none;
}
.queue-panel {
@ -522,7 +529,11 @@
}
.table-scroll {
min-width: 0;
max-width: 100%;
overflow: auto;
overscroll-behavior-inline: contain;
scrollbar-gutter: stable both-edges;
scrollbar-width: thin;
}
@ -535,9 +546,9 @@
.queue-table th,
.queue-table td {
padding: 0.7rem 0.6rem;
padding: 0.8rem 0.875rem;
border-bottom: 1px solid #ecedea;
font-size: 0.66rem;
font-size: var(--admin-body-size);
text-align: left;
vertical-align: middle;
}
@ -548,7 +559,7 @@
top: 0;
color: #777973;
background: #fafbfa;
font-size: 0.58rem;
font-size: var(--admin-meta-size);
font-weight: 730;
}
@ -605,7 +616,7 @@
.queue-table td > strong + small {
margin-top: 0.13rem;
color: #62665f;
font-size: 0.57rem;
font-size: var(--admin-meta-size);
}
.row-title {
@ -822,6 +833,13 @@
to { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
.queue-loading > span {
animation: none;
opacity: 0.72;
}
}
.queue-empty > span {
display: grid;
width: 3rem;
@ -1087,7 +1105,7 @@
.text-button {
min-width: 2.75rem;
min-height: 2.75rem;
padding: 0.4rem;
padding: 0.5rem;
color: #6f5420;
background: transparent;
border: 0;
@ -1510,23 +1528,26 @@
.claim-review article {
margin-bottom: 0.5rem;
padding: 0.65rem;
padding: 0.75rem;
background: #fafbfa;
border: 1px solid #e1e2df;
border: 1px solid var(--brief-rule);
border-left-width: 3px;
border-radius: 0.35rem;
border-radius: var(--brief-panel-radius);
}
.claim-review article.is-fact {
border-left-color: #3d7c5d;
background: var(--review-fact-bg);
}
.claim-review article.is-unknown {
border-left-color: #b1832d;
background: var(--review-unknown-bg);
}
.claim-review article.is-edited {
border-left-color: #9d3f34;
background: var(--review-edited-bg);
}
.claim-review header {
@ -1791,9 +1812,15 @@
}
.admin-dialog {
position: fixed;
inset: 0;
box-sizing: border-box;
width: min(35rem, calc(100% - 2rem));
max-height: calc(100dvh - 2rem);
margin: auto;
padding: 0;
overflow: auto;
overscroll-behavior: contain;
color: #20211f;
background: #fff;
border: 0;
@ -1801,6 +1828,10 @@
box-shadow: 0 1.5rem 5rem rgba(20, 20, 19, 0.28);
}
html:has(.admin-dialog[open]) {
overflow: hidden;
}
.admin-dialog::backdrop {
background: rgba(20, 20, 19, 0.62);
backdrop-filter: blur(2px);
@ -1923,6 +1954,13 @@
font-size: 0.65rem;
}
@media (min-width: 120rem) {
.admin-content {
max-width: 122rem;
padding: 2rem;
}
}
@media (max-width: 92rem) {
.admin-workbench {
grid-template-columns: minmax(35rem, 1fr) 23rem;
@ -1977,6 +2015,33 @@
}
}
/* 짧은 가로 화면은 조사관을 덮는 시트로 다뤄야 한다.
미디어·부제까지 고정하면 scroll 영역이 0px로 수축해 핵심 검토 내용이 전부 사라진다. */
@media (max-width: 76rem) and (max-height: 40rem) {
.inspector {
top: 0;
max-height: 100dvh;
}
.inspector-header {
padding: 0.65rem 0.8rem;
}
.inspector-header small,
.inspector-media {
display: none;
}
.inspector-tabs button {
min-height: 2.25rem;
padding-block: 0.45rem;
}
.inspector-actions {
padding: 0.5rem;
}
}
@media (max-width: 64rem) {
.admin-shell {
grid-template-columns: 13.5rem minmax(0, 1fr);
@ -2034,11 +2099,29 @@
}
.admin-topbar {
min-width: 0;
gap: 0.5rem;
padding: 0 0.8rem;
}
.breadcrumb {
margin-right: auto;
min-width: 0;
overflow-wrap: anywhere;
}
.topbar-actions {
min-width: 0;
flex: 0 0 auto;
}
.account-button {
display: grid;
width: 2.75rem;
min-width: 0;
flex: 0 0 2.75rem;
place-items: center;
padding: 0;
}
.icon-button kbd,
@ -2087,7 +2170,7 @@
@media (max-width: 34rem) {
.demo-strip {
min-height: 2.3rem;
padding-inline: 0.5rem;
padding-inline: 0.75rem;
}
.admin-sidebar,
@ -2141,6 +2224,29 @@
}
}
/* 이 규칙은 좁은 폭 보정 뒤에 둬야 한다. 그렇지 않으면 34rem 보정의 top 값이
짧은 화면 시트보다 뒤에 적용되어 스크롤 영역이 다시 0px가 된다. */
@media (max-width: 76rem) and (max-height: 40rem) {
.inspector {
top: 0;
max-height: 100dvh;
}
.channel-gates {
grid-template-columns: repeat(2, minmax(0, 1fr));
padding: 0.35rem;
gap: 0.35rem;
}
.channel-gate {
padding: 0.35rem 0.4rem;
}
.channel-gate small {
display: none;
}
}
/* 작은 운영 문구도 본문 대비 기준을 넘도록 중립색을 한 단계 진하게 쓴다. */
.admin-main small,
.admin-main dt,