:root{--primary:#062b63;--accent:#38bdf8;--page:#f4f6f9}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--page);font-family:"Segoe UI",sans-serif;color:#1f2937}.auth-card{width:100%;max-width:440px;padding:36px;background:#fff;border-radius:18px;box-shadow:0 18px 45px rgba(0,0,0,.16);overflow:hidden}.auth-header{display:flex;align-items:center;justify-content:center;margin:-36px -36px 30px;padding:20px 36px;background:var(--primary)}.auth-header .auth-logo{margin:0}.auth-logo{display:block;width:230px;max-width:100%;height:auto;margin:0 auto 20px}h1{text-align:center;color:var(--primary);font-size:25px;margin:0 0 12px}.intro{text-align:center;color:#6b7280;margin:0 0 24px}form{display:flex;flex-direction:column}label{font-size:14px;font-weight:600;margin-bottom:6px}input{width:100%;padding:12px;margin-bottom:16px;border:1px solid #d1d5db;border-radius:8px;font:inherit}input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(56,189,248,.18)}button,.button-link{display:block;width:100%;padding:12px;border:0;border-radius:8px;background:var(--accent);color:var(--primary);font-weight:700;font-size:15px;text-align:center;text-decoration:none;cursor:pointer}button:hover,.button-link:hover{background:#7dd3fc}.back-link{display:block;margin-top:18px;text-align:center;color:var(--primary);text-decoration:none}.back-link:hover{text-decoration:underline}.notice{padding:12px;margin-bottom:20px;border-radius:8px;background:#e0f2fe;color:#075985;line-height:1.45}.notice.error{background:#fee2e2;color:#991b1b}.notice.success{background:#dcfce7;color:#166534}.requirements{margin:-7px 0 18px;color:#6b7280;font-size:12px;line-height:1.4}
.password-field{position:relative;margin-bottom:16px}
.password-field input{margin-bottom:0;padding-right:48px;min-width:0}
.password-field .password-toggle{position:absolute;right:4px;top:4px;bottom:4px;width:auto;min-width:36px;padding:0 8px;background:transparent;color:var(--primary);font-size:12px;border-radius:5px}
.password-field .password-toggle:hover{background:#e0f2fe}
.password-field .password-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:1px}

.password-field .password-toggle{display:flex;align-items:center;justify-content:center}
.password-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.password-field input[type="text"] + .password-toggle .password-eye-slash{display:none}
