/* Public forms reuse the access-status screen, including its animated canvas. */
.access-page.public-page{overflow:auto;font-family:"IBM Plex Sans",system-ui,sans-serif}
.auth-copy{margin-bottom:26px}
.auth-form .form-label{color:var(--access-text);font-size:.85rem;font-weight:600}
.auth-form .form-control{min-height:44px;border:1px solid var(--access-border);border-radius:10px;background:color-mix(in srgb,var(--access-bg) 60%,transparent);color:var(--access-text)}
.auth-form .form-control:focus{border-color:var(--access-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--access-accent) 18%,transparent)}
.auth-form .form-check{margin-top:20px;color:var(--access-muted)}
.auth-form .form-check-label{font-size:.85rem}
.auth-form .auth-submit{width:100%;font-weight:600}
.public-page .access-actions .btn-primary{color:#111827;font-weight:600}
.public-page .access-actions .btn,.not-found-actions .btn{border-radius:0!important;clip-path:none!important}
.not-found{width:100%;max-width:620px;margin:clamp(1rem,6vh,4rem) auto;text-align:center;padding:clamp(1rem,4vw,2rem);color:var(--text-main,var(--access-text));font-family:"IBM Plex Sans",system-ui,sans-serif}
.public-page .not-found{margin:0;padding:0;color:var(--access-text)}
.not-found-code{font-size:clamp(5rem,15vw,8rem);font-weight:600;line-height:1;letter-spacing:-.065em;color:var(--text-main,var(--access-text));margin-bottom:1.5rem}
.public-page .not-found-code{color:var(--access-text)}
.not-found h1{font-size:clamp(1.5rem,4vw,2rem);font-weight:600;line-height:1.25;margin:0 0 1rem}
.not-found p{color:var(--text-muted,var(--access-muted));font-size:1rem;line-height:1.6;margin:0 auto 1.75rem;max-width:440px}
.public-page .not-found p{color:var(--access-muted)}
.not-found-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}
.not-found-actions .btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:.65rem 1.1rem}
@media(max-width:575.98px){.not-found-actions{flex-direction:column}}
