.login-google-wrapper {
        width: 100%;
    }

    .login-logo {
        max-width: 260px;
        height: auto;
        margin-bottom: 12px;
    }

    .login-title {
        font-size: 1.35rem;
        font-weight: 600;
        color: #202124;
        margin-bottom: 4px;
    }

    .login-subtitle {
        font-size: 0.92rem;
        color: #5f6368;
        margin-bottom: 28px;
    }

    .google-form-group {
        margin-bottom: 18px;
    }

    .google-label {
        font-size: 0.88rem;
        font-weight: 500;
        color: #3c4043;
        margin-bottom: 7px;
    }

    .google-input {
        height: 48px;
        border-radius: 12px;
        border: 1px solid #dadce0;
        color: #202124;
        font-size: 0.95rem;
        padding: 10px 14px;
        background-color: #fff;
        transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
    }

    .google-input:focus {
        border-color: #1a73e8;
        box-shadow: 0 0 0 3px rgba(26, 115, 232, 0.14);
        background-color: #fff;
    }

    .password-group .google-input {
        border-radius: 12px 0 0 12px;
        border-right: none;
    }

    #togglePassword {
        width: 52px;
        border: 1px solid #dadce0;
        border-left: none;
        background-color: #fff;
        color: #5f6368;
        border-radius: 0 12px 12px 0;
        cursor: pointer;
        transition: color .2s ease, background-color .2s ease, box-shadow .2s ease;
    }

    #togglePassword:hover {
        color: #1a73e8;
        background-color: #f8fafd;
    }

    .password-group:focus-within #togglePassword {
        border-color: #1a73e8;
        box-shadow: 0 0 0 3px rgba(26, 115, 232, 0.14);
    }

    .google-check {
        display: flex;
        align-items: center;
        gap: 8px;
        margin-bottom: 22px;
    }

    .google-check .form-check-input {
        width: 18px;
        height: 18px;
        margin: 0;
        cursor: pointer;
        border-color: #dadce0;
    }

    .google-check .form-check-input:checked {
        background-color: #1a73e8;
        border-color: #1a73e8;
    }

    .google-check label {
        font-size: 0.9rem;
        color: #3c4043;
        cursor: pointer;
    }

    .google-login-btn {
        height: 48px;
        border: none;
        border-radius: 24px;
        color: #fff;
        font-weight: 600;
        font-size: 0.95rem;
        letter-spacing: .2px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        box-shadow: 0 2px 6px rgba(26, 115, 232, 0.28);
        transition: background .2s ease, box-shadow .2s ease, transform .15s ease;
    }

    .google-login-btn:hover {
        color: #fff;
        box-shadow: 0 4px 10px rgba(26, 115, 232, 0.34);
        transform: translateY(-1px);
    }

    .google-login-btn:active {
        transform: translateY(0);
        box-shadow: 0 2px 5px rgba(26, 115, 232, 0.24);
    }

    .forgot-link {
        display: inline-block;
        font-size: 0.9rem;
        font-weight: 500;
        color: #1a73e8;
        text-decoration: none;
        margin-top: 14px;
    }

    .forgot-link:hover {
        color: #174ea6;
        text-decoration: underline;
    }

    .google-error-box {
        margin-top: 18px;
        border-radius: 14px;
        border: 1px solid #f4c7c3;
        background-color: #fce8e6;
        color: #b3261e;
        padding: 12px 14px;
        font-size: 0.9rem;
    }

    .google-error-box p {
        margin: 0 0 6px 0;
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .google-error-box p:last-child {
        margin-bottom: 0;
    }

    @media (max-width: 576px) {
        .login-logo {
            max-width: 230px;
        }

        .login-title {
            font-size: 1.2rem;
        }
    }

    .google-login-btn:disabled {
      opacity: .75;
      cursor: not-allowed;
      transform: none;
      box-shadow: none;
  }