.auth-page .header{text-align:center;margin-bottom:24px}.auth-page .icon-circle{background:var(--color-primary-soft);border:1px solid var(--color-primary-border);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 16px;display:flex}.auth-page .header h1{margin-bottom:4px}.auth-page .subtitle{color:var(--color-text-muted);margin:0;font-size:.9rem}.auth-page .error{background:var(--color-error-soft);color:var(--color-error);text-align:center;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:.9rem}.auth-page form{flex-direction:column;gap:14px;display:flex}.auth-page label{flex-direction:column;gap:4px;display:flex}.auth-page label span{color:var(--color-text-muted);padding-left:2px;font-size:.85rem;font-weight:500}.auth-page input{border:1px solid var(--color-border);border-radius:8px;outline:none;padding:10px 14px;font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.auth-page input:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.auth-page button{cursor:pointer;background:var(--color-primary);color:var(--color-surface);border:none;border-radius:8px;margin-top:4px;padding:10px 20px;font-family:inherit;font-size:.95rem;font-weight:500;transition:background .2s,box-shadow .2s}.auth-page button:hover{background:var(--color-primary-hover);box-shadow:var(--shadow-primary)}.auth-page .oauth-button{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.auth-page .oauth-button:hover{background:var(--color-background);box-shadow:none}.auth-page .auth-divider{color:var(--color-text-muted);align-items:center;gap:12px;margin:18px 0 4px;font-size:.85rem;display:flex}.auth-page .auth-divider:before,.auth-page .auth-divider:after{content:"";background:var(--color-border);flex:1;height:1px}.auth-page .footer{text-align:center;color:var(--color-text-muted);margin-top:24px;font-size:.9rem}.auth-page .footer a{color:var(--color-primary);font-weight:500;text-decoration:none}.auth-page .footer a:hover{text-decoration:underline}
