.auth-page {min-height: 100vh;display: flex;align-items: center;justify-content: center;padding: 56px 18px;background:radial-gradient(circle at top left, rgba(69, 122, 190, .10), transparent 42%),radial-gradient(circle at bottom right, rgba(255, 181, 20, .12), transparent 45%),var(--soft);}.auth-card {width: 100%;max-width: 430px;background: var(--card);border: 1px solid var(--line);border-radius: var(--radius-xl);box-shadow: var(--shadow-soft);padding: clamp(28px, 5vw, 44px);}.auth-head {text-align: center;margin-bottom: 30px;}.auth-badge {width: 54px;height: 54px;border-radius: 16px;display: inline-flex;align-items: center;justify-content: center;background: var(--primary);color: #fff;font-size: 24px;margin-bottom: 18px;box-shadow: 0 8px 20px rgba(5, 5, 21, .18);}.auth-head h1 {font-size: 27px;font-weight: 800;letter-spacing: -.04em;margin: 0 0 8px;}.auth-head p {color: var(--muted);font-size: 15px;margin: 0;}.auth-form .form-label {font-size: 13px;font-weight: 700;color: var(--ink);margin-bottom: 7px;}.auth-input-wrap {position: relative;}.auth-input-wrap > .bi {position: absolute;top: 50%;left: 15px;transform: translateY(-50%);color: var(--muted);font-size: 15px;pointer-events: none;}.auth-form .form-control {height: 50px;border-radius: 13px;border: 1px solid var(--line);background: #fff;padding-left: 42px;font-size: 15px;}.auth-form .form-control:focus {border-color: var(--primary);box-shadow: 0 0 0 .18rem rgba(5, 5, 21, .10);}.auth-toggle-pass {position: absolute;top: 50%;right: 8px;transform: translateY(-50%);border: 0;background: transparent;color: var(--muted);width: 36px;height: 36px;border-radius: 9px;display: inline-flex;align-items: center;justify-content: center;}.auth-toggle-pass:hover {color: var(--ink);background: var(--soft);}.auth-meta {display: flex;align-items: center;justify-content: end;gap: 12px;margin: 4px 0 22px;}.auth-meta .form-check-label {font-size: 14px;color: var(--muted);}.auth-meta a {font-size: 14px;font-weight: 700;color: var(--primary);}.auth-meta a:hover {text-decoration: underline;}.form-check-input:checked {background-color: var(--primary);border-color: var(--primary);}.form-check-input:focus {border-color: var(--primary);box-shadow: 0 0 0 .18rem rgba(5, 5, 21, .10);}.btn-auth {width: 100%;height: 50px;border-radius: 13px;font-weight: 700;font-size: 16px;background: var(--primary);border-color: var(--primary);color: #fff;}.btn-auth:hover,.btn-auth:focus {background: #1a1a30;border-color: #1a1a30;color: #fff;}.auth-divider {display: flex;align-items: center;gap: 14px;margin: 24px 0;color: var(--muted);font-size: 13px;}.auth-divider::before,.auth-divider::after {content: "";flex: 1;height: 1px;background: var(--line);}.btn-google {width: 100%;height: 50px;border-radius: 13px;font-weight: 600;font-size: 15px;background: #fff;border: 1px solid var(--line);color: var(--ink);display: inline-flex;align-items: center;justify-content: center;gap: 12px;}.btn-google:hover {border-color: #000;background: #fff;color: var(--ink);}.btn-google svg {width: 18px;height: 18px;flex: 0 0 auto;}.auth-input-wrap.has-error .form-control {border-color: #dc3545;}.auth-input-wrap.has-error .form-control:focus {box-shadow: 0 0 0 .18rem rgba(220, 53, 69, .12);}.auth-input-wrap.has-error > .bi:first-child {color: #dc3545;}.field-error {display: none;align-items: center;gap: 6px;color: #dc3545;font-size: 12.5px;font-weight: 600;margin-top: 7px;}.field-error.show {display: flex;}.auth-alert {display: none;align-items: flex-start;gap: 10px;border-radius: 13px;padding: 13px 15px;margin-bottom: 20px;font-size: 14px;font-weight: 600;}.auth-alert.show {display: flex;}.auth-alert-success {background: #E8F9E9;border: 1px solid #3ECB47;color: #1c7a25;}.auth-alert-error {background: #fdecec;border: 1px solid #dc3545;color: #b02a37;}.auth-account {display: flex;align-items: center;gap: 10px;background: var(--soft);border: 1px solid var(--line);border-radius: 13px;padding: 12px 15px;margin-bottom: 22px;font-size: 14px;font-weight: 600;color: var(--ink);}.auth-account svg {width: 18px;height: 18px;flex: 0 0 auto;}.auth-foot {text-align: center;margin-top: 26px;font-size: 14px;color: var(--muted);}.auth-foot a {font-weight: 700;color: var(--primary);}.auth-foot a:hover {text-decoration: underline;}