.auth-page{background:var(--color-bg-primary);min-height:100vh;padding:var(--spacing-xl);justify-content:center;align-items:center;display:flex}.auth-container{width:100%;max-width:480px;position:relative}.auth-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-2xl);z-index:2;box-shadow:var(--shadow-xl);position:relative}.auth-header{text-align:center;margin-bottom:var(--spacing-2xl)}.auth-header .logo,.auth-header .auth-brand{align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);display:inline-flex}.auth-header h1{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-xs)}.auth-header p{color:var(--color-text-secondary);font-size:var(--font-size-base)}.auth-form{gap:var(--spacing-lg);flex-direction:column;display:flex}.form-row{gap:var(--spacing-md);grid-template-columns:1fr 1fr;display:grid}.form-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:var(--spacing-xs);display:block}.form-group input{width:100%;padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:inherit;font-size:var(--font-size-base);transition:all var(--transition-base)}.form-group input:focus{border-color:var(--color-accent-primary);box-shadow:0 0 0 3px var(--color-accent-glow);outline:none}.form-group input::placeholder{color:var(--color-text-tertiary)}.password-input{position:relative}.form-group .password-input-field,.password-input-field{width:100%;padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:inherit;font-size:var(--font-size-base);transition:all var(--transition-base);padding-right:48px}.form-group .password-input-field:focus,.password-input-field:focus{border-color:var(--color-accent-primary);box-shadow:0 0 0 3px var(--color-accent-glow);outline:none}.password-input-field::placeholder{color:var(--color-text-tertiary)}.password-input-toggle{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.password-input-toggle:hover{color:var(--color-text-primary);background:var(--color-bg-primary)}.auth-success-popup{text-align:center}.auth-success-icon{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:16px;display:inline-flex}.auth-confirm-banner{color:#065f46;text-align:left;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px;align-items:flex-start;gap:14px;margin-bottom:18px;padding:14px 16px;display:flex}.auth-confirm-banner .auth-success-icon{flex-shrink:0;width:40px;height:40px;margin-bottom:0}.auth-confirm-banner strong{margin-bottom:2px;font-size:14px;display:block}.auth-confirm-banner p{color:#047857;margin:0;font-size:13px;line-height:1.45}.form-hint{margin-top:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-text-tertiary);display:block}.form-options{margin-top:calc(var(--spacing-lg) * -1);justify-content:space-between;align-items:center;display:flex}.form-group label.checkbox-label,.checkbox-label{cursor:pointer;letter-spacing:0;text-transform:none;color:var(--color-text-primary);align-items:flex-start;gap:1rem;margin:0;font-size:.9rem;font-weight:550;line-height:1.45;display:flex}.checkbox-label span{flex:1;min-width:0;padding-top:1px}.form-group input[type=checkbox],.checkbox-label input[type=checkbox]{appearance:none;background:var(--color-surface);width:1.125rem;min-width:1.125rem;height:1.125rem;box-shadow:none;cursor:pointer;accent-color:var(--color-accent-primary);border:1.5px solid #1e3a8a59;border-radius:5px;flex-shrink:0;place-content:center;margin:.15rem 0 0;padding:0;display:grid}.checkbox-label input[type=checkbox]:checked{background:var(--color-accent-primary);border-color:var(--color-accent-primary)}.checkbox-label input[type=checkbox]:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:.28rem;height:.5rem;transform:rotate(45deg)translate(-.5px,-1px)}.checkbox-label input[type=checkbox]:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.link{color:var(--color-accent-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:color var(--transition-base)}.link:hover{color:var(--color-accent-secondary)}.auth-divider{text-align:center;margin:var(--spacing-xl) 0;position:relative}.auth-divider:before{content:"";background:var(--color-border);height:1px;position:absolute;top:50%;left:0;right:0}.auth-divider span{padding:0 var(--spacing-md);background:var(--color-bg-secondary);color:var(--color-text-tertiary);font-size:var(--font-size-sm);display:inline-block;position:relative}.auth-social{gap:var(--spacing-md);flex-direction:column;display:flex}.social-btn{justify-content:center;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);transition:all var(--transition-base);cursor:pointer;display:flex}.social-btn:hover{background:var(--color-bg-elevated);border-color:var(--color-border-hover)}.auth-footer{text-align:center;margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-border)}.auth-footer p{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.auth-background{z-index:0;pointer-events:none;position:fixed;inset:0}.background-pattern{background-image:radial-gradient(circle at 20%,#1e3a8a0d 0%,#0000 50%),radial-gradient(circle at 80% 80%,#f4e5b00d 0%,#0000 50%);animation:20s ease-in-out infinite backgroundShift;position:absolute;inset:0}@keyframes backgroundShift{0%,to{transform:translate(0)}50%{transform:translate(20px,20px)}}@media (max-width:768px){.auth-page{padding:var(--spacing-md)}.auth-card{padding:var(--spacing-xl)}.form-row{grid-template-columns:1fr}.form-options{align-items:flex-start;gap:var(--spacing-sm);flex-direction:column}}.auth-page .auth-card{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-lg)}.auth-page .auth-header h1{font-family:var(--font-display), Georgia, serif;letter-spacing:-.02em;color:var(--color-text-primary)}.auth-page .btn-primary{background:var(--color-accent-primary)}.auth-page .btn-primary:hover{background:#172554}.auth-page .auth-cta{text-align:center;justify-content:center;width:100%;padding:.85rem 1.25rem;display:flex}.auth-page input:focus{border-color:var(--color-accent-primary);box-shadow:0 0 0 3px var(--color-accent-glow)}.auth-brand{align-items:center;gap:.6rem;line-height:1;text-decoration:none;display:inline-flex}.auth-brand__mark{border-radius:8px;flex-shrink:0;display:block}.auth-brand__name{letter-spacing:-.02em;font-size:1.05rem;font-weight:750}.auth-brand--ink,.auth-brand--ink .auth-brand__name{color:var(--color-text-primary)}.auth-brand--paper,.auth-brand--paper .auth-brand__name{color:#f8fafc}.auth-gate{background:#f5f7fb;grid-template-columns:1fr;min-height:100dvh;display:grid}.auth-gate__stage{isolation:isolate;color:#f8fafc;background:#1e3a8a;min-height:11.5rem;padding:1.25rem 1.35rem 1.4rem;display:flex;position:relative;overflow:hidden}.auth-gate__photo{object-fit:cover;object-position:center 40%}.auth-gate__veil{z-index:1;pointer-events:none;background:linear-gradient(#0f172a47 0%,#1e3a8ab8 100%);position:absolute;inset:0}.auth-gate__stage-inner{z-index:2;flex-direction:column;gap:1rem;width:100%;display:flex;position:relative}.auth-gate__offer{max-width:28rem}.auth-gate__kicker{letter-spacing:.08em;text-transform:uppercase;color:#fde68a;margin:0 0 .4rem;font-size:.72rem;font-weight:700}.auth-gate__offer h2{letter-spacing:-.03em;color:#f8fafc;margin:0;font-size:1.55rem;line-height:1.15}.auth-gate__plan{flex-wrap:wrap;align-items:baseline;gap:.45rem .7rem;margin:.85rem 0 0;font-size:1.05rem;font-weight:750;display:flex}.auth-gate__plan span{color:#f8fafcd1;font-size:.92rem;font-weight:600}.auth-gate__yield{color:#f8fafcd1;max-width:36ch;margin:.45rem 0 0;font-size:.92rem;line-height:1.45}.auth-gate__back{color:#fde68a;margin-top:auto;font-size:.88rem;font-weight:650}.auth-gate__back:hover{color:#fff}.auth-gate__panel{justify-content:center;padding:1.5rem 1.15rem 2.5rem;display:flex}.auth-gate__sheet{width:100%;max-width:28rem}.auth-gate__mobile-brand{display:none}.auth-gate__head h1{letter-spacing:-.03em;color:var(--color-text-primary);margin:0;font-size:1.7rem;font-weight:750;line-height:1.15}.auth-gate__head p{color:var(--color-text-secondary);margin:.45rem 0 0;font-size:.98rem;line-height:1.45}.auth-gate__error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;margin:1.1rem 0 0;padding:.75rem .9rem;font-size:.9rem;line-height:1.4}.auth-gate .auth-form{margin-top:1.5rem}.auth-agree{margin-top:.15rem}.auth-gate__submit{justify-content:center;width:100%;padding:.85rem 1.25rem}.auth-gate__submit:disabled{opacity:.65;cursor:wait}.auth-gate__submit:active:not(:disabled){transform:translateY(1px)}.auth-gate .auth-divider{margin:1.25rem 0}.auth-gate .auth-divider span{background:#f5f7fb}.auth-gate .social-btn{width:100%}.auth-gate__foot{text-align:center;color:var(--color-text-secondary);margin:1.35rem 0 0;font-size:.9rem}@media (min-width:1024px){.auth-gate{grid-template-columns:minmax(22rem,.92fr) minmax(26rem,1.08fr)}.auth-gate__stage{height:100dvh;min-height:100dvh;padding:2rem 2.25rem 2.15rem;position:sticky;top:0}.auth-gate__offer h2{font-size:clamp(2rem,3vw,2.65rem)}.auth-gate__panel{align-items:center;padding:3rem 2.5rem 3.5rem}.auth-gate__mobile-brand{display:none}}@media (max-width:1023px){.auth-gate__photo{object-position:center 30%}.auth-gate__kicker,.auth-gate__offer h2,.auth-gate__back{display:none}.auth-gate__yield{max-width:none}}@media (prefers-reduced-motion:reduce){.auth-gate__submit:active:not(:disabled){transform:none}}
