/* Layout integration only. Header layout, columns and buttons use the existing /style.css. */
:root { --z-site-header-height: 124px; }
#z-site-header { font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; font-size: 16px; line-height: 1.6; color: #0f172a; --text: #0f172a; --primary: #06A0BC; --bg-input: #f8fafc; --bg-elevated: #f1f5f9; }
/* Pages without the marketing hero's existing header clearance. */
body.z-site-header-offset { padding-top: var(--z-site-header-height); }
body.z-site-header-offset :is([id], section) { scroll-margin-top: calc(var(--z-site-header-height) + 24px); }
body.z-site-demo .sidebar { top: var(--z-site-header-height); min-height: 0; height: calc(100dvh - var(--z-site-header-height)); overflow-y: auto; }
body.z-site-demo .main { min-height: 0; }
body.z-site-demo .topbar { top: var(--z-site-header-height); }
body.z-site-inbox { height: 100dvh; }
body.z-site-inbox .sidebar { top: 0; }
body.z-site-error { width: auto; max-width: none; margin: 0; background: #fcfdfe; color: #0f172a; }
.z-site-error main { max-width: 620px; padding: 48px 24px; margin: auto; }
/* Preserve native dialog centering on the private report after the shared reset. */
body.z-site-header-offset dialog.workflow-dialog { margin: auto; }

@media (max-width: 640px) {
  :root { --z-site-header-height: 120px; }
  body.z-site-demo { flex-direction: column; }
  body.z-site-demo .sidebar { display: flex; position: relative; top: 0; width: 100%; min-width: 0; height: auto; max-height: 180px; flex-shrink: 0; }
  body.z-site-demo .sidebar :is(.sidebar-logo, .sidebar-tenant, .sidebar-user, .nav-label, .nav-section-label) { display: none; }
  body.z-site-demo .sidebar :is(.nav-section, .nav-main) { display: flex; overflow-x: auto; flex-shrink: 0; padding: 4px; }
  body.z-site-demo .sidebar .nav-item { flex-shrink: 0; white-space: nowrap; }
  body.z-site-demo .sidebar .nav-item span { display: inline; }
  body.z-site-demo .sidebar .nav-item .material-symbols-outlined { display: none; }
  body.z-site-demo .main { margin-left: 0; width: 100%; }
}

@media print { #z-site-header { display: none; } body.z-site-header-offset { padding-top: 0; } }
