Files
Aislo/A00_Common/spreadsheet/spreadsheet_links.css
T

137 lines
2.7 KiB
CSS

/* spreadsheet_links.css (주인 D) — 위 알약 막대 · 연결 칸 세모 · 자재 고르기 창 */
.ss-links {
display: flex;
flex: none;
flex-wrap: wrap;
gap: var(--spacing-4);
padding: var(--spacing-4) var(--spacing-8);
border-bottom: 1px solid var(--color-border);
background: var(--color-surface);
}
.ss-link {
display: inline-flex;
align-items: baseline;
gap: var(--spacing-4);
padding: 2px 10px;
border: 1px solid var(--color-accent);
border-radius: 999px;
background: var(--color-surface-raised);
color: var(--color-text-body);
font: inherit;
font-size: 12px;
cursor: pointer;
}
.ss-link small {
color: var(--color-text-secondary);
}
.ss-link code {
font-size: 11px;
color: var(--color-accent);
}
/* 연결됨 — 흐림(연결 현황) */
.ss-link.is-linked {
opacity: 0.5;
border-style: dashed;
}
.ss-link.is-linked:hover {
opacity: 0.8;
}
.ss-link--add {
border-style: dashed;
color: var(--color-text-secondary);
}
/* 연결 칸 왼아래 세모(초록 오류 세모는 왼위 · 빨강 메모는 오른위) */
.ss-link-dot {
position: absolute;
z-index: 3;
width: 0;
height: 0;
border-top: 6px solid transparent;
border-left: 6px solid var(--color-accent);
pointer-events: none;
}
.ss-links__pick {
position: absolute;
z-index: var(--z-dropdown);
display: flex;
flex-direction: column;
gap: var(--spacing-4);
width: 320px;
padding: var(--spacing-8);
border: 1px solid var(--color-border);
border-radius: var(--radius-sm);
background: var(--color-surface-raised);
box-shadow: var(--shadow-lg);
}
.ss-links__search {
padding: 4px 6px;
border: 1px solid var(--color-border);
border-radius: var(--radius-sm);
font: inherit;
}
.ss-links__list {
display: flex;
flex-direction: column;
max-height: 240px;
overflow: auto;
}
.ss-links__row {
display: grid;
grid-template-columns: 1fr 1fr auto;
gap: var(--spacing-8);
padding: 4px 6px;
border: none;
background: none;
color: var(--color-text-body);
font: inherit;
text-align: left;
cursor: pointer;
}
.ss-links__row:hover {
background: var(--color-surface-sunken);
}
.ss-links__note {
padding: 4px 6px;
color: var(--color-text-muted);
}
/* 알약으로 이동한 칸 — 굵은 테두리 + 채움 깜빡임(1.6초 · 끝나면 스스로 지워짐) */
.ss-link-flash {
position: absolute;
z-index: 4;
box-sizing: border-box;
border: 3px solid var(--color-accent);
pointer-events: none;
animation: ss-link-flash 1.6s ease-out 1 both;
}
@keyframes ss-link-flash {
0%,
40%,
80% {
background: color-mix(in srgb, var(--color-accent) 40%, transparent);
}
20%,
60% {
background: transparent;
}
100% {
background: transparent;
opacity: 0;
}
}