.public-topbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; width: 100%; min-height: 70px; padding: 12px clamp(20px, 4vw, 52px); border-bottom: 1px solid var(--line); background: var(--surface); }
.public-brand { color: var(--ink); font-weight: 900; text-decoration: none; }
.public-topbar nav { display: flex; flex-wrap: wrap; gap: 20px; }
.public-topbar nav a { color: var(--ink); text-decoration: none; font-size: .88rem; font-weight: 700; }
.public-topbar nav a:hover { color: var(--accent); text-decoration: underline; }
.site-home { display: block; padding: 0; }
.site-home .coming-soon { display: grid; align-content: center; min-height: calc(100vh - 70px); padding: 32px; margin: 0 auto; }
.admin-auth.auth-stage { display: flex; flex-direction: column; align-items: stretch; padding: 0; }
.admin-auth.auth-stage .auth-panel { align-self: center; margin: auto 20px; }
.wf-public-page .wf-public { margin: 40px auto; }
@media (max-width: 560px) { .public-topbar { align-items: flex-start; flex-direction: column; gap: 8px; } .public-topbar nav { gap: 14px; } .site-home .coming-soon { min-height: calc(100vh - 94px); } }
