.auth{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);background:var(--surface-card)}.auth__aside{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:var(--space-9) var(--space-10);background:var(--gradient-hero);color:var(--vzino-white);isolation:isolate}.auth__aside:after,.auth__aside:before{content:"";position:absolute;border-radius:var(--radius-pill);filter:blur(8px);z-index:-1;opacity:.55}.auth__aside:before{width:420px;height:420px;top:-140px;right:-120px;background:radial-gradient(circle at 30% 30%,rgba(91,100,234,.55),transparent 70%)}.auth__aside:after{width:380px;height:380px;bottom:-120px;left:-100px;background:radial-gradient(circle at 50% 50%,rgba(40,214,149,.32),transparent 70%)}.auth__brand{display:flex;align-items:center;gap:var(--space-3)}.auth__logo{height:34px;width:auto}.auth__aside-body{max-width:460px}.auth__headline{font:var(--fw-bold) clamp(2rem,1.3rem + 2.2vw,3rem)/1.1 var(--font-sans);letter-spacing:var(--tracking-tight);margin:0 0 var(--space-4)}.auth__sub{font:var(--fw-regular) var(--type-h3-size)/1.55 var(--font-sans);color:rgba(255,255,255,.74);margin:0 0 var(--space-8)}.auth__points{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-4)}.auth__point{display:flex;align-items:center;gap:var(--space-3);font:var(--fw-medium) var(--type-body1-size)/1.4 var(--font-sans);color:rgba(255,255,255,.92)}.auth__point-ic{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex:0 0 auto;border-radius:var(--radius-sm);background:rgba(255,255,255,.12);color:var(--vzino-mint);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.auth__aside-foot{font:var(--fw-regular) var(--type-body2-size)/1.4 var(--font-sans);color:rgba(255,255,255,.55)}.auth__points--card{margin:var(--space-5) 0;gap:var(--space-3)}.auth__points--card .auth__point{color:var(--text-strong)}.auth__points--card .auth__point-ic{width:36px;height:36px;background:var(--surface-brand-soft);color:var(--action-primary);-webkit-backdrop-filter:none;backdrop-filter:none}.auth--center{grid-template-columns:1fr;place-items:center}.auth__choices{flex-direction:column;margin-bottom:var(--space-2)}.auth__choice,.auth__choices{display:flex;gap:var(--space-3)}.auth__choice{align-items:center;padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-strong);text-decoration:none;transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.auth__choice:hover{border-color:var(--border-focus);box-shadow:var(--shadow-xs)}.auth__choice:active{transform:scale(var(--press-scale))}.auth__choice-ic{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 auto;border-radius:var(--radius-sm);background:var(--surface-sunken);color:var(--text-muted)}.auth__choice[data-role=resident] .auth__choice-ic{color:var(--role-resident)}.auth__choice[data-role=committee] .auth__choice-ic{color:var(--role-committee)}.auth__choice[data-role=concierge] .auth__choice-ic{color:var(--role-concierge)}.auth__choice-label{flex:1 1;font:var(--fw-semibold) var(--type-body1-size)/1 var(--font-sans)}.auth__choice>svg:last-child{color:var(--text-muted)}.auth__link--btn{background:none;border:none;cursor:pointer;padding:0;font:inherit}.auth__panel{display:flex;align-items:center;justify-content:center;padding:max(var(--space-9),calc(var(--safe-top) + var(--space-4))) calc(var(--space-6) + var(--safe-right)) max(var(--space-9),calc(var(--safe-bottom) + var(--space-4))) calc(var(--space-6) + var(--safe-left))}.auth__card{width:100%;max-width:400px}.auth__logo-mobile{display:none}.auth__eyebrow{font:var(--fw-semibold) var(--type-overline-size)/1 var(--font-sans);letter-spacing:var(--type-overline-spacing);text-transform:uppercase;color:var(--text-brand);margin:0 0 var(--space-3)}.auth__title{font:var(--fw-bold) var(--type-h1-size)/var(--type-h1-line) var(--font-sans);letter-spacing:var(--tracking-tight);color:var(--text-strong);margin:0 0 var(--space-2)}.auth__lead{font:var(--fw-regular) var(--type-body1-size)/1.5 var(--font-sans);color:var(--text-muted);margin:0 0 var(--space-7)}.auth__form{gap:var(--space-5)}.auth__form,.field{display:flex;flex-direction:column}.field{gap:var(--space-2)}.field__label{font:var(--fw-medium) var(--type-body2-size)/1.2 var(--font-sans);color:var(--text-strong)}.field__control{display:flex;align-items:center;gap:var(--space-2);height:52px;padding:0 var(--space-4);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.field__control:focus-within{border-color:var(--border-focus);box-shadow:var(--ring-focus)}.field__ic{color:var(--text-muted);display:inline-flex;flex:0 0 auto}.field__input{flex:1 1;min-width:0;height:100%;border:none;outline:none;background:transparent;font:var(--fw-regular) var(--type-body1-size)/1.4 var(--font-sans);color:var(--text-body)}.field__input::placeholder{color:var(--text-disabled)}.field__toggle{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-muted);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-xs);transition:color var(--dur-fast) var(--ease-out)}.field__toggle:hover{color:var(--text-brand)}.auth__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-top:calc(var(--space-1) * -1)}.auth__row--end{justify-content:flex-end}.auth__error{display:flex;align-items:center;gap:var(--space-2);margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--error-soft);color:var(--error-text);font:var(--fw-medium) var(--type-body2-size)/1.4 var(--font-sans)}.auth__error svg{flex:0 0 auto;color:var(--error)}.auth__note{display:flex;align-items:flex-start;gap:var(--space-2);margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--success-soft);color:var(--success-text);font:var(--fw-medium) var(--type-body2-size)/1.4 var(--font-sans)}.auth__note svg{flex:0 0 auto;margin-top:2px;color:var(--success)}.checkbox{gap:var(--space-3);-webkit-user-select:none;-moz-user-select:none;user-select:none}.checkbox,.checkbox__box{display:inline-flex;align-items:center;cursor:pointer}.checkbox__box{justify-content:center;width:22px;height:22px;flex:0 0 auto;border-radius:var(--radius-xs);border:2px solid var(--border-strong);background:var(--surface-card);color:transparent;padding:0;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.checkbox__box[aria-checked=true]{background:var(--vzino-indigo);border-color:var(--vzino-indigo);color:var(--vzino-white)}.checkbox__box svg{width:14px;height:14px}.checkbox__label{font:var(--fw-regular) var(--type-body2-size)/1.3 var(--font-sans);color:var(--text-body)}.auth__link{font:var(--fw-medium) var(--type-body2-size)/1 var(--font-sans);color:var(--text-brand);text-decoration:none;white-space:nowrap}.auth__link:hover{text-decoration:underline}@media (pointer:coarse){.field__toggle{width:var(--tap-min);height:var(--tap-min)}.auth__foot a,.auth__link,.auth__logo-mobile{position:relative}.auth__foot a:after,.auth__link:after,.auth__logo-mobile:after{content:"";position:absolute;inset:-15px -10px;min-height:var(--tap-min)}}.auth__submit{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;height:54px;margin-top:var(--space-1);border:1px solid transparent;border-radius:var(--radius-md);background:var(--action-primary);color:var(--text-on-brand);box-shadow:var(--shadow-brand);font:var(--fw-semibold) var(--type-body1-size)/1 var(--font-sans);letter-spacing:.01em;cursor:pointer;transition:transform var(--dur-fast) var(--ease-spring),box-shadow var(--dur-base) var(--ease-out),filter var(--dur-base) var(--ease-out)}.auth__submit svg{width:20px;height:20px}.auth__submit:hover{background:var(--action-primary-hover)}.auth__submit:active{transform:scale(var(--press-scale))}.auth__foot{text-align:center;margin:var(--space-7) 0 0;font:var(--fw-regular) var(--type-body2-size)/1.5 var(--font-sans);color:var(--text-muted)}.auth__foot a{color:var(--text-brand);font-weight:var(--fw-semibold);text-decoration:none}.auth__foot a:hover{text-decoration:underline}@media (max-width:900px){.auth{grid-template-columns:minmax(0,1fr)}.auth__aside{display:none}.auth__panel{align-items:flex-start;padding-top:max(var(--space-10),calc(var(--safe-top) + var(--space-4)))}.auth__logo-mobile{display:block;width:max-content;margin:0 auto var(--space-8)}.auth__logo-mobile img{display:block;height:32px;width:auto}}@media (max-width:480px){.auth__panel{padding-left:calc(var(--space-5) + var(--safe-left));padding-right:calc(var(--space-5) + var(--safe-right))}}@media (max-width:900px) and (max-height:740px){.auth__panel{padding-top:max(var(--space-6),calc(var(--safe-top) + var(--space-2)));padding-bottom:max(var(--space-5),calc(var(--safe-bottom) + var(--space-2)))}.auth__logo-mobile{margin-bottom:var(--space-5)}.auth__title{font-size:26px}.auth__lead{margin-bottom:var(--space-5)}.auth__form{gap:var(--space-4)}.auth__foot{margin-top:var(--space-5)}}@media (max-width:900px) and (max-height:620px){.auth__eyebrow,.auth__lead{display:none}.auth__title{font-size:22px;margin-bottom:var(--space-5)}.auth__logo-mobile{margin-bottom:var(--space-4)}.auth__form{gap:var(--space-3)}.field__control{height:46px}.auth__foot{margin-top:var(--space-4)}}