feat: system tools and admin enhancements
All checks were successful
CI/CD Pipeline / test (push) Successful in 3s
CI/CD Pipeline / deploy (push) Successful in 20s

This commit is contained in:
2026-01-31 20:12:09 +01:00
parent 64244567c0
commit 9c60a8944e
31 changed files with 3088 additions and 173 deletions

View File

@@ -216,6 +216,39 @@ a {
overflow-y: auto;
}
.bb-lightbox-modal {
max-width: min(96vw, 1200px);
}
.bb-lightbox-modal .modal-content {
background: rgba(12, 16, 24, 0.98);
}
.bb-lightbox-body {
position: relative;
min-height: 200px;
}
.bb-lightbox-controls {
position: absolute;
inset: 0;
display: flex;
align-items: center;
justify-content: space-between;
padding: 0 0.75rem;
pointer-events: none;
}
.bb-lightbox-btn {
pointer-events: auto;
border-radius: 999px;
width: 42px;
height: 42px;
display: inline-flex;
align-items: center;
justify-content: center;
}
.bb-attachment-list {
display: flex;
flex-direction: column;
@@ -740,6 +773,27 @@ a {
flex: 1 1 auto;
}
.bb-post-body blockquote {
margin: 1rem 0;
padding: 0.75rem 1rem;
border-left: 3px solid var(--bb-accent, #f29b3f);
background: rgba(255, 255, 255, 0.04);
color: var(--bb-ink-muted);
border-radius: 8px;
}
.bb-post-body blockquote > cite {
display: block;
font-style: normal;
font-weight: 600;
color: var(--bb-ink);
margin-bottom: 0.35rem;
}
.bb-post-body blockquote > div {
color: var(--bb-ink);
}
.bb-post-footer {
display: flex;
justify-content: flex-end;
@@ -2229,6 +2283,166 @@ a {
padding: 1rem;
}
.bb-acp-stats-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 1.5rem;
}
.bb-acp-stats-table {
width: 100%;
border-radius: 10px;
border: 1px solid rgba(255, 255, 255, 0.08);
background: rgba(12, 16, 24, 0.6);
overflow: hidden;
border-collapse: collapse;
}
.bb-acp-stats-table th {
text-align: left;
padding: 0.55rem 0.75rem;
font-size: 0.72rem;
text-transform: uppercase;
letter-spacing: 0.08em;
color: var(--bb-ink-muted);
background: rgba(255, 255, 255, 0.04);
}
.bb-acp-stats-table td {
padding: 0.6rem 0.75rem;
border-top: 1px solid rgba(255, 255, 255, 0.06);
color: var(--bb-ink);
}
.bb-acp-stats-table tbody tr:nth-child(even) {
background: rgba(255, 255, 255, 0.03);
}
.bb-acp-stats-value {
text-align: right;
font-weight: 600;
}
.bb-acp-version-inline {
display: inline-flex;
align-items: center;
gap: 0.75rem;
flex-wrap: wrap;
}
.bb-acp-version-link {
color: var(--bb-accent, #f29b3f);
text-decoration: none;
font-weight: 600;
}
.bb-acp-version-link:hover {
text-decoration: underline;
}
.bb-acp-version-meta {
color: var(--bb-ink-muted);
font-size: 0.85rem;
}
.bb-acp-update-log {
max-height: 240px;
overflow: auto;
background: rgba(12, 16, 24, 0.7);
border-radius: 8px;
padding: 0.75rem;
border: 1px solid rgba(255, 255, 255, 0.08);
color: var(--bb-ink);
font-size: 0.85rem;
}
.bb-status-icon {
display: inline-flex;
align-items: center;
justify-content: center;
font-size: 1rem;
}
.bb-status-icon.is-ok {
color: #22c55e;
}
.bb-status-icon.is-bad {
color: #ef4444;
}
.bb-status-icon.is-warn {
color: #f59e0b;
}
[data-bs-theme="light"] .bb-acp-stats-table {
background: #ffffff;
border-color: rgba(14, 18, 27, 0.12);
}
[data-bs-theme="light"] .bb-acp-stats-table th {
background: rgba(14, 18, 27, 0.04);
color: #5b6678;
}
[data-bs-theme="light"] .bb-acp-stats-table td {
border-top-color: rgba(14, 18, 27, 0.06);
}
[data-bs-theme="light"] .bb-acp-stats-table tbody tr:nth-child(even) {
background: rgba(14, 18, 27, 0.02);
}
.bb-acp-admin-log__table {
width: 100%;
border-collapse: collapse;
border-radius: 10px;
overflow: hidden;
border: 1px solid rgba(255, 255, 255, 0.08);
background: rgba(12, 16, 24, 0.6);
}
.bb-acp-admin-log__table th {
text-align: left;
padding: 0.55rem 0.75rem;
font-size: 0.72rem;
text-transform: uppercase;
letter-spacing: 0.08em;
color: var(--bb-ink-muted);
background: rgba(255, 255, 255, 0.04);
}
.bb-acp-admin-log__table td {
padding: 0.6rem 0.75rem;
border-top: 1px solid rgba(255, 255, 255, 0.06);
color: var(--bb-ink);
}
.bb-acp-admin-log__table tbody tr:nth-child(even) {
background: rgba(255, 255, 255, 0.03);
}
.bb-acp-admin-log__table tfoot td {
text-align: right;
}
[data-bs-theme="light"] .bb-acp-admin-log__table {
background: #ffffff;
border-color: rgba(14, 18, 27, 0.12);
}
[data-bs-theme="light"] .bb-acp-admin-log__table th {
background: rgba(14, 18, 27, 0.04);
color: #5b6678;
}
[data-bs-theme="light"] .bb-acp-admin-log__table td {
border-top-color: rgba(14, 18, 27, 0.06);
}
[data-bs-theme="light"] .bb-acp-admin-log__table tbody tr:nth-child(even) {
background: rgba(14, 18, 27, 0.02);
}
.bb-icon {
width: 44px;
height: 44px;
@@ -2587,6 +2801,10 @@ a {
max-width: 320px;
}
.bb-audit-limit {
max-width: 120px;
}
.bb-sort-label {
display: flex;
align-items: center;