.auth-visual{background:linear-gradient(155deg, var(--color-primary) 0%, var(--bordeaux-dark) 100%);flex-direction:column;padding:clamp(40px,5vw,72px) clamp(32px,4vw,56px);display:flex;position:relative;overflow:hidden}.auth-visual__blob1{pointer-events:none;background:#d7f25b12;border-radius:50%;width:280px;height:280px;position:absolute;bottom:-80px;right:-80px}.auth-visual__blob2{pointer-events:none;background:#faf9f50a;border-radius:50%;width:340px;height:340px;position:absolute;top:-100px;left:-60px}.auth-visual__brand{font-family:var(--font-display);color:var(--paper);letter-spacing:-.01em;z-index:1;font-size:1.25rem;font-weight:700;position:relative}.auth-visual__headline{font-family:var(--font-display);font-size:clamp(26px,3vw,40px);font-weight:600;line-height:var(--line-heading);letter-spacing:-.02em;color:#faf9f5eb;z-index:1;margin-top:auto;margin-bottom:auto;position:relative}.auth-visual--full{min-height:calc(100dvh - 64px)}.auth-form-wrap{gap:18px;width:100%;max-width:420px;display:grid}.auth-form-wrap--wide{max-width:520px}.auth-form-header{gap:6px;display:grid}.auth-title{font-family:var(--font-display);color:var(--cabalio-primary);font-size:clamp(24px,2.8vw,34px);font-weight:700;line-height:var(--line-heading);letter-spacing:-.015em;margin:0}.auth-sub{font-size:var(--text-sm);color:var(--ink-500);margin:0;line-height:1.65}.auth-error{background:var(--error-soft);border-radius:var(--radius-control);font-size:var(--text-sm);color:var(--error);border:1px solid #b03a3033;padding:.65rem .95rem;line-height:1.5}.auth-fields{gap:14px;display:grid}.auth-remember{font-size:var(--text-sm);color:var(--ink-600);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;display:flex}.auth-consent{color:var(--ink-500);cursor:pointer;align-items:flex-start;gap:9px;font-size:13px;line-height:1.5;display:flex}.auth-consent input{flex-shrink:0;margin-top:3px}.auth-consent a{color:var(--cabalio-primary);text-underline-offset:2px;text-decoration:underline}.auth-oauth-note{color:var(--ink-400);text-align:center;margin:0;font-size:12px;line-height:1.5}.auth-oauth-note a{color:var(--ink-500);text-underline-offset:2px;text-decoration:underline}.auth-divider{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-400);align-items:center;gap:12px;font-size:11px;font-weight:700;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--line-default);flex:1;height:1px}.auth-footer{font-size:var(--text-sm);color:var(--ink-400);border-top:1px solid var(--line-default);flex-wrap:wrap;align-items:center;gap:5px 16px;padding-top:6px;display:flex}.auth-footer a{letter-spacing:var(--tracking-bold);color:var(--cabalio-primary);transition:color var(--transition-fast);font-weight:650}.auth-footer a:hover{color:var(--bordeaux)}.auth-page{background:var(--background-section);min-height:calc(100vh - 72px);padding:clamp(40px, 5vw, 72px) var(--page-padding-inline) clamp(56px, 7vw, 96px);justify-content:center;align-items:flex-start;display:flex}@media (max-width:767px){.auth-visual--full{min-height:calc(100dvh - 56px)}.auth-form-wrap,.auth-form-wrap--wide{max-width:100%}}.grid-cols-2{grid-template-columns:1fr 1fr}.onboarding-plz-grid{grid-template-columns:120px 1fr}.onboarding-hint{margin-top:12px}.onboarding-hint__title{font-size:var(--text-base)}.onboarding-hint__text{font-size:var(--text-sm);margin-top:8px;line-height:1.65}.role-picker{border:0;flex-direction:column;gap:10px;min-inline-size:0;margin:0;padding:0;display:flex}.role-picker legend{margin-bottom:2px;padding:0}.role-picker__grid{gap:10px;display:grid}.role-option{border:1.5px solid var(--line-default);border-radius:var(--radius-card);background:var(--surface-white);cursor:pointer;transition:border-color var(--transition-base), background var(--transition-base);gap:2px;padding:14px 16px;display:grid;position:relative}.role-option:hover{border-color:var(--brass)}.role-option__input{opacity:0;width:0;height:0;position:absolute}.role-option:has(.role-option__input:checked){border-color:var(--brass);background:var(--brand-mint)}.role-option:has(.role-option__input:focus-visible){outline:2px solid var(--brass);outline-offset:2px}.role-option__title{letter-spacing:var(--tracking-bold);color:var(--espresso);font-weight:700}.role-option__text{font-size:var(--text-sm);color:var(--ink-500)}.role-hint{font-size:var(--text-xs);color:var(--ink-500);border-left:2px solid var(--brass);margin:2px 0 0;padding-left:10px;line-height:1.5}
