.auth-wrapper{min-height:100svh;display:grid;place-items:center;padding:32px 16px;background:var(--bg-color)}.auth-card{width:min(100%,440px);padding:36px;border:1px solid var(--border-color);border-radius:20px;background:#fff;box-shadow:0 16px 48px #203e330a;box-sizing:border-box}.auth-brand{display:inline-block;color:var(--primary-color);font-size:1.25rem;font-weight:800;text-decoration:none;margin-bottom:20px}.auth-card h1{font-size:1.7rem;margin:0 0 8px;color:var(--text-color)}.auth-subtitle{color:#617268;margin:0 0 28px;font-size:.9rem;line-height:1.6}.auth-form{display:flex;flex-direction:column;gap:10px}.auth-form label{color:var(--text-color);font-size:.9rem;font-weight:600;margin-top:7px}.auth-form input{min-width:0;width:100%;box-sizing:border-box;min-height:46px;border:1px solid #c8d5cb;border-radius:9px;padding:10px 12px;background:#fff;font:inherit;font-size:.94rem}.auth-form input:focus-visible,.auth-form button:focus-visible{outline:3px solid var(--primary-light);outline-offset:2px;border-color:var(--primary-color)}.auth-input-row{display:flex;align-items:stretch;gap:8px}.auth-secondary{flex-shrink:0;border:1px solid #bdd1c2;background:#f3f8f4;color:#245d46;border-radius:9px;padding:8px 12px;font:inherit;font-size:.85rem;cursor:pointer}.auth-submit{min-height:48px;margin-top:14px;border:0;border-radius:9px;background:var(--primary-color);color:#fff;font:inherit;font-weight:700;cursor:pointer}.auth-submit:hover:not(:disabled){background:var(--primary-hover)}.auth-form button:disabled{opacity:.55;cursor:not-allowed}.auth-form input:disabled{background:#f4f6f3}.auth-error{color:#b42318;background:#fff2f0;border-radius:8px;padding:10px;font-size:.9rem;line-height:1.5;margin:6px 0 0;overflow-wrap:anywhere}.auth-notice{color:#245d46;background:#eef7f0;border-radius:8px;padding:10px;font-size:.9rem;line-height:1.5;margin:6px 0 0}.auth-footer{text-align:center;color:#617268;font-size:.9rem;margin:24px 0 0}.auth-footer a{color:var(--primary-color);font-weight:600}.auth-legal-links{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:20px;font-size:11px}.auth-legal-links a{color:#617268;text-underline-offset:3px}@media (max-width: 480px){.auth-card{padding:28px 20px}}
