.topbar { position: sticky; top: 0; z-index: 50; display: flex; align-items: center; justify-content: space-between; min-height: var(--topbar-height); padding: 0 var(--space-8); border-bottom: 1px solid var(--color-border); background: rgba(255,255,255,.97); }
.brand-lockup { color: var(--color-primary-strong); text-decoration: none; }
.brand { display: block; font-size: 1.25rem; font-weight: 800; letter-spacing: -.035em; }
.section-name { display: block; margin-top: 1px; color: var(--color-text-muted); font-size: .7rem; letter-spacing: .13em; text-transform: uppercase; }
.organization-name { color: var(--color-text-muted); font-size: var(--font-size-sm); font-weight: 600; }
.app-shell { display: grid; grid-template-columns: var(--sidebar-width) minmax(0, 1fr); min-height: calc(100vh - var(--topbar-height)); }
.sidebar { padding: var(--space-8) var(--space-5); border-right: 1px solid var(--color-border); background: var(--color-surface); }
.content { width: min(var(--content-max-width), 100%); padding: var(--space-10); }
.page-header { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-6); margin-bottom: var(--space-8); }
.dashboard-grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: var(--space-5); }
footer { padding: var(--space-12) 0 var(--space-3); color: var(--color-text-muted); font-size: var(--font-size-xs); }
