Files

116 lines
2.3 KiB
CSS
Raw Permalink Normal View History

/* Dashboard layout, tab bar, save bar. */
/* Split out of admin.css (#533). Loaded from admin.css in a fixed order —
later sheets override earlier ones, so the order there is the cascade. */
/* ── Dashboard Layout ──────────────────────────────────────── */
.admin-dashboard {
min-height: 100vh;
display: flex;
flex-direction: column;
}
.admin-header {
position: sticky;
top: 0;
z-index: 100;
display: flex;
align-items: center;
justify-content: space-between;
padding: 0.75rem 1.5rem;
background: var(--admin-bg);
border-bottom: 1px solid var(--admin-border);
backdrop-filter: blur(8px);
}
.admin-header h1 {
font-size: 1rem;
font-weight: 600;
margin: 0;
white-space: nowrap;
}
.admin-header-left {
display: flex;
align-items: center;
gap: 1.5rem;
}
.admin-header-right {
display: flex;
align-items: center;
gap: 0.5rem;
}
.admin-header-divider {
width: 1px;
height: 20px;
background: var(--admin-border);
margin: 0 0.25rem;
}
.admin-tabs {
display: flex;
gap: 0;
}
/* Rendered as an <a> — each tab is its own route. */
.admin-tab {
background: none;
border: none;
color: var(--admin-text-muted);
padding: 0.5rem 1rem;
font-size: 0.85rem;
cursor: pointer;
border-bottom: 2px solid transparent;
transition: all 0.15s;
display: inline-block;
text-decoration: none;
}
.admin-tab:hover {
color: var(--admin-text-secondary);
}
.admin-tab.active {
color: var(--admin-text);
border-bottom-color: var(--admin-text);
}
.admin-main {
flex: 1;
/* Extra bottom padding so the floating save bar never covers page content. */
padding: 1.5rem 1.5rem 6rem;
2026-10-02 18:14:23 +02:00
max-width: calc(var(--admin-content-width) + 3rem);
margin: 0 auto;
width: 100%;
}
/* ── Save Bar ──────────────────────────────────────────────── */
.save-bar-left {
display: flex;
align-items: center;
gap: 0.75rem;
}
.unsaved-badge {
display: inline-flex;
align-items: center;
font-size: 0.75rem;
color: var(--admin-warning);
font-weight: 500;
}
.save-message {
font-size: 0.75rem;
font-weight: 500;
}
.save-message.success {
color: var(--admin-success);
}
.save-message.error {
color: var(--admin-error);
}