.container { margin: 0 auto; padding: 0 var(--gutter-desktop); width: min(var(--container-max), 100%); } .page { padding: var(--stack-2) 0 var(--space-7); } .dashboard-page, .month-page, .settings-page, .register-page, .legal-page, .contact-page { padding-top: var(--space-0); } .site-header { background: var(--color-bg); border-bottom: var(--border-width-1) solid var(--color-border); position: sticky; top: var(--space-0); z-index: var(--z-header); } .site-header .container { padding-top: var(--header-pad-y); padding-bottom: var(--header-pad-y); } .app-topbar-inner { align-items: center; column-gap: var(--space-4); display: grid; grid-template-columns: auto 1fr; min-height: calc(var(--control-h) + var(--space-1)); } .site-header.is-auth-header .container { padding-top: var(--header-pad-y-auth); padding-bottom: var(--header-pad-y-auth); } .app-topbar-inner.is-guest { grid-template-columns: auto 1fr; } .app-topbar-inner.is-guest .app-auth-nav { justify-self: end; } .site-header.is-auth-header .app-topbar-inner.is-guest { min-height: 2.25rem; } .app-topbar-inner.is-user .app-user-nav { align-items: center; display: inline-flex; gap: var(--space-4); justify-self: end; } .site-footer { border-top: var(--border-width-1) solid var(--color-border); margin-top: var(--space-6); } .site-footer-inner { align-items: center; display: flex; gap: var(--space-4); justify-content: space-between; padding: var(--space-4) var(--page-content-inset) var(--space-5); } .admin-version-badge { background: color-mix(in srgb, var(--color-surface-2) 94%, transparent); border: var(--border-width-1) solid var(--color-border); bottom: var(--space-3); color: var(--color-text-muted); font-size: var(--font-size-xs); font-weight: var(--font-weight-semibold); padding: var(--space-1) var(--space-2); position: fixed; right: var(--space-3); z-index: var(--z-header); } .page-header { display: grid; gap: var(--space-2); margin-bottom: var(--space-4); padding-inline: var(--page-content-inset); } .page-header__title { font-size: var(--font-size-2xl); font-weight: var(--font-weight-bold); } .page-header__subtitle { color: var(--color-text-muted); } .app-page-actions-wrap { padding-bottom: var(--space-2); } .app-page-actions-wrap:empty { display: none; } .top-row { margin-bottom: var(--space-2); padding-inline: var(--page-content-inset); } @media (max-width: 51.25em) { .container { padding: 0 var(--gutter-tablet); } .app-topbar-inner.is-user { gap: var(--header-pad-y); grid-template-columns: 1fr; grid-template-rows: auto auto; } .app-topbar-inner.is-user .app-brand-wrap { align-items: center; display: flex; grid-column: 1; grid-row: 1; justify-content: space-between; width: 100%; } .app-topbar-inner.is-user .app-user-nav { align-items: center; display: grid; gap: var(--space-2); grid-column: 1; grid-row: 2; grid-template-columns: 1fr auto 1fr; justify-self: stretch; width: 100%; } .app-topbar-inner.is-user .app-user-nav .app-main-nav { grid-column: 2; justify-self: center; } .app-topbar-inner.is-user .app-user-nav .app-icon-nav { grid-column: 3; justify-self: end; } .app-topbar-inner.is-guest { column-gap: var(--space-2); grid-template-columns: auto 1fr; } .admin-version-badge { bottom: var(--space-2); left: 50%; right: auto; transform: translateX(-50%); } .site-footer-inner { align-items: flex-start; flex-direction: column; padding-bottom: var(--space-7); padding-bottom: calc(var(--space-7) + env(safe-area-inset-bottom)); } } @media (max-width: 32.5em) { .container { padding: 0 var(--gutter-mobile); } }