Files
training/frontend/src/routes/user-management/components/UserProfilePanel/index.module.scss

40 lines
2.9 KiB
SCSS
Raw Normal View History

2026-07-28 18:01:51 +08:00
.panel {
min-width: 0;
padding: 26px 28px 28px;
border-left: 1px solid var(--page-rule);
background: var(--page-surface-2);
}
.panelTop { display: flex; align-items: center; justify-content: space-between; }
.eyebrow { margin: 0; color: var(--page-muted); font-size: 10px; font-weight: 800; letter-spacing: .14em; }
.iconButton { display: grid; width: 32px; height: 32px; place-items: center; padding: 0; border: 1px solid var(--page-rule); background: transparent; color: var(--page-muted); }
.iconButton:hover { border-color: var(--page-accent); color: var(--page-accent); }
.identity { display: grid; justify-items: start; gap: 8px; padding: 33px 0 25px; border-bottom: 1px solid var(--page-rule); }
.avatar { display: grid; width: 66px; height: 66px; place-items: center; border: 1px solid var(--page-accent); border-radius: 50%; color: var(--page-accent); font-size: 16px; font-weight: 850; }
.identity h2 { margin: 4px 0 0; color: var(--page-ink); font-size: 25px; letter-spacing: -.04em; }
.identity p { overflow: hidden; width: 100%; margin: -2px 0 3px; color: var(--page-muted); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.status { display: inline-flex; align-items: center; gap: 7px; color: var(--page-ink); font-size: 11px; font-weight: 750; }
.status > span { width: 7px; height: 7px; border-radius: 50%; background: var(--page-accent); }
.status.inactive > span { background: var(--page-muted); }
.details { display: grid; gap: 0; margin: 0; padding: 9px 0; border-bottom: 1px solid var(--page-rule); }
.details div { display: flex; justify-content: space-between; gap: 12px; padding: 11px 0; }
.details dt { color: var(--page-muted); font-size: 11px; }
.details dd { margin: 0; color: var(--page-ink); font-size: 11px; text-align: right; }
.access { display: grid; gap: 14px; padding: 23px 0 26px; }
.access .eyebrow { margin-bottom: 2px; }
.access div { display: grid; grid-template-columns: 20px 1fr auto; align-items: center; gap: 4px; color: var(--page-ink); font-size: 11px; }
.access svg { color: var(--page-accent); }
.access small { color: var(--page-muted); font-size: 10px; }
.actions { display: flex; }
.outlineButton { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 42px; width: 100%; border: 1px solid var(--page-rule); background: transparent; color: var(--page-ink); font-size: 11px; font-weight: 750; }
.outlineButton:hover { border-color: var(--page-accent); color: var(--page-accent); }
.emptyProfile { display: grid; justify-items: center; gap: 9px; min-height: 370px; place-content: center; color: var(--page-muted); text-align: center; }
.emptyProfile strong { color: var(--page-ink); font-size: 15px; }
.emptyProfile span { max-width: 180px; font-size: 11px; line-height: 1.5; }
.emptyProfile .outlineButton { width: auto; margin-top: 10px; padding: 0 13px; }
@media (max-width: 760px) {
.panel { border-top: 1px solid var(--page-rule); border-left: 0; }
.identity { padding-top: 25px; }
}