.auth-page-shell{min-height:calc(100vh - var(--nav-height));background:var(--surface);padding:clamp(1.25rem,2vw,2rem);position:relative;overflow:clip}.auth-page-glow{display:none}.auth-shell{z-index:1;grid-template-columns:minmax(18rem,28rem) minmax(0,34rem);align-items:stretch;gap:clamp(1.25rem,3vw,3rem);max-width:86rem;margin:0 auto;display:grid;position:relative}.auth-rail{background:var(--surface-low);border-radius:.75rem;flex-direction:column;gap:1.5rem;padding:clamp(1.4rem,2vw,2rem);display:flex}.auth-rail-brand{color:inherit;align-items:center;gap:.9rem;text-decoration:none;display:inline-flex}.auth-rail-brand-mark{background:var(--primary);width:3rem;height:3rem;color:var(--primary-text);font-family:var(--font-headline);letter-spacing:.08em;border-radius:.75rem;justify-content:center;align-items:center;font-size:1rem;font-weight:800;display:inline-flex}.auth-rail-brand-copy{flex-direction:column;gap:.18rem;display:flex}.auth-rail-brand-copy strong{color:var(--ink);font-size:1rem}.auth-rail-brand-copy span{color:var(--ink-secondary);font-size:.84rem}.auth-rail-copy{flex-direction:column;gap:.85rem;display:flex}.auth-rail-kicker{background:var(--secondary-fixed);width:fit-content;color:var(--primary);font-family:var(--font-label);border-radius:999px;align-items:center;gap:.45rem;padding:.4rem .7rem;font-size:.8rem;font-weight:700;display:inline-flex}.auth-rail-title{font-family:var(--font-headline);letter-spacing:-.03em;color:var(--ink);margin:0;font-size:clamp(2.2rem,5vw,3.2rem);font-weight:800;line-height:1.05}.auth-rail-body{max-width:32rem;color:var(--ink-secondary);margin:0;font-size:1rem;line-height:1.7}.auth-rail-points{gap:.9rem;display:grid}.auth-rail-point{background:var(--surface-lowest);border-radius:.75rem;grid-template-columns:auto 1fr;gap:.95rem;padding:1rem 1.05rem;display:grid}.auth-rail-point-icon{background:var(--secondary-fixed);width:2.6rem;height:2.6rem;color:var(--primary);border-radius:.75rem;justify-content:center;align-items:center;display:inline-flex}.auth-rail-point-copy h2{color:var(--ink);margin:0 0 .2rem;font-size:.95rem;font-weight:700}.auth-rail-point-copy p{color:var(--ink-secondary);margin:0;font-size:.87rem;line-height:1.55}.auth-rail-footer{gap:.9rem;margin-top:auto;display:grid}.auth-rail-badge{background:var(--surface-high);width:fit-content;color:var(--ink-secondary);font-family:var(--font-label);border-radius:999px;align-items:center;gap:.5rem;padding:.55rem .8rem;font-size:.8rem;font-weight:600;display:inline-flex}.auth-rail-links{flex-wrap:wrap;gap:.8rem 1rem;display:flex}.auth-rail-links a{color:var(--ink);font-size:.9rem;font-weight:600;text-decoration:none}.auth-rail-links a:hover{color:var(--primary)}.auth-stage{align-items:center;display:flex}.auth-wrap{justify-content:center;align-items:center;width:100%;min-height:100%;display:flex}.auth-card{background:var(--surface-lowest);width:100%;max-width:34rem;box-shadow:var(--shadow-md);border-radius:.75rem;margin:0;padding:clamp(1.5rem,2.6vw,2.35rem)}.auth-title{font-family:var(--font-headline);color:var(--ink);letter-spacing:-.03em;margin:0 0 .35rem;font-size:clamp(1.9rem,4vw,2.4rem);font-weight:800}.auth-subtitle{color:var(--ink-secondary);margin:0 0 1.6rem;font-size:.98rem;line-height:1.7}.auth-form{flex-direction:column;gap:1rem;display:flex}.auth-field{flex-direction:column;gap:.35rem;display:flex}.auth-label{font-family:var(--font-label);color:var(--ink-secondary);letter-spacing:.01em;text-transform:uppercase;font-size:.82rem;font-weight:600}.auth-input{width:100%;color:var(--ink);background:var(--surface-highest);border:none;border-radius:.5rem;padding:.9rem 1rem;font-size:15px;transition:box-shadow .15s}.auth-input:focus{outline:none;box-shadow:0 0 0 2px #00514766}.auth-input::placeholder{color:var(--ink-tertiary)}.auth-captcha{flex-direction:column;gap:.45rem;margin-top:.15rem;display:flex}.auth-captcha-note{color:var(--ink-secondary);margin:0;font-size:.8rem}.auth-button{background:var(--primary);width:100%;color:var(--primary-text);font-family:var(--font-headline);cursor:pointer;border:none;border-radius:.5rem;justify-content:center;align-items:center;margin-top:.55rem;padding:.9rem 1.5rem;font-size:15px;font-weight:700;transition:opacity .15s;display:flex}.auth-button:hover{opacity:.92}.auth-button:disabled{opacity:.5;cursor:not-allowed}.auth-error{background:var(--red-bg);color:var(--red);border-radius:.5rem;padding:.8rem .9rem;font-size:.84rem;font-weight:500}.auth-success{background:var(--green-bg);color:var(--green);border-radius:.5rem;padding:.8rem .9rem;font-size:.84rem;font-weight:500}.auth-footer{text-align:center;color:var(--ink-secondary);margin-top:1.65rem;font-size:.92rem}.auth-footer a{color:var(--primary);font-weight:600}.auth-footer a:hover{text-decoration:underline}.auth-link{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem;font-weight:700;display:inline}.auth-link:hover{text-decoration:underline}.auth-link:disabled{opacity:.5;cursor:not-allowed}.auth-forgot{text-align:right;margin-top:-.5rem}.auth-strength{gap:.25rem;margin-top:.35rem;display:flex}.auth-strength-bar{background:var(--surface-high);border-radius:2px;flex:1;height:4px;transition:background .2s}.auth-strength-bar.active{background:var(--red)}.auth-strength-bar.medium{background:var(--amber)}.auth-strength-bar.strong{background:var(--green)}.auth-strength-text{color:var(--ink-tertiary);margin-top:.15rem;font-size:.78rem}.auth-otp-grid{flex-wrap:nowrap;justify-content:center;gap:.5rem;margin:1rem 0 .25rem;display:flex}.auth-otp-cell{text-align:center;width:3rem;height:3.75rem;font-family:var(--font-label);color:var(--ink);background:var(--surface-highest);border:none;border-radius:.5rem;font-size:1.5rem;font-weight:600;transition:box-shadow .15s}.auth-otp-cell:focus{outline:none;box-shadow:0 0 0 2px #00514766}.auth-toggle{justify-content:center;align-items:center;gap:.35rem;margin-top:.5rem;display:flex}.auth-divider{color:var(--ink-tertiary);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.75rem;margin:1.25rem 0 1.1rem;font-size:.82rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--surface-high);flex:1;height:1px}.auth-resend{text-align:center;margin-top:.9rem}.auth-card .google-signin-btn{background:var(--surface-lowest);border:1px solid var(--line);border-radius:.5rem;justify-content:center;width:100%;padding:.9rem 1rem;transition:background .15s}.auth-card .google-signin-btn:hover{background:var(--surface-low)}@media (max-width:1080px){.auth-shell{grid-template-columns:1fr}.auth-rail{order:2}.auth-stage{order:1}}@media (max-width:640px){.auth-page-shell{padding:.8rem}.auth-rail{gap:1.1rem;padding:1.1rem}.auth-rail-title{font-size:clamp(1.9rem,10vw,2.8rem)}.auth-card{padding:1.25rem}.auth-title{font-size:1.7rem}.auth-subtitle{font-size:.92rem}.auth-otp-grid{gap:.35rem}.auth-otp-cell{width:2.5rem;height:3rem;font-size:1.25rem}}@media (prefers-reduced-motion:no-preference){.auth-rail,.auth-card{animation:.5s both auth-rise}}@keyframes auth-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
