.auth-page{background:var(--bg-base);justify-content:center;align-items:center;width:100%;min-height:100dvh;padding:40px 24px;display:flex;position:relative}.auth-container{z-index:1;flex-direction:column;gap:36px;width:100%;max-width:420px;display:flex;position:relative}.auth-container--spacious{gap:28px;max-width:480px}.auth-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-elevated);flex-direction:column;gap:22px;padding:36px 32px;display:flex}.auth-panel .auth-header{gap:12px}.auth-panel .auth-form{gap:18px}.auth-panel .auth-footer{margin-top:4px}.auth-header{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.auth-logo-frame{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 18%, transparent), color-mix(in srgb, var(--accent) 6%, transparent));width:92px;height:92px;box-shadow:var(--shadow-elevated);cursor:default;border-radius:26px;justify-content:center;align-items:center;margin-bottom:8px;padding:4px;display:flex}.auth-logo-image{object-fit:cover;width:100%;height:100%;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--border) 70%, transparent);border-radius:22px}.auth-logo{background:var(--accent);height:56px;color:var(--text-inverse);box-shadow:var(--shadow-elevated);cursor:default;border-radius:16px;justify-content:center;align-items:center;gap:10px;margin-bottom:8px;padding:0 24px;display:flex}.auth-logo-text{letter-spacing:-.5px;font-size:22px;font-weight:700}.auth-logo-icon{background:var(--accent);width:56px;height:56px;color:var(--text-inverse);box-shadow:var(--shadow-elevated);cursor:default;border-radius:16px;justify-content:center;align-items:center;display:flex}.auth-title{letter-spacing:-.5px;color:var(--text-primary);font-size:30px;font-weight:700;line-height:1.2}.auth-subtitle{color:var(--text-muted);max-width:320px;font-size:15px;line-height:1.5}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-input-wrapper{border-radius:var(--radius-md);background:var(--bg-card);border:1.5px solid var(--border);height:54px;box-shadow:var(--shadow-card);align-items:center;gap:12px;padding:0 16px;transition:all .3s cubic-bezier(.25,.46,.45,.94);display:flex}.auth-input-wrapper.focused{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 15%, transparent)}.auth-input-wrapper.error{border-color:var(--expense);box-shadow:0 0 0 3px color-mix(in srgb, var(--expense) 12%, transparent)}.auth-input-icon{color:var(--text-muted);flex-shrink:0;transition:color .3s}.auth-input-wrapper.focused .auth-input-icon{color:var(--accent)}.auth-input{height:100%;color:var(--text-primary);letter-spacing:-.1px;background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:16px}.auth-input::placeholder{color:var(--text-muted);opacity:.7}.auth-input:disabled{opacity:.5;cursor:not-allowed}.auth-input-toggle{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.auth-input-toggle:hover{background:var(--bg-overlay);color:var(--text-secondary)}.auth-input-check{background:var(--income);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.auth-error{color:var(--expense);padding:4px 4px 0;font-size:13px;overflow:hidden}.auth-forgot{text-align:right;margin-top:-4px}.auth-forgot a{color:var(--accent);font-size:14px;font-weight:500;text-decoration:none;transition:opacity .2s}.auth-forgot a:hover{opacity:.7}.auth-submit-btn{border-radius:var(--radius-md);background:var(--accent);width:100%;height:54px;color:var(--text-inverse);letter-spacing:-.2px;cursor:pointer;box-shadow:0 4px 16px color-mix(in srgb, var(--accent) 30%, transparent);border:none;justify-content:center;align-items:center;gap:8px;font-family:inherit;font-size:16px;font-weight:600;transition:all .3s;display:flex}.auth-submit-btn:hover:not(:disabled){box-shadow:0 6px 24px color-mix(in srgb, var(--accent) 40%, transparent);filter:brightness(1.1)}.auth-submit-btn:disabled{opacity:.6;cursor:not-allowed}.auth-spinner{border:2.5px solid color-mix(in srgb, var(--text-inverse) 30%, transparent);border-top-color:var(--text-inverse);border-radius:50%;width:22px;height:22px}.auth-divider{align-items:center;gap:16px;display:flex}.auth-divider:before{content:"";background:var(--border);flex:1;height:1px}.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-divider span{color:var(--text-muted);white-space:nowrap;text-transform:lowercase;font-size:13px}.auth-social-btn{border-radius:var(--radius-md);border:1.5px solid var(--border);background:var(--bg-card);width:100%;height:54px;color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow-card);justify-content:center;align-items:center;gap:10px;font-family:inherit;font-size:15px;font-weight:500;transition:all .3s;display:flex}.auth-social-btn:hover:not(:disabled){border-color:var(--border-strong);box-shadow:var(--shadow-elevated)}.auth-social-btn:disabled{opacity:.5;cursor:not-allowed}.auth-footer{color:var(--text-muted);justify-content:center;align-items:center;gap:6px;font-size:14px;display:flex}.auth-footer-link{color:var(--accent);font-weight:600;text-decoration:none;transition:opacity .2s}.auth-footer-link:hover{opacity:.7}.auth-strength{align-items:center;gap:10px;padding:8px 4px 0;display:flex;overflow:hidden}.auth-strength-bars{flex:1;gap:4px;display:flex}.auth-strength-bar{border-radius:2px;flex:1;height:4px;transition:background-color .4s}.auth-strength-label{letter-spacing:.2px;flex-shrink:0;font-size:12px;font-weight:600}.auth-success-state{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.auth-success-icon{background:color-mix(in srgb, var(--income) 12%, transparent);width:72px;height:72px;color:var(--income);border-radius:50%;justify-content:center;align-items:center;margin-bottom:8px;display:flex}@media (max-width:480px){.auth-page{align-items:center;padding:36px 20px}.auth-title{font-size:26px}.auth-subtitle{font-size:14px}.auth-container{gap:20px;max-width:100%}.auth-panel{box-shadow:none;background:0 0;border:none;gap:16px;padding:0}.auth-logo-frame{border-radius:22px;width:80px;height:80px;margin-bottom:4px}.auth-logo-image{border-radius:18px}.auth-bg-orb-1{width:280px;height:280px}.auth-bg-orb-2{width:240px;height:240px}.auth-bg-orb-3{width:160px;height:160px}}
